Académique Documents
Professionnel Documents
Culture Documents
*Fetch Delivery
PERFORM get_vbfa_3.
SELECT vbeln
audat
auart
knumv
waerk
lifsk
faksk
FROM vbak
INTO CORRESPONDING FIELDS OF TABLE it_vbak
WHERE vbeln IN s_vbeln AND
audat IN s_audat AND
auart IN s_auart AND
vbtyp = 'C'.
IF sy-subrc NE 0.
ELSE.
* SELECT vbeln
* wbstk
* FROM vbuk
* INTO CORRESPONDING FIELDS OF TABLE it_vbuk_oa
* FOR ALL ENTRIES IN it_vbak
* WHERE vbeln = it_vbak-vbeln AND
* wbstk ne 'C'.
*
*IF sy-subrc = 0.
*
*
*
*ENDIF.
ENDIF.
REFRESH s_kunnr.
*Sold-to-Party,Payer,Ship-to-Party
SELECT vbeln
posnr
kunnr
parvw
FROM vbpa
APPENDING CORRESPONDING FIELDS OF TABLE it_vbpa
FOR ALL ENTRIES IN it_vbak
WHERE vbeln = it_vbak-vbeln AND
parvw IN ('SP','AG','PY','RG','SH','WE') AND
kunnr IN s_kunnr.
**Payer
* SELECT vbeln
* posnr
* kunnr
* parvw
* FROM vbpa
* APPENDING CORRESPONDING FIELDS OF TABLE it_vbpa
* FOR ALL ENTRIES IN it_vbak
* WHERE vbeln = it_vbak-vbeln AND
* parvw IN ('PY','RG') AND
* kunnr IN s_kunnr2.
*
**Ship-to-Party
* SELECT vbeln
* posnr
* kunnr
* parvw
* FROM vbpa
* APPENDING CORRESPONDING FIELDS OF TABLE it_vbpa
* FOR ALL ENTRIES IN it_vbak
* WHERE vbeln = it_vbak-vbeln AND
* parvw IN ('SH','WE') AND
* kunnr IN s_kunnr3.
ENDIF.
IF it_vbpa[] IS INITIAL.
ELSE.
IF sy-subrc NE 0.
DELETE it_vbak.
ENDIF.
ENDLOOP.
*Sold-to-Party,Payer,Ship-to-Party
SELECT vbeln
posnr
kunnr
parvw
FROM vbpa
APPENDING CORRESPONDING FIELDS OF TABLE it_vbpa
FOR ALL ENTRIES IN it_vbak
WHERE vbeln = it_vbak-vbeln AND
parvw IN ('SP','AG','PY','RG','SH','WE').
SELECT kunnr
name1
land1
regio
FROM kna1
INTO CORRESPONDING FIELDS OF TABLE it_kna1
FOR ALL ENTRIES IN it_vbpa
WHERE kunnr = it_vbpa-kunnr AND
land1 IN s_land1 AND
regio IN s_regio.
IF sy-subrc NE 0.
ELSE.
SELECT land1
landx
FROM t005t
INTO CORRESPONDING FIELDS OF TABLE it_t005t
FOR ALL ENTRIES IN it_kna1
WHERE land1 = it_kna1-land1 AND
spras = sy-langu.
SELECT land1
bland
bezei
FROM t005u
INTO CORRESPONDING FIELDS OF TABLE it_t005u
FOR ALL ENTRIES IN it_kna1
WHERE land1 = it_kna1-land1 AND
bland = it_kna1-regio AND
spras = sy-langu.
ENDIF.
ENDIF.
SELECT vbeln
posnr
matnr
arktx
zmeng
zieme
cuobj
ntgew
gewei
vkaus
abgru
FROM vbap
INTO CORRESPONDING FIELDS OF TABLE it_vbap
FOR ALL ENTRIES IN it_vbak
WHERE vbeln = it_vbak-vbeln AND
werks = p_werks AND
* modified started on 09/06/08 by JP yadav .
matnr IN s_matnr.
* modified ended on 09/06/08 by JP yadav .
IF sy-subrc = 0.
SELECT vbeln
posnr
bstkd
bstdk
FROM vbkd
INTO CORRESPONDING FIELDS OF TABLE it_vbkd
FOR ALL ENTRIES IN it_vbap
WHERE vbeln = it_vbap-vbeln.
SELECT matnr
mtart
FROM mara
INTO CORRESPONDING FIELDS OF TABLE it_mara
FOR ALL ENTRIES IN it_vbap
WHERE matnr = it_vbap-matnr AND
mtart IN s_mtart.
IF sy-subrc NE 0.
ELSE.
LOOP AT it_vbap INTO wa_vbap.
IF sy-subrc NE 0.
DELETE it_vbap.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
IF sy-subrc NE 0.
DELETE it_vbpa.
ENDIF.
ENDLOOP.
SELECT vbeln
posnv
vbelv
posnn
matnr
vbtyp_n
rfmng
FROM vbfa
INTO CORRESPONDING FIELDS OF TABLE it_vbfa1
FOR ALL ENTRIES IN it_vbap
WHERE vbelv = it_vbap-vbeln AND
posnv = it_vbap-posnr AND
rfmng NE 0 AND
vbtyp_n = 'C'.
ENDIF.
SELECT vbeln
posnv
vbelv
posnn
matnr
vbtyp_n
rfmng
FROM vbfa
INTO CORRESPONDING FIELDS OF TABLE it_vbfa2
FOR ALL ENTRIES IN it_vbfa1
WHERE vbelv = it_vbfa1-vbeln AND
rfmng NE 0 AND
vbtyp_n = 'C'.
* SELECT vbeln
* posnv
* vbelv
* posnn
* matnr
* vbtyp_n
* rfmng
* FROM vbfa
* APPENDING CORRESPONDING FIELDS OF TABLE it_vbfa2
* FOR ALL ENTRIES IN it_vbfa2
* WHERE vbelv = it_vbfa2-vbeln AND
* rfmng NE 0 AND
* vbtyp_n = 'J'.
*
* LOOP AT it_vbfa2 INTO wa_vbfa2 WHERE vbtyp_n = 'J'.
*
* wa_vbfa2-vbeln = wa_vbfa2-vbelv.
*
* MODIFY it_vbfa2 FROM wa_vbfa2.
*
* ENDLOOP.
*
* SORT it_vbfa2 BY vbeln posnv.
*
* DELETE ADJACENT DUPLICATES FROM it_vbfa2 COMPARING vbeln posnv.
IF sy-subrc = 0.
SELECT vbeln
knumv
FROM vbak
INTO CORRESPONDING FIELDS OF TABLE it_vbak_do
FOR ALL ENTRIES IN it_vbfa2
WHERE vbeln = it_vbfa2-vbeln.
IF sy-subrc = 0.
v_tabix = sy-tabix.
IF sy-subrc = 0.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
SELECT vbeln
posnv
vbelv
posnn
matnr
vbtyp_n
rfmng
mjahr
FROM vbfa
APPENDING CORRESPONDING FIELDS OF TABLE it_vbfa4
FOR ALL ENTRIES IN it_vbap
WHERE vbelv = it_vbap-vbeln AND
posnv = it_vbap-posnr AND
rfmng NE 0 AND
vbtyp_n = 'J'.
ENDIF.
SELECT vbeln
posnv
vbelv
posnn
matnr
vbtyp_n
rfmng
mjahr
FROM vbfa
APPENDING CORRESPONDING FIELDS OF TABLE it_vbfa3
FOR ALL ENTRIES IN it_vbfa1
WHERE vbelv = it_vbfa1-vbeln AND
* modified started on 09/06/08 by JP yadav.
matnr IN s_matnr AND
* modified ended on 09/06/08 by JP yadav.
rfmng NE 0 AND
vbtyp_n IN ('R','h').
SELECT vbeln
posnv
vbelv
posnn
matnr
vbtyp_n
rfmng
FROM vbfa
APPENDING CORRESPONDING FIELDS OF TABLE it_vbfa4
FOR ALL ENTRIES IN it_vbfa1
WHERE vbelv = it_vbfa1-vbeln AND
rfmng NE 0 AND
vbtyp_n = 'J'.
ENDIF.
SELECT vbeln
wadat_ist
FROM likp
INTO CORRESPONDING FIELDS OF TABLE it_likp
FOR ALL ENTRIES IN it_vbfa4
WHERE vbeln = it_vbfa4-vbeln AND
wadat_ist LE p_date.
SELECT vbeln
posnr
ntgew
gewei
lfimg
FROM lips
INTO CORRESPONDING FIELDS OF TABLE it_lips
FOR ALL ENTRIES IN it_likp
WHERE vbeln = it_likp-vbeln.
IF sy-subrc NE 0.
REFRESH it_vbfa4.
ELSE.
DELETE it_vbfa4.
ENDIF.
ENDLOOP.
IF sy-subrc NE 0.
DELETE it_vbfa3.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
SELECT vbeln
wbstk
FROM vbuk
INTO CORRESPONDING FIELDS OF TABLE it_vbuk
FOR ALL ENTRIES IN it_vbfa4
WHERE vbeln = it_vbfa4-vbeln AND
wbstk = 'C'.
IF sy-subrc NE 0.
REFRESH it_vbfa4.
ELSE.
IF sy-subrc NE 0.
DELETE it_vbfa4.
ENDIF.
ENDLOOP.
IF sy-subrc NE 0.
DELETE it_vbfa3.
ENDIF.
ENDLOOP.
ENDIF.
wa_vbfa3-zeile = wa_vbfa3-posnn.
ENDLOOP.
SELECT mblnr
mjahr
zeile
matnr
werks
charg
erfmg
smbln
FROM mseg
INTO CORRESPONDING FIELDS OF TABLE it_mseg
FOR ALL ENTRIES IN it_vbfa3
WHERE mblnr = it_vbfa3-vbeln AND
mjahr = it_vbfa3-mjahr AND
zeile = it_vbfa3-zeile.
CLEAR w_tabix.
w_tabix = sy-tabix.
IF sy-subrc = 0.
w_tabix = w_tabix - 1.
DELETE it_mseg INDEX sy-tabix.
ENDIF.
ENDLOOP.
* modified started on 09/06/08 by JP yadav as movement type 601 was considered for
deletion against which reversal done but
*the reversed document no whose movement type 602 was not consider for deletion.
* modified ended on 09/06/08 by JP yadav as movement type 601 was considered for
deletion against which reversal done but
*the reversed document no whose movement type 602 was not consider for deletion.
SELECT mblnr
budat
FROM mkpf
INTO CORRESPONDING FIELDS OF TABLE it_mkpf
FOR ALL ENTRIES IN it_mseg
WHERE mblnr = it_mseg-mblnr AND
mjahr = it_mseg-mjahr AND
budat LE p_date.
DELETE it_mseg.
ENDIF.
ENDLOOP.
ENDIF.
IF sy-subrc NE 0.
DELETE it_vbfa3.
ENDIF.
ENDLOOP.
IF sy-subrc NE 0.
DELETE it_vbfa4.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
CLEAR wa_header.
wa_header-vbeln = wa_vbak-vbeln.
wa_header-audat = wa_vbak-audat.
wa_header-waerk = wa_vbak-waerk.
wa_header-lifsk = wa_vbak-lifsk.
wa_header-faksk = wa_vbak-faksk.
PERFORM get_condition_header.
ENDLOOP.
IF sy-subrc = 0.
wa_item-kunnr1 = wa_vbpa-kunnr.
IF sy-subrc = 0.
wa_item-name11 = wa_kna1-name1.
ENDIF.
ELSE.
IF sy-subrc = 0.
wa_item-kunnr1 = wa_vbpa-kunnr.
IF sy-subrc = 0.
wa_item-name11 = wa_kna1-name1.
ENDIF.
ENDIF.
ENDIF.
ENDFORM. " READ_SP
*&---------------------------------------------------------------------*
*& Form READ_PY
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM read_py .
IF sy-subrc = 0.
wa_item-kunnr2 = wa_vbpa-kunnr.
IF sy-subrc = 0.
wa_item-name12 = wa_kna1-name1.
ENDIF.
ELSE.
IF sy-subrc = 0.
wa_item-kunnr2 = wa_vbpa-kunnr.
IF sy-subrc = 0.
wa_item-name12 = wa_kna1-name1.
ENDIF.
ENDIF.
ENDIF.
IF sy-subrc = 0.
wa_item-kunnr3 = wa_vbpa-kunnr.
IF sy-subrc = 0.
wa_item-name13 = wa_kna1-name1.
IF sy-subrc = 0.
wa_item-land1 = wa_kna1-land1.
wa_item-landx = wa_t005t-landx.
ENDIF.
IF sy-subrc = 0.
wa_item-regio = wa_kna1-regio.
wa_item-bezei = wa_t005u-bezei.
ENDIF.
ENDIF.
ELSE.
IF sy-subrc = 0.
wa_item-kunnr3 = wa_vbpa-kunnr.
IF sy-subrc = 0.
wa_item-name13 = wa_kna1-name1.
IF sy-subrc = 0.
wa_item-land1 = wa_kna1-land1.
wa_item-landx = wa_t005t-landx.
ENDIF.
IF sy-subrc = 0.
wa_item-regio = wa_kna1-regio.
wa_item-bezei = wa_t005u-bezei.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.