Hi abaper's,
my reqirement is read the data for status of A OR B INTO FINAL TABLE . That table convert excel sheet and sent manager by mail.
this is my code please give some tips . where i wrote wrong.
TABLES:VBAK,
VBUK,
KNA1.
TYPES: begin of ty_kna1,
kunnr type kna1-kunnr,
land1 type kna1-land1,
name1 type kna1-name1,
ort01 type kna1-ort01,
telf1 type kna1-telf1,
end of ty_kna1.
TYPES: begin of ty_vbak,
vbeln type vbak-vbeln,
erdat type vbak-erdat,
ernam type vbak-ernam,
vbtyp type vbak-vbtyp,
vkorg type vbak-vkorg,
vtweg type vbak-vtweg,
spart type vbak-spart,
kunnr type vbak-kunnr,
end of ty_vbak.
TYPES: begin of ty_vbuk,
vbeln type vbuk-vbeln,
gbstk type vbuk-gbstk,
end of ty_vbuk.
TYPES:BEGIN OF ty_final,
kunnr type kna1-kunnr,
land1 type kna1-land1,
name1 type kna1-name1,
ort01 type kna1-ort01,
telf1 type kna1-telf1,
vbeln type vbak-vbeln,
erdat type vbak-erdat,
ernam type vbak-ernam,
vbtyp type vbak-vbtyp,
vkorg type vbak-vkorg,
vtweg type vbak-vtweg,
spart type vbak-spart,
gbstk type vbuk-gbstk,
END OF ty_final.
DATA:IT_KNA1 TYPE TABLE OF TY_KNA1,
WA_KNA1 TYPE TY_KNA1,
IT_VBAK TYPE TABLE OF TY_VBAK,
WA_VBAK TYPE TY_VBAK,
IT_VBUK TYPE TABLE OF TY_VBUK,
WA_VBUK TYPE TY_VBUK,
IT_FINAL TYPE TABLE OF TY_FINAL,
WA_FINAL TYPE TY_FINAL.
START-OF-SELECTION.
PERFORM GET_DATA.
*&---------------------------------------------------------------------*
*& Form GET_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form GET_DATA .
SELECT vbeln
erdat
ernam
vbtyp
vkorg
vtweg
spart
kunnr FROM VBAK INTO TABLE IT_VBAK.
IF NOT IT_VBAK[] IS INITIAL.
SELECT kunnr
land1
name1
ort01
telf1 FROM KNA1 INTO TABLE IT_KNA1
FOR ALL ENTRIES IN IT_VBAK
WHERE KUNNR = IT_VBAK-KUNNR.
ENDIF.
IF NOT IT_VBAK[] IS INITIAL.
SELECT vbeln
gbstk FROM VBUK INTO TABLE IT_VBUK
FOR ALL ENTRIES IN IT_VBAK
WHERE VBELN = IT_VBAK-VBELN
AND gbstk = 'A OR B'.
ENDIF.
endform. " GET_DATA
LOOP AT: IT_VBUK INTO WA_VBUK.
WA_FINAL-VBELN = WA_VBUK-VBELN.
WA_FINAL-GBSTK = WA_VBUK-GBSTK.
SORT VBAK BY VBELN.
CLEAR WA_VBAK.
READ TABLE IT_VBAK INTO WA_VBAK WITH KEY VBELN = WA_VBUK-VBELN BINARY SEARCH.
IF SY-SUBRC = 0.
WA_FINAL-vbeln = WA_VBAK-vbeln.
WA_FINAL-erdat = WA_VBAK-erdat.
WA_FINAL-ernam = WA_VBAK-ernam.
WA_FINAL-vbtyp = WA_VBAK-vbtyp.
WA_FINAL-vkorg = WA_VBAK-vkorg.
WA_FINAL-vtweg = WA_VBAK-vtweg.
WA_FINAL-spart = WA_VBAK-spart.
WA_FINAL-kunnr = WA_VBAK-kunnr.
ENDIF.
SORT IT_KNA1 BY KUNNR.
CLEAR WA_KUNNR.
READ TABLE IT_KNA1 INTO WA_KNA1 WITH KEY KUNNR = WA_VBAK-KUNNR.
IF SY-SUBRC = 0.
WA_FINAL-land1 = WA_KNA1-land1.
WA_FINAL-name1 = WA_KNA1-name1.
WA_FINAL-ort01 = WA_KNA1-ort01.
WA_FINAL-telf1 = WA_KNA1-telf1.
ENDIF.
APPEND WA_FINAL TO IT_FINAL.
ENDLOOP.