Hi,
I am making a reprt in i have to make relationship of 3 tables:-
MKPF,BKPF and BSAK.
But i am confused that how to do that. i am able to make relation among BKPF and MKPF. but not able to make among the BSAK.
here's the code for it:-
TABLES: BKPF,MKPF.
DATA: BEGIN OF ITBKPF OCCURS 0,
BUKRS LIKE BKPF-BUKRS,
BELNR LIKE BKPF-BELNR,
GJAHR LIKE BKPF-GJAHR,
AWTYP LIKE BKPF-AWTYP,
AWKEY LIKE BKPF-AWKEY,
END OF ITBKPF.
DATA: BEGIN OF ITMKPF OCCURS 0,
MBLNR LIKE MKPF-MBLNR,
MJAHR LIKE MKPF-MJAHR,
END OF ITMKPF.
DATA: BEGIN OF ITBSAK OCCURS 0,
AUGBL LIKE BSAK-AUGBL,
AUGDT LIKE BSAK-AUGDT,
BELNR LIKE BSAK-BELNR,
WRBTR LIKE BSAK-WRBTR,
LIFNR LIKE BSAK-LIFNR,
END OF ITBSAK.
DATA: BEGIN OF ITFINAL OCCURS 0,
BUKRS LIKE BKPF-BUKRS,
BELNR LIKE BKPF-BELNR,
GJAHR LIKE BKPF-GJAHR,
AWTYP LIKE BKPF-AWTYP,
AWKEY LIKE BKPF-AWKEY,
MBLNR LIKE MKPF-MBLNR,
MJAHR LIKE MKPF-MJAHR,
AUGBL LIKE BSAK-AUGBL,
AUGDT LIKE BSAK-AUGDT,
WRBTR LIKE BSAK-WRBTR,
LIFNR LIKE BSAK-LIFNR,
END OF ITFINAL.
PARAMETERS: P_BUKRS LIKE BKPF-BUKRS,
P_GJAHR LIKE BKPF-GJAHR.
SELECT ABUKRS ABELNR AGJAHR AAWTYP A~AWKEY INTO TABLE ITBKPF FROM BKPF AS A
WHERE ABUKRS = P_BUKRS AND AGJAHR = P_GJAHR AND A~AWTYP = 'MKPF'.
IF NOT ITBKPF[] IS INITIAL.
SELECT AMBLNR AMJAHR INTO TABLE ITMKPF FROM MKPF AS A FOR ALL ENTRIES IN ITBKPF WHERE A~MBLNR = ITBKPF-AWKEY(10).
ENDIF.
LOOP AT ITBKPF.
READ TABLE ITMKPF WITH KEY MBLNR = ITBKPF-AWKEY(10)
MJAHR = ITBKPF-AWKEY+10(4).
IF SY-SUBRC EQ 0.
WRITE :/ ITBKPF-BELNR,ITMKPF-MBLNR,ITBKPF-GJAHR.
ENDIF.
ENDLOOP.
TELL ME HOW TO DO IT?