IF ( i_stonO = '20' AND i_stonN = '30').LOOP AT XVBEP INTOGX_VBEP.
LY_I= SY-TABIX.CASE VBAK-AUART.
WHEN'ZOR'.IF GX_VBEP-ETTYP <> 'CP' AND GX_VBEP-ETTYP <> 'ZD'.
GX_VBEP-ETTYP = 'CP'.IF SY-TCODE = 'VA01'.ELSEIF SY-TCODE = 'VA02'.
GX_VBEP-UPDKZ = 'U'.
GX_VBEP-BEDSD = 'X'.
GX_VBEP-BDAALT = '05'.
GX_VBEP-BDART = '05'.
GX_VBEP-PLART = '0'.IF XVBBE[] IS INITIAL.
GW_VBBE-MANDT = SY-MANDT.
GW_VBBE-VBELN = GX_VBEP-VBELN.
GW_VBBE-POSNR = GX_VBEP-POSNR.
GW_VBBE-ETENR = GX_VBEP-ETENR.
GW_VBBE-MBDAT = GX_VBEP-EDATU.
GW_VBBE-VBTYP = 'C'.
GW_VBBE-BDART = '05'.
GW_VBBE-PLART = '0'.
GW_VBBE-UPDKZ = 'I'.
GW_VBBE-OMENG = GX_VBEP-LMENG.
GW_VBBE-VMENG = GX_VBEP-BMENG.
GW_VBBE-MEINS = GX_VBEP-VRKME.
GW_VBBE-PZMNG = GX_VBEP-LMENG.
GW_VBBE-AUART = XVBAK-AUART.
GW_VBBE-KUNNR = XVBAK-KUNNR.READ TABLE XVBAP INTO GX_VBAP WITH KEY POSNR = GX_VBEP-POSNR.IF SY-SUBRC = 0.
LY_J= SY-TABIX.
GX_VBAP-SUMBD = 'A'.
GX_VBAP-UPDKZ = 'U'.
GX_VBAP-BEDUP = 'X'.MODIFY XVBAP FROMGX_VBAP INDEX LY_J TRANSPORTING SUMBD UPDKZ BEDUP.
GW_VBBE-MATNR = GX_VBAP-MATNR.
GW_VBBE-WERKS = GX_VBAP-WERKS.
GW_VBBE-LGORT = GX_VBAP-LGORT.
GW_VBBE-CHARG = GX_VBAP-CHARG.
GW_VBBE-AWAHR = GX_VBAP-AWAHR.
GW_VBBE-VPZUO = GX_VBAP-VPZUO.ENDIF.INSERT GW_VBBE INTO XVBBE INDEX GX_VBEP-ETENR.ENDIF.ENDIF.ENDIF.
WHEN'ZKB'.IF GX_VBEP-ETTYP <> 'E1'.
GX_VBEP-ETTYP = 'E1'.IF SY-TCODE = 'VA01'.ELSEIF SY-TCODE = 'VA02'.
GX_VBEP-UPDKZ = 'U'.
GX_VBEP-BEDSD = 'X'.
GX_VBEP-BDAALT = '05'.
GX_VBEP-BDART = '05'.
GX_VBEP-PLART = '0'.IF XVBBE[] IS INITIAL.
GW_VBBE-MANDT = SY-MANDT.
GW_VBBE-VBELN = GX_VBEP-VBELN.
GW_VBBE-POSNR = GX_VBEP-POSNR.
GW_VBBE-ETENR = GX_VBEP-ETENR.
GW_VBBE-MBDAT = GX_VBEP-EDATU.
GW_VBBE-VBTYP = 'C'.
GW_VBBE-BDART = '05'.
GW_VBBE-PLART = '0'.
GW_VBBE-UPDKZ = 'I'.
GW_VBBE-OMENG = GX_VBEP-LMENG.
GW_VBBE-VMENG = GX_VBEP-BMENG.
GW_VBBE-MEINS = GX_VBEP-VRKME.
GW_VBBE-PZMNG = GX_VBEP-LMENG.
GW_VBBE-AUART = XVBAK-AUART.
GW_VBBE-KUNNR = XVBAK-KUNNR.READ TABLE XVBAP INTO GX_VBAP WITH KEY POSNR = GX_VBEP-POSNR.IF SY-SUBRC = 0.
LY_J= SY-TABIX.
GX_VBAP-SUMBD = 'A'.
GX_VBAP-UPDKZ = 'U'.
GX_VBAP-BEDUP = 'X'.MODIFY XVBAP FROMGX_VBAP INDEX LY_J TRANSPORTING SUMBD UPDKZ BEDUP.
GW_VBBE-MATNR = GX_VBAP-MATNR.
GW_VBBE-WERKS = GX_VBAP-WERKS.
GW_VBBE-LGORT = GX_VBAP-LGORT.
GW_VBBE-CHARG = GX_VBAP-CHARG.
GW_VBBE-AWAHR = GX_VBAP-AWAHR.
GW_VBBE-VPZUO = GX_VBAP-VPZUO.ENDIF.INSERT GW_VBBE INTO XVBBE INDEX GX_VBEP-ETENR.ENDIF.ENDIF.ENDIF.
WHEN'ZSP'.READ TABLE XVBAP INTO GX_VBAP WITH KEY POSNR = GX_VBEP-POSNR.IF SY-SUBRC = 0.IF GX_VBAP-PSTYV = 'ZSNN' AND GX_VBEP-ETTYP <> 'ZN'.
GX_VBEP-ETTYP = 'ZN'.IF SY-TCODE = 'VA01'.ELSEIF SY-TCODE = 'VA02'.
GX_VBEP-UPDKZ = 'U'.
GX_VBEP-BEDSD = 'X'.
GX_VBEP-BDAALT = '05'.
GX_VBEP-BDART = '05'.
GX_VBEP-PLART = '0'.IF XVBBE[] IS INITIAL.
GW_VBBE-MANDT = SY-MANDT.
GW_VBBE-VBELN = GX_VBEP-VBELN.
GW_VBBE-POSNR = GX_VBEP-POSNR.
GW_VBBE-ETENR = GX_VBEP-ETENR.
GW_VBBE-MBDAT = GX_VBEP-EDATU.
GW_VBBE-VBTYP = 'C'.
GW_VBBE-BDART = '05'.
GW_VBBE-PLART = '0'.
GW_VBBE-UPDKZ = 'I'.
GW_VBBE-OMENG = GX_VBEP-LMENG.
GW_VBBE-VMENG = GX_VBEP-BMENG.
GW_VBBE-MEINS = GX_VBEP-VRKME.
GW_VBBE-PZMNG = GX_VBEP-LMENG.
GW_VBBE-AUART = XVBAK-AUART.
GW_VBBE-KUNNR = XVBAK-KUNNR.READ TABLE XVBAP INTO GX_VBAP WITH KEY POSNR = GX_VBEP-POSNR.IF SY-SUBRC = 0.
LY_J= SY-TABIX.
GX_VBAP-SUMBD = 'A'.
GX_VBAP-UPDKZ = 'U'.
GX_VBAP-BEDUP = 'X'.MODIFY XVBAP FROMGX_VBAP INDEX LY_J TRANSPORTING SUMBD UPDKZ BEDUP.
GW_VBBE-MATNR = GX_VBAP-MATNR.
GW_VBBE-WERKS = GX_VBAP-WERKS.
GW_VBBE-LGORT = GX_VBAP-LGORT.
GW_VBBE-CHARG = GX_VBAP-CHARG.
GW_VBBE-AWAHR = GX_VBAP-AWAHR.
GW_VBBE-VPZUO = GX_VBAP-VPZUO.ENDIF.INSERT GW_VBBE INTO XVBBE INDEX GX_VBEP-ETENR.ENDIF.ENDIF.ELSEIF GX_VBAP-PSTYV = 'ZSAN' AND GX_VBEP-ETTYP <> 'CP'.
GX_VBEP-ETTYP = 'CP'.IF SY-TCODE = 'VA01'.ELSEIF SY-TCODE = 'VA02'.
GX_VBEP-UPDKZ = 'U'.
GX_VBEP-BEDSD = 'X'.
GX_VBEP-BDAALT = '05'.
GX_VBEP-BDART = '05'.
GX_VBEP-PLART = '0'.IF XVBBE[] IS INITIAL.
GW_VBBE-MANDT = SY-MANDT.
GW_VBBE-VBELN = GX_VBEP-VBELN.
GW_VBBE-POSNR = GX_VBEP-POSNR.
GW_VBBE-ETENR = GX_VBEP-ETENR.
GW_VBBE-MBDAT = GX_VBEP-EDATU.
GW_VBBE-VBTYP = 'C'.
GW_VBBE-BDART = '05'.
GW_VBBE-PLART = '0'.
GW_VBBE-UPDKZ = 'I'.
GW_VBBE-OMENG = GX_VBEP-LMENG.
GW_VBBE-VMENG = GX_VBEP-BMENG.
GW_VBBE-MEINS = GX_VBEP-VRKME.
GW_VBBE-PZMNG = GX_VBEP-LMENG.
GW_VBBE-AUART = XVBAK-AUART.
GW_VBBE-KUNNR = XVBAK-KUNNR.READ TABLE XVBAP INTO GX_VBAP WITH KEY POSNR = GX_VBEP-POSNR.IF SY-SUBRC = 0.
LY_J= SY-TABIX.
GX_VBAP-SUMBD = 'A'.
GX_VBAP-UPDKZ = 'U'.
GX_VBAP-BEDUP = 'X'.MODIFY XVBAP FROMGX_VBAP INDEX LY_J TRANSPORTING SUMBD UPDKZ BEDUP.
GW_VBBE-MATNR = GX_VBAP-MATNR.
GW_VBBE-WERKS = GX_VBAP-WERKS.
GW_VBBE-LGORT = GX_VBAP-LGORT.
GW_VBBE-CHARG = GX_VBAP-CHARG.
GW_VBBE-AWAHR = GX_VBAP-AWAHR.
GW_VBBE-VPZUO = GX_VBAP-VPZUO.ENDIF.INSERT GW_VBBE INTO XVBBE INDEX GX_VBEP-ETENR.ENDIF.ENDIF.ENDIF.ENDIF.
WHEN OTHERS.ENDCASE.MODIFY XVBEP FROMGX_VBEP.ENDLOOP.ENDIF.