Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Urgent: Problem in Fetching the records from ITAB3

Former Member
0 Kudos

hi,

here's d code,and the bold is dere where i am facing the problem i.e. whne i append lines of ITAB2 to ITAB3 it takes 32,234 records but in reality in ITAB2 there are 39 records,ITFINAL contains 45 records which is displaying the coreect data.

But why ITAB3 conatins 32,234 records in it.

it might hit th eperformance of the report.

TABLES: RSEG.

***********DECLARATION OF TABLES*************

************TABLE BKPF - ACCOUNTING HEADER ***********

DATA: BEGIN OF ITBKPF OCCURS 0,

BUKRS LIKE BKPF-BUKRS,

BELNR LIKE BKPF-BELNR,

GJAHR LIKE BKPF-GJAHR,

AWKEY LIKE BKPF-AWKEY,

BUDAT LIKE BKPF-BUDAT,

XBLNR LIKE BKPF-XBLNR,

AWTYP LIKE BKPF-AWTYP,

END OF ITBKPF.

*********TABLE BSIK - ACCOUNTING OPEN ITEMS********

DATA: BEGIN OF ITAB2 OCCURS 0,

LFBNR LIKE RSEG-LFBNR,

BUKRS LIKE BSIK-BUKRS,

GJAHR LIKE BSIK-GJAHR,

BELNR LIKE BSIK-BELNR,

AWKEY LIKE BKPF-AWKEY,

WRBTR LIKE BSIK-WRBTR,

LIFNR LIKE BSIK-LIFNR,

AUGBL LIKE BSAK-AUGBL,

AUGDT LIKE BSAK-AUGDT,

END OF ITAB2.

**********TABLE BSAK - ACCOUNTING CLEAR ITEMS*******

DATA: BEGIN OF ITAB3 OCCURS 0,

LFBNR LIKE RSEG-LFBNR,

BUKRS LIKE BSAK-BUKRS,

GJAHR LIKE BSAK-GJAHR,

BELNR LIKE BSAK-BELNR,

AWKEY LIKE BKPF-AWKEY,

WRBTR LIKE BSIK-WRBTR,

LIFNR LIKE BSIK-LIFNR,

AUGBL LIKE BSAK-AUGBL,

AUGDT LIKE BSAK-AUGDT,

END OF ITAB3.

DATA: BEGIN OF ITDEMO OCCURS 0,

BELNR LIKE RSEG-BELNR,

GJAHR LIKE RSEG-GJAHR,

LFBNR LIKE RSEG-LFBNR,

XBLNR LIKE RSEG-XBLNR,

END OF ITDEMO.

*****FINAL TABLE TO GATHER N DISPLAY OUTPUT*****

DATA: BEGIN OF ITFINAL OCCURS 0,

LFBNR LIKE RSEG-LFBNR,

BUKRS LIKE BKPF-BUKRS,

GJAHR LIKE BKPF-GJAHR,

BELNR LIKE BKPF-BELNR,

AWKEY LIKE BKPF-AWKEY,

WRBTR LIKE BSIK-WRBTR,

LIFNR LIKE BSIK-LIFNR,

AUGBL LIKE BSAK-AUGBL,

AUGDT LIKE BSAK-AUGDT,

END OF ITFINAL.

**********END OF DECLARATIONS*************

SELECT-OPTIONS: P_LFBNR FOR RSEG-LFBNR.

*************FETCHING OF THE DATA*************

START-OF-SELECTION.

  • BKPF

SELECT BUKRS BELNR GJAHR AWKEY BUDAT XBLNR AWTYP

FROM BKPF

INTO (ITBKPF-BUKRS,ITBKPF-BELNR,ITBKPF-GJAHR,

ITBKPF-AWKEY,ITBKPF-BUDAT,ITBKPF-XBLNR,ITBKPF-AWTYP)

WHERE AWTYP EQ 'MKPF' OR AWTYP EQ 'RMRP'.

*

o

+ MKPF*

************BEGIN OF TRY CODE FOR A MATERIAL DOCUMENT************

ITDEMO-BELNR = ITBKPF-AWKEY(10).

ITDEMO-GJAHR = ITBKPF-AWKEY+10(4).

ITDEMO-XBLNR = ITBKPF-XBLNR.

SELECT LFBNR FROM RSEG INTO

(ITDEMO-LFBNR) WHERE

BELNR EQ ITBKPF-AWKEY(10) AND

GJAHR EQ ITBKPF-AWKEY+10(4) AND

XBLNR EQ ITBKPF-XBLNR AND LFBNR > 0.

CHECK SY-SUBRC EQ 0 AND ITDEMO-LFBNR IN P_LFBNR.

************END OF TRY CODE FOR A MATERIAL DOCUMENT***************

ITAB2-BUKRS = ITBKPF-BUKRS.

ITAB2-GJAHR = ITBKPF-GJAHR.

ITAB2-BELNR = ITBKPF-BELNR.

ITAB3-BUKRS = ITBKPF-BUKRS.

ITAB3-GJAHR = ITBKPF-GJAHR.

ITAB3-BELNR = ITBKPF-BELNR.

*

o

+ BSIK*

SELECT WRBTR LIFNR FROM BSIK

INTO (ITAB2-WRBTR, ITAB2-LIFNR)

WHERE BUKRS EQ ITBKPF-BUKRS

AND GJAHR EQ ITBKPF-GJAHR

AND BELNR EQ ITBKPF-BELNR.

APPEND ITAB2.

EXIT.

ENDSELECT.

*

o

+

  1. BSAK*

SELECT WRBTR LIFNR AUGBL AUGDT

FROM BSAK

INTO (ITAB3-WRBTR,ITAB3-LIFNR,ITAB3-AUGBL,ITAB3-AUGDT)

WHERE BUKRS EQ ITBKPF-BUKRS

AND GJAHR EQ ITBKPF-GJAHR

AND BELNR EQ ITBKPF-BELNR.

APPEND ITAB3.

EXIT.

ENDSELECT.

APPEND ITDEMO.

EXIT.

ENDSELECT.

APPEND ITBKPF.

ENDSELECT.

  • Fields Found?

READ TABLE ITBKPF TRANSPORTING NO FIELDS INDEX 1.

IF sy-subrc NE 0.

MESSAGE i000(zmm1) WITH 'No documents found!'.

ENDIF.

  • Prepare Output

LOOP AT ITBKPF.

CLEAR ITAB2.

READ TABLE ITAB2

WITH KEY BUKRS = ITBKPF-BUKRS

BELNR = ITBKPF-BELNR

GJAHR = ITBKPF-GJAHR.

  • CHECK sy-subrc EQ 0?

CLEAR ITAB3.

READ TABLE ITAB3

WITH KEY BUKRS = ITBKPF-BUKRS

BELNR = ITBKPF-BELNR

GJAHR = ITBKPF-GJAHR. .

  • CHECK sy-subrc EQ 0?

READ TABLE ITDEMO

WITH KEY BELNR = ITBKPF-AWKEY(10).

  • CHECK sy-subrc EQ 0?

APPEND LINES OF ITAB2 TO ITAB3.

  • CHECK sy-subrc EQ 0?

ITFINAL-LFBNR = ITDEMO-LFBNR.

ITFINAL-BUKRS = ITBKPF-BUKRS.

ITFINAL-BELNR = ITBKPF-BELNR.

ITFINAL-GJAHR = ITBKPF-GJAHR.

ITFINAL-AWKEY = ITBKPF-AWKEY.

ITFINAL-WRBTR = ITAB3-WRBTR.

ITFINAL-LIFNR = ITAB3-LIFNR.

ITFINAL-AUGBL = ITAB3-AUGBL.

ITFINAL-AUGDT = ITAB3-AUGDT.

DELETE ITFINAL WHERE WRBTR = 0.

APPEND ITFINAL.

CLEAR ITFINAL.

ENDLOOP.

SORT ITFINAL BY AUGBL AUGDT .

****************************************

  • END-OF-SELECTION

****************************************

END-OF-SELECTION.

  • Output

LOOP AT ITFINAL.

WRITE: / ITFINAL-LFBNR,ITFINAL-BELNR, ITFINAL-GJAHR,ITFINAL-AWKEY, ITFINAL-WRBTR, ITFINAL-LIFNR,ITFINAL-AUGBL,ITFINAL-AUGDT.

ENDLOOP.

5 REPLIES 5

Former Member
0 Kudos

Hi,

APPEND LINES OF ITAB2 TO ITAB3.

The above statement is in loop. and it doesnt have condition. so for all the loop passes it is going to append in to itab3.

is it necessary to append lines in the Loop?

Regards,

Madhu

0 Kudos

hi,

actually i have to display the open n clear items with respect to the MATERIAL DOCUMENT.

try to execute the code which i am displaying below:-

TABLES: RSEG.

**********DECLARATION OF TABLES************

***********TABLE BKPF - ACCOUNTING HEADER **********

DATA: BEGIN OF ITBKPF OCCURS 0,

BUKRS LIKE BKPF-BUKRS,

BELNR LIKE BKPF-BELNR,

GJAHR LIKE BKPF-GJAHR,

AWKEY LIKE BKPF-AWKEY,

BUDAT LIKE BKPF-BUDAT,

XBLNR LIKE BKPF-XBLNR,

AWTYP LIKE BKPF-AWTYP,

END OF ITBKPF.

********TABLE BSIK - ACCOUNTING OPEN ITEMS*******

DATA: BEGIN OF ITAB2 OCCURS 0,

LFBNR LIKE RSEG-LFBNR,

BUKRS LIKE BSIK-BUKRS,

GJAHR LIKE BSIK-GJAHR,

BELNR LIKE BSIK-BELNR,

AWKEY LIKE BKPF-AWKEY,

WRBTR LIKE BSIK-WRBTR,

LIFNR LIKE BSIK-LIFNR,

AUGBL LIKE BSAK-AUGBL,

AUGDT LIKE BSAK-AUGDT,

END OF ITAB2.

*********TABLE BSAK - ACCOUNTING CLEAR ITEMS******

DATA: BEGIN OF ITAB3 OCCURS 0,

LFBNR LIKE RSEG-LFBNR,

BUKRS LIKE BSAK-BUKRS,

GJAHR LIKE BSAK-GJAHR,

BELNR LIKE BSAK-BELNR,

AWKEY LIKE BKPF-AWKEY,

WRBTR LIKE BSIK-WRBTR,

LIFNR LIKE BSIK-LIFNR,

AUGBL LIKE BSAK-AUGBL,

AUGDT LIKE BSAK-AUGDT,

END OF ITAB3.

*********TABLE BSIS - MIRO NOT PERFORMED*******

DATA: BEGIN OF ITAB4 OCCURS 0,

LFBNR LIKE RSEG-LFBNR,

BUKRS LIKE BSIS-BUKRS,

GJAHR LIKE BSIS-GJAHR,

BELNR LIKE BSIS-BELNR,

AWKEY LIKE BKPF-AWKEY,

WRBTR LIKE BSIK-WRBTR,

LIFNR LIKE BSIK-LIFNR,

AUGBL LIKE BSAK-AUGBL,

AUGDT LIKE BSAK-AUGDT,

END OF ITAB4.

**********TABLE RSEG - FOR MATERIAL DOCUMENT********

DATA: BEGIN OF ITDEMO OCCURS 0,

BELNR LIKE RSEG-BELNR,

GJAHR LIKE RSEG-GJAHR,

LFBNR LIKE RSEG-LFBNR,

XBLNR LIKE RSEG-XBLNR,

END OF ITDEMO.

****FINAL TABLE TO GATHER N DISPLAY OUTPUT****

DATA: BEGIN OF ITFINAL OCCURS 0,

LFBNR LIKE RSEG-LFBNR,

BUKRS LIKE BKPF-BUKRS,

GJAHR LIKE BKPF-GJAHR,

BELNR LIKE BKPF-BELNR,

AWKEY LIKE BKPF-AWKEY,

WRBTR LIKE BSIK-WRBTR,

LIFNR LIKE BSIK-LIFNR,

AUGBL LIKE BSAK-AUGBL,

AUGDT LIKE BSAK-AUGDT,

END OF ITFINAL.

*********END OF DECLARATIONS************

SELECT-OPTIONS: P_LFBNR FOR RSEG-LFBNR.

************FETCHING OF THE DATA************

START-OF-SELECTION.

  • BKPF

SELECT BUKRS BELNR GJAHR AWKEY BUDAT XBLNR AWTYP

FROM BKPF

INTO (ITBKPF-BUKRS,ITBKPF-BELNR,ITBKPF-GJAHR,

ITBKPF-AWKEY,ITBKPF-BUDAT,ITBKPF-XBLNR,ITBKPF-AWTYP)

WHERE AWTYP EQ 'MKPF' OR AWTYP EQ 'RMRP'.

    • MKPF

***********BEGIN OF TRY CODE FOR A MATERIAL DOCUMENT***********

ITDEMO-BELNR = ITBKPF-AWKEY(10).

ITDEMO-GJAHR = ITBKPF-AWKEY+10(4).

ITDEMO-XBLNR = ITBKPF-XBLNR.

SELECT LFBNR FROM RSEG INTO

(ITDEMO-LFBNR) WHERE

BELNR EQ ITBKPF-AWKEY(10) AND

GJAHR EQ ITBKPF-AWKEY+10(4) AND

XBLNR EQ ITBKPF-XBLNR AND LFBNR > 0.

CHECK SY-SUBRC EQ 0 AND ITDEMO-LFBNR IN P_LFBNR.

***********END OF TRY CODE FOR A MATERIAL DOCUMENT**************

ITAB2-BUKRS = ITBKPF-BUKRS.

ITAB2-GJAHR = ITBKPF-GJAHR.

ITAB2-BELNR = ITBKPF-BELNR.

ITAB3-BUKRS = ITBKPF-BUKRS.

ITAB3-GJAHR = ITBKPF-GJAHR.

ITAB3-BELNR = ITBKPF-BELNR.

    • BSIK

SELECT WRBTR LIFNR FROM BSIK

INTO (ITAB2-WRBTR, ITAB2-LIFNR)

WHERE BUKRS EQ ITBKPF-BUKRS

AND GJAHR EQ ITBKPF-GJAHR

AND BELNR EQ ITBKPF-BELNR.

APPEND ITAB2.

EXIT.

ENDSELECT.

      • BSAK

SELECT WRBTR LIFNR AUGBL AUGDT

FROM BSAK

INTO (ITAB3-WRBTR,ITAB3-LIFNR,ITAB3-AUGBL,ITAB3-AUGDT)

WHERE BUKRS EQ ITBKPF-BUKRS

AND GJAHR EQ ITBKPF-GJAHR

AND BELNR EQ ITBKPF-BELNR.

APPEND ITAB3.

EXIT.

ENDSELECT.

          • BSIS

  • SELECT WRBTR XREF3 FROM BSIS

  • INTO (ITAB1-WRBTR, ITAB1-XREF3)

  • WHERE BUKRS EQ ITBKPF-BUKRS

  • AND GJAHR EQ ITBKPF-GJAHR

  • AND BELNR EQ ITBKPF-BELNR.

  • APPEND ITAB1.

  • EXIT.

  • ENDSELECT.

  • CHECK sy-subrc EQ 0?

APPEND ITDEMO.

EXIT.

ENDSELECT.

APPEND ITBKPF.

ENDSELECT.

  • Fields Found?

READ TABLE ITBKPF TRANSPORTING NO FIELDS INDEX 1.

IF sy-subrc NE 0.

MESSAGE i000(zmm1) WITH 'No documents found!'.

ENDIF.

  • Prepare Output

LOOP AT ITBKPF.

CLEAR ITAB2.

READ TABLE ITAB2

WITH KEY BUKRS = ITBKPF-BUKRS

BELNR = ITBKPF-BELNR

GJAHR = ITBKPF-GJAHR." BINARY SEARCH..

  • CHECK sy-subrc EQ 0?

CLEAR ITAB3.

READ TABLE ITAB3

WITH KEY BUKRS = ITBKPF-BUKRS

BELNR = ITBKPF-BELNR

GJAHR = ITBKPF-GJAHR." BINARY SEARCH. .

  • CHECK sy-subrc EQ 0?

READ TABLE ITDEMO

WITH KEY BELNR = ITBKPF-AWKEY(10).

  • CHECK sy-subrc EQ 0?

APPEND LINES OF ITAB2 TO ITAB3.

  • CHECK sy-subrc EQ 0?

ITFINAL-LFBNR = ITDEMO-LFBNR.

ITFINAL-BUKRS = ITBKPF-BUKRS.

ITFINAL-BELNR = ITBKPF-BELNR.

ITFINAL-GJAHR = ITBKPF-GJAHR.

ITFINAL-AWKEY = ITBKPF-AWKEY.

ITFINAL-WRBTR = ITAB3-WRBTR.

ITFINAL-LIFNR = ITAB3-LIFNR.

ITFINAL-AUGBL = ITAB3-AUGBL.

ITFINAL-AUGDT = ITAB3-AUGDT.

DELETE ITFINAL WHERE WRBTR = 0.

APPEND ITFINAL.

CLEAR ITFINAL.

ENDLOOP.

SORT ITFINAL BY AUGBL AUGDT .

****************************************

  • END-OF-SELECTION

****************************************

END-OF-SELECTION.

  • Output

  • WRITE: /' OPEN ITEMS -> PAYMENTS ARE NOT DONE'.

ULINE.

WRITE: / 'MAT.DOC. A/C DOC. YEAR REF.KEY AMOUNT VENDOR CLR.DOC. CLR.DATE' .

ULINE.

LOOP AT ITFINAL.

WRITE: / ITFINAL-LFBNR,ITFINAL-BELNR, ITFINAL-GJAHR,ITFINAL-AWKEY, ITFINAL-WRBTR, ITFINAL-LIFNR,ITFINAL-AUGBL,ITFINAL-AUGDT.

ENDLOOP.

former_member194613
Active Contributor
0 Kudos

I have told you already in another thread that you are confusing table and header lines!

Please use explizit work areas this will make it clear also to you!


LOOP AT ITBKPF.

CLEAR ITAB2.                 <- clear only header line not table body !!!

READ TABLE ITAB2     <- what do you expect from these reads?, they have no effect
READ Table itab3.    

APPEND LINES OF ITAB2 TO ITAB3.   <-  append all lines, in every stop of the loop ITBKPF => many identical   BUG BUG BUG !!!!!


DELETE ITFINAL WHERE WRBTR = 0.   <-   No , write an if before you move the lines above, and move the ne 0 lines.

ENDLOOP.

... the coding is not only informant but has several bugs.

Siegfried

0 Kudos

hi,

i had made a code with work areas and plzz tell what are the problems in it?

Tables: RSEG.

TYPES:

BEGIN OF ty_bkpf,

bukrs LIKE bkpf-bukrs,

belnr LIKE bkpf-belnr,

gjahr LIKE bkpf-gjahr,

awkey LIKE bkpf-awkey,

budat LIKE bkpf-budat,

xblnr LIKE bkpf-xblnr,

END OF ty_bkpf,

BEGIN OF ty_bsak,

bukrs LIKE bsak-bukrs,

gjahr LIKE bsak-gjahr,

belnr LIKE bsak-belnr,

wrbtr LIKE bsak-wrbtr,

lifnr LIKE bsak-lifnr,

augbl LIKE bsak-augbl,

END OF ty_bsak,

BEGIN OF ty_bsik,

bukrs LIKE bsik-bukrs,

gjahr LIKE bsik-gjahr,

belnr LIKE bsik-belnr,

wrbtr LIKE bsik-wrbtr,

lifnr LIKE bsik-lifnr,

augbl LIKE bsik-augbl,

END OF ty_bsik,

BEGIN OF ty_bsis,

bukrs LIKE bsis-bukrs,

gjahr LIKE bsis-gjahr,

belnr LIKE bsis-belnr,

wrbtr LIKE bsis-wrbtr,

augdt LIKE bsis-augdt,

augbl LIKE bsis-augbl,

END OF ty_bsis,

BEGIN OF ty_demo,

belnr LIKE rseg-belnr,

gjahr LIKE rseg-gjahr,

lfbnr LIKE rseg-lfbnr,

xblnr LIKE rseg-xblnr,

END OF ty_demo,

BEGIN OF ty_final,

lfbnr LIKE rseg-lfbnr,

bukrs LIKE bkpf-bukrs,

belnr LIKE bkpf-belnr,

gjahr LIKE bkpf-gjahr,

awtyp LIKE bkpf-awtyp,

awkey LIKE bkpf-awkey,

wrbtr LIKE bsak-wrbtr,

lifnr LIKE bsak-lifnr,

augbl LIKE bsak-augbl,

END OF ty_final.

DATA: itbkpf TYPE STANDARD TABLE OF ty_bkpf,

wabkpf TYPE ty_bkpf,

itbsik TYPE STANDARD TABLE OF ty_bsik,

wabsik TYPE ty_bsik,

itbsak TYPE STANDARD TABLE OF ty_bsak,

wabsak TYPE ty_bsak,

itbsis TYPE STANDARD TABLE OF ty_bsis,

wabsis TYPE ty_bsis,

itdemo TYPE STANDARD TABLE OF ty_demo,

wademo TYPE ty_demo,

itfinal TYPE STANDARD TABLE OF ty_final,

wafinal TYPE ty_final,

w_lfbnr TYPE lfbnr.

SELECT-OPTIONS: P_LFBNR FOR RSEG-LFBNR.

****************************************

  • START-OF-SELECTION

****************************************

START-OF-SELECTION.

  • BKPF

SELECT bukrs belnr gjahr awkey budat xblnr

FROM bkpf

INTO (wabkpf-bukrs, wabkpf-belnr, wabkpf-gjahr,

wabkpf-awkey, wabkpf-budat, wabkpf-xblnr)

WHERE awtyp EQ 'MKPF' OR AWTYP EQ 'RMRP'.

    • RSEG

wademo-belnr = wabkpf-awkey(10).

wademo-gjahr = wabkpf-awkey+10(4).

wademo-xblnr = wabkpf-xblnr.

SELECT lfbnr

FROM rseg

INTO (wademo-lfbnr)

WHERE belnr EQ wabkpf-awkey(10)

AND gjahr EQ wabkpf-awkey+10(4)

AND xblnr EQ wabkpf-xblnr and xblnr > 0.

CHECK sy-subrc EQ 0 AND wademo-lfbnr IN p_lfbnr.

APPEND wademo TO itdemo.

EXIT.

ENDSELECT.

    • BSIK

wabsik-bukrs = wabkpf-bukrs.

wabsik-gjahr = wabkpf-gjahr.

wabsik-belnr = wabkpf-belnr.

SELECT wrbtr lifnr augbl

FROM bsik

INTO (wabsik-wrbtr, wabsik-lifnr,wabsik-augbl)

WHERE bukrs EQ wabkpf-bukrs

AND gjahr EQ wabkpf-gjahr

AND belnr EQ wabkpf-belnr.

APPEND wabsik TO itbsik.

EXIT.

ENDSELECT.

    • BSAK

wabsak-bukrs = wabkpf-bukrs.

wabsak-gjahr = wabkpf-gjahr.

wabsak-belnr = wabkpf-belnr.

SELECT wrbtr lifnr augbl

FROM bsak

INTO (wabsak-wrbtr, wabsak-lifnr, wabsak-augbl)

WHERE bukrs EQ wabkpf-bukrs

AND gjahr EQ wabkpf-gjahr

AND belnr EQ wabkpf-belnr.

APPEND wabsak TO itbsak.

EXIT.

ENDSELECT.

      • BSIS

  • wabsis-bukrs = wabkpf-bukrs.

  • wabsis-gjahr = wabkpf-gjahr.

  • wabsis-belnr = wabkpf-belnr.

  • SELECT wrbtr augdt augbl

  • FROM bsis

  • INTO (wabsis-wrbtr, wabsis-augdt,wabsis-augbl)

  • WHERE bukrs EQ wabkpf-bukrs

  • AND gjahr EQ wabkpf-gjahr

  • AND belnr EQ wabkpf-belnr.

  • APPEND wabsik TO itbsis.

  • EXIT.

  • ENDSELECT.

    • CHECK sy-subrc EQ 0?

APPEND wabkpf TO itbkpf.

ENDSELECT.

  • Fields Found?

READ TABLE itbkpf TRANSPORTING NO FIELDS INDEX 1.

IF sy-subrc NE 0.

MESSAGE i000(zmm1) WITH 'No documents found!'.

ENDIF.

  • Prepare Output

LOOP AT itbkpf INTO wabkpf.

CLEAR wabsik.

READ TABLE itbsik INTO wabsik

WITH KEY bukrs = wabkpf-bukrs

belnr = wabkpf-belnr

gjahr = wabkpf-gjahr.

CLEAR wabsak.

READ TABLE itbsak INTO wabsak

WITH KEY bukrs = wabkpf-bukrs

belnr = wabkpf-belnr

gjahr = wabkpf-gjahr.

CLEAR wademo.

READ TABLE itdemo into wademo

WITH KEY belnr = wabkpf-awkey(10).

  • CLEAR wabsis.

*

  • READ TABLE itbsis INTO wabsis

  • WITH KEY bukrs = wabkpf-bukrs

  • belnr = wabkpf-belnr

  • gjahr = wabkpf-gjahr.

IF sy-subrc = 0.

append lines of itbsik to itbsak.

ELSE.

CONTINUE.

ENDIF.

wafinal-lfbnr = wademo-lfbnr.

wafinal-belnr = wabkpf-belnr.

wafinal-gjahr = wabkpf-gjahr.

wafinal-awkey = wabkpf-awkey.

wafinal-wrbtr = wabsak-wrbtr.

wafinal-lifnr = wabsak-lifnr.

wafinal-augbl = wabsak-augbl.

  • delete itfinal where lfbnr EQ 0.

  • delete itfinal where wrbtr EQ 0.

APPEND wafinal TO itfinal.

CLEAR wafinal.

ENDLOOP.

SORT ITFINAL BY AUGBL.

****************************************

  • END-OF-SELECTION

****************************************

END-OF-SELECTION.

  • Output

LOOP AT itfinal INTO wafinal.

WRITE : / wafinal-lfbnr, wafinal-belnr, wafinal-gjahr,wafinal-awkey, wafinal-wrbtr, wafinal-lifnr,wafinal-augbl.

ENDLOOP.

former_member194613
Active Contributor
0 Kudos

it is the same program as before, just with work areas.

new names are even harder to read.

bugs are still there!!!!

you still append all lines of itab2 in every step !

This does not make sense !!!!

Siegfried