Using the following code, am populating the internal table z_ZI2DLVSTORE.
SELECT SINGLE * FROM VBFA
INTO y_ZI2DLVSTORE
WHERE VBELN = IXLIPS-VBELN AND POSNN = IXLIPS-POSNR.
x_ZI2DLVSTORE-VBELV = y_ZI2DLVSTORE-VBELV.
x_ZI2DLVSTORE-POSNV = y_ZI2DLVSTORE-POSNV.
x_ZI2DLVSTORE-VBELN = y_ZI2DLVSTORE-VBELN.
x_ZI2DLVSTORE-POSNN = y_ZI2DLVSTORE-POSNN.
x_ZI2DLVSTORE-RFMNG = y_ZI2DLVSTORE-RFMNG.
SELECT SINGLE PRODUCT FROM ZI2PEGPROM
INTO CORRESPONDING FIELDS OF x_ZI2DLVSTORE
WHERE VBELN = x_ZI2DLVSTORE-VBELV.
SELECT SINGLE SELLER FROM ZI2DLVPROM
INTO CORRESPONDING FIELDS OF x_ZI2DLVSTORE
WHERE VBELN = x_ZI2DLVSTORE-VBELV.
If not x_ZI2DLVSTORE-VBELV is initial.
z_ZI2DLVSTORE-VBELN = x_ZI2DLVSTORE-VBELV.
z_ZI2DLVSTORE-POSNR = x_ZI2DLVSTORE-POSNV.
z_ZI2DLVSTORE-VGBEL = x_ZI2DLVSTORE-VBELN.
z_ZI2DLVSTORE-VGPOS = x_ZI2DLVSTORE-POSNN.
z_ZI2DLVSTORE-PPOS = x_ZI2DLVSTORE-PRODUCT.
z_ZI2DLVSTORE-SELLER = x_ZI2DLVSTORE-SELLER.
z_ZI2DLVSTORE-DELQTY = x_ZI2DLVSTORE-RFMNG.
z_ZI2DLVSTORE-WADAT = SY-DATUM.
z_ZI2DLVSTORE-GIFLAG = ' '.
Here, my record is ready to get uploaded into master table
Then, using below code, am updating the master table ZI2DLVSTORE.If record already exists, it will update or it will create a new record - thats my requirement
if z_ZI2DLVSTORE-POSNR < '900000'.
MODIFY ZI2DLVSTORE FROM table z_ZI2DLVSTORE.
endif.
endif.
clear z_ZI2DLVSTORE.
But, my table ZI2DLVSTORE is not accepting that entry. Why? Plz suggest.