Skip to Content
0
Former Member
Dec 04, 2008 at 06:50 AM

Logic to get all line items

61 Views

hi all,

in the report i need to fetch debit and credit values from VBSEGK and VBSEGS tables,

credit values will be in VBSEGK TABLE and debit values will be in VBSEGS TABLE.

For these i wrote the following code.

First appended the credit values from vbsegk table into GT_FINAL1 INTERNAL TABLE and moved to gt_final table and again debit values has been appended to gt_final table.

if it is for only one document number i am getting credit and debit values correctly if i am giving 2 document nos debit values are missing .

for eg:

BELNR BUKRS GJAHR BUZEI WRBTR

1001 10 2008 001 100-

002 100

1002 20 2008 001 200-

002 200

THE OUTPUT SHOULD COME AS ABOVE BUT I AM GETTING AS

BELNR BUKRS GJAHR BUZEI WRBTR

1001 10 2008 001 100-

1002 20 2008 001 200-

002 200

ONE OF THE LINE ITEM IS MISSING.

I THINK THE LINE ITEM IS MISSING DUE TO THE STATEMENT GT_FINAL[] = GT_FINAL1[].

PLEASE SEE THE CODE BELOW

LOOP AT GT_VBSEGK.

MOVE GT_VBSEGK-BUZEI TO GT_FINAL1-BUZEI.

MOVE GT_VBSEGK-BSCHL TO GT_FINAL1-BSCHL.

MOVE GT_VBSEGK-LIFNR TO GT_FINAL1-LIFNR.

MOVE GT_VBSEGK-WRBTR TO GT_FINAL1-WRBTR.

MOVE GT_VBSEGK-DMBTR TO GT_FINAL1-DMBTR.

MOVE GT_VBSEGK-SGTXT TO GT_FINAL1-SGTXT.

READ TABLE GT_LFA1 WITH KEY LIFNR = GT_VBSEGK-LIFNR

BINARY SEARCH.

IF SY-SUBRC = 0.

MOVE GT_LFA1-NAME1 TO GT_FINAL1-NAME1.

ENDIF.

ENDIF.

APPEND GT_FINAL1.

GT_FINAL[] = GT_FINAL1[].

LOOP AT GT_VBSEGS WHERE AUSBK = GT_VBKPF-AUSBK AND

BELNR = GT_VBKPF-BELNR AND

GJAHR = GT_VBKPF-GJAHR.

MOVE GT_VBSEGS-BUZEI TO GT_FINAL-BUZEI.

MOVE GT_VBSEGS-DMBTR TO GT_FINAL-DMBTR.

MOVE GT_VBSEGS-WRBTR TO GT_FINAL-WRBTR.

ENDIF.

APPEND GT_FINAL.

CLEAR GT_FINAL.

ENDLOOP.

ENDLOOP.

PLEASE HELP ME