You are on page 1of 8

REPORT ZVENDOR_MASTER.

TYPE-POOLS SLISS.

TABLES : LFA1, LFB1,LFM1,SKAT,LFBK,DFKKBPTAXNUM.

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.

SELECT-OPTIONS : S_BUKRS FOR LFB1-BUKRS,


S_LIFNR FOR LFB1-LIFNR,
S_EKORG FOR LFM1-EKORG,
S_KTOKK FOR LFA1-KTOKK,
S_KTOPL FOR SKAT-KTOPL,
S_SPERR FOR LFA1-SPERR,
S_MINDK FOR LFB1-MINDK,
S_LAND1 FOR LFA1-LAND1,
S_SPRAS FOR SKAT-SPRAS,
S_ERDAT FOR LFA1-ERDAT.
SELECTION-SCREEN END OF BLOCK B1.

TYPES : BEGIN OF TY_LFB1,


LIFNR TYPE LFB1-LIFNR,
BUKRS TYPE LFB1-BUKRS,
SPERR TYPE LFB1-SPERR,
LOEVM TYPE LFB1-LOEVM,
AKONT TYPE LFB1-AKONT,
ZTERM TYPE LFB1-ZTERM,
MINDK TYPE LFB1-MINDK,
END OF TY_LFB1.
DATA : WA_LFB1 TYPE TY_LFB1,
IT_LFB1 TYPE TABLE OF TY_LFB1.

SELECT LIFNR BUKRS SPERR LOEVM AKONT ZTERM MINDK FROM LFB1 INTO TABLE IT_LFB1 WHERE
BUKRS IN S_BUKRS AND MINDK IN S_MINDK AND LIFNR IN S_LIFNR.

TYPES : BEGIN OF TY_LFA1,


LIFNR TYPE LFA1-LIFNR,
NAME1 TYPE LFA1-NAME1,
LAND1 TYPE LFA1-LAND1,
ORT02 TYPE LFA1-ORT02,
ORT01 TYPE LFA1-ORT01,
PSTLZ TYPE LFA1-PSTLZ,
REGIO TYPE LFA1-REGIO,
STRAS TYPE LFA1-STRAS,
ADRNR TYPE LFA1-ADRNR,
ERDAT TYPE LFA1-ERDAT,
ERNAM TYPE LFA1-ERNAM,
KTOKK TYPE LFA1-KTOKK,
KUNNR TYPE LFA1-KUNNR,
SPERR TYPE LFA1-SPERR,
SPERM TYPE LFA1-SPERM,
TELF1 TYPE LFA1-TELF1,
TELF2 TYPE LFA1-TELF2,
J_1IPANNO TYPE LFA1-J_1IPANNO,
AEDAT TYPE LFA1-AEDAT,
USNAM TYPE LFA1-USNAM,
END OF TY_LFA1.

DATA : WA_LFA1 TYPE TY_LFA1,


IT_LFA1 TYPE TABLE OF TY_LFA1.

SELECT LIFNR NAME1 LAND1 ORT02 ORT01 PSTLZ REGIO STRAS ADRNR ERDAT ERNAM KTOKK
KUNNR SPERR SPERM TELF1 TELF2 J_1IPANNO AEDAT USNAM
FROM LFA1 INTO TABLE IT_LFA1 WHERE LAND1 IN S_LAND1 AND ERDAT IN S_ERDAT AND KTOKK
IN S_KTOKK AND SPERR IN S_SPERR.

TYPES : BEGIN OF TY_LFM1,


EKORG TYPE LFM1-EKORG,
ZTERM TYPE LFM1-ZTERM,
LIFNR TYPE LFM1-LIFNR,
END OF TY_LFM1.

DATA : WA_LFM1 TYPE TY_LFM1,


IT_LFM1 TYPE TABLE OF TY_LFM1.

SELECT EKORG ZTERM LIFNR FROM LFM1 INTO TABLE IT_LFM1 WHERE EKORG IN S_EKORG.

TYPES : BEGIN OF TY_LFBK,


LIFNR TYPE LFBK-LIFNR,
BANKS TYPE LFBK-BANKS,
BANKL TYPE LFBK-BANKL,
BANKN TYPE LFBK-BANKN,
END OF TY_LFBK.

DATA : WA_LFBK TYPE TY_LFBK,


IT_LFBK TYPE TABLE OF TY_LFBK.

SELECT LIFNR BANKS BANKL BANKN FROM LFBK INTO TABLE IT_LFBK WHERE LIFNR IN S_LIFNR.

TYPES : BEGIN OF DFKKBPTAXNUM,


PARTNER TYPE DFKKBPTAXNUM-PARTNER,
TAXNUM TYPE DFKKBPTAXNUM-TAXNUM,
END OF DFKKBPTAXNUM.

DATA : WA_DFKKBPTAXNUM TYPE DFKKBPTAXNUM,


IT_DFKKBPTAXNUM TYPE TABLE OF DFKKBPTAXNUM.

SELECT PARTNER TAXNUM FROM DFKKBPTAXNUM INTO TABLE IT_DFKKBPTAXNUM WHERE PARTNER
IN S_LIFNR.

TYPES : BEGIN OF TY_SKAT,


SPRAS TYPE SKAT-SPRAS,
KTOPL TYPE SKAT-KTOPL,
TXT20 TYPE SKAT-TXT20,
SAKNR TYPE SKAT-SAKNR,
END OF TY_SKAT.

DATA : WA_SKAT TYPE TY_SKAT,


IT_SKAT TYPE TABLE OF TY_SKAT.

SELECT SPRAS KTOPL TXT20 FROM SKAT INTO TABLE IT_SKAT WHERE SPRAS IN S_SPRAS AND
KTOPL IN S_KTOPL AND TXT20 IN S_KTOKK.

TYPES : BEGIN OF TY_FINAL,


BUKRS TYPE LFB1-BUKRS,
LIFNR TYPE LFB1-LIFNR,
LOEVM TYPE LFB1-LOEVM,
AKONT TYPE LFB1-AKONT,
ZTERM TYPE LFB1-ZTERM,
MINDK TYPE LFB1-MINDK,
LAND1 TYPE LFA1-LAND1,
NAME1 TYPE LFA1-NAME1,
ORT01 TYPE LFA1-ORT01,
ORT02 TYPE LFA1-ORT02,
PSTLZ TYPE LFA1-PSTLZ,
REGIO TYPE LFA1-REGIO,
STRAS TYPE LFA1-STRAS,
ADRNR TYPE LFA1-ADRNR,
ERDAT TYPE LFA1-ERDAT,
ERNAM TYPE LFA1-ERNAM,
KTOKK TYPE LFA1-KTOKK,
SPERR TYPE LFA1-SPERR,
SPERM TYPE LFA1-SPERM,
TELF1 TYPE LFA1-TELF1,
TELF2 TYPE LFA1-TELF2,
J_1IPANNO TYPE LFA1-J_1IPANNO,
AEDAT TYPE LFA1-AEDAT,
USNAM TYPE LFA1-USNAM,
BANKS TYPE LFBK-BANKS,
BANKL TYPE LFBK-BANKL,
BANKN TYPE LFBK-BANKN,
EKORG TYPE LFM1-EKORG,
SPRAS TYPE SKAT-SPRAS,
KTOPL TYPE SKAT-KTOPL,
TAXNUM TYPE DFKKBPTAXNUM-TAXNUM,
END OF TY_FINAL.

DATA : WA_FINAL TYPE TY_FINAL,


IT_FINAL TYPE TABLE OF TY_FINAL.

LOOP AT IT_LFB1 INTO WA_LFB1.


WA_FINAL-LIFNR = WA_LFB1-LIFNR.
WA_FINAL-BUKRS = WA_LFB1-BUKRS.
WA_FINAL-SPERR = WA_LFB1-SPERR.
WA_FINAL-LOEVM = WA_LFB1-LOEVM.
WA_FINAL-AKONT = WA_LFB1-AKONT.
WA_FINAL-ZTERM = WA_LFB1-ZTERM.
WA_FINAL-MINDK = WA_LFB1-MINDK.

READ TABLE IT_LFA1 INTO WA_LFA1 WITH KEY LIFNR = WA_LFB1-LIFNR.


WA_FINAL-LAND1 = WA_LFA1-LAND1.
WA_FINAL-NAME1 = WA_LFA1-NAME1.
WA_FINAL-ORT01 = WA_LFA1-ORT01.
WA_FINAL-ORT02 = WA_LFA1-ORT02.
WA_FINAL-PSTLZ = WA_LFA1-PSTLZ.
WA_FINAL-REGIO = WA_LFA1-REGIO.
WA_FINAL-STRAS = WA_LFA1-STRAS.
WA_FINAL-ADRNR = WA_LFA1-ADRNR.
WA_FINAL-ERDAT = WA_LFA1-ERDAT.
WA_FINAL-ERNAM = WA_LFA1-ERNAM.
WA_FINAL-KTOKK = WA_LFA1-KTOKK.
WA_FINAL-SPERR = WA_LFA1-SPERR.
WA_FINAL-SPERM = WA_LFA1-SPERM.
WA_FINAL-TELF1 = WA_LFA1-TELF1.
WA_FINAL-TELF2 = WA_LFA1-TELF2.
WA_FINAL-J_1IPANNO = WA_LFA1-J_1IPANNO.
WA_FINAL-USNAM = WA_FINAL-USNAM.

READ TABLE IT_LFM1 INTO WA_LFM1 WITH KEY LIFNR = WA_LFA1-LIFNR.


WA_FINAL-EKORG = WA_LFM1-EKORG.

READ TABLE IT_LFBK INTO WA_LFBK WITH KEY LIFNR = WA_LFA1-LIFNR.


WA_FINAL-BANKS = WA_LFBK-BANKS.
WA_FINAL-BANKL = WA_LFBK-BANKL.
WA_FINAL-BANKN = WA_LFBK-BANKN.

READ TABLE IT_DFKKBPTAXNUM INTO WA_DFKKBPTAXNUM WITH KEY PARTNER =


WA_DFKKBPTAXNUM-PARTNER.
WA_FINAL-TAXNUM = WA_DFKKBPTAXNUM-TAXNUM.

READ TABLE IT_SKAT INTO WA_SKAT WITH KEY KTOPL = WA_LFB1-AKONT.


WA_FINAL-SPRAS = WA_SKAT-SPRAS.
WA_FINAL-KTOPL = WA_SKAT-KTOPL.

APPEND WA_FINAL TO IT_FINAL.


CLEAR : WA_FINAL, WA_LFA1, WA_LFB1, WA_LFM1, WA_SKAT.

ENDLOOP.

DATA : IT_FCAT TYPE SLIS_T_FIELDCAT_ALV,


WA_FCAT LIKE LINE OF IT_FCAT.

WA_FCAT-FIELDNAME = 'LIFNR'.
WA_FCAT-COL_POS = '1'.
WA_FCAT-SELTEXT_M = 'Vendor'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'BUKRS'.
WA_FCAT-COL_POS = '2'.
WA_FCAT-SELTEXT_M = 'Company'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'NAME1'.
WA_FCAT-COL_POS = '3'.
WA_FCAT-SELTEXT_M = 'Vendor Name'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'STRAS'.
WA_FCAT-COL_POS = '4'.
WA_FCAT-SELTEXT_M = 'Address'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'ORT01'.
WA_FCAT-COL_POS = '5'.
WA_FCAT-SELTEXT_M = 'City'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'ORT02'.
WA_FCAT-COL_POS = '6'.
WA_FCAT-SELTEXT_M = 'Dist'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'PSTLZ'.
WA_FCAT-COL_POS = '7'.
WA_FCAT-SELTEXT_M = 'Pin Code'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'LAND1'.
WA_FCAT-COL_POS = '8'.
WA_FCAT-SELTEXT_M = 'Country Key'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'REGIO'.
WA_FCAT-COL_POS = '9'.
WA_FCAT-SELTEXT_M = 'Region'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'TELF1'.
WA_FCAT-COL_POS = '10'.
WA_FCAT-SELTEXT_M = 'PHONE1'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'TELF2'.
WA_FCAT-COL_POS = '11'.
WA_FCAT-SELTEXT_M = 'PHONE2'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'AKONT'.
WA_FCAT-COL_POS = '12'.
WA_FCAT-SELTEXT_M = 'Recon A/C'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'ZTERM'.
WA_FCAT-COL_POS = '13'.
WA_FCAT-SELTEXT_M = 'Payment Terms'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'KTOKK'.
WA_FCAT-COL_POS = '14'.
WA_FCAT-SELTEXT_M = 'A/C Group'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'EKORG'.
WA_FCAT-COL_POS = '15'.
WA_FCAT-SELTEXT_M = 'PUR.ORG'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'BANKS'.
WA_FCAT-COL_POS = '16'.
WA_FCAT-SELTEXT_M = 'Bank Key'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'BANKL'.
WA_FCAT-COL_POS = '17'.
WA_FCAT-SELTEXT_M = 'IFSC Code'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'BANKN'.
WA_FCAT-COL_POS = '18'.
WA_FCAT-SELTEXT_M = 'Bank A/C No'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'TAXNUM'.
WA_FCAT-COL_POS = '19'.
WA_FCAT-SELTEXT_M = 'Tax Number'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'TXT50'.
WA_FCAT-COL_POS = '20'.
WA_FCAT-SELTEXT_M = 'G/L A/C Text'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'MINDK'.
WA_FCAT-COL_POS = '21'.
WA_FCAT-SELTEXT_M = 'Minority Ind'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'SPERR'.
WA_FCAT-COL_POS = '22'.
WA_FCAT-SELTEXT_M = 'Posting Block'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'SPERM'.
WA_FCAT-COL_POS = '24'.
WA_FCAT-SELTEXT_M = 'Pur.Block'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'LOEVM'.
WA_FCAT-COL_POS = '25'.
WA_FCAT-SELTEXT_M = 'Deletion Ind'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
*WA_FCAT-FIELDNAME = 'ADRNR'.
*WA_FCAT-COL_POS = '14'.
*WA_FCAT-SELTEXT_M = 'ADDRESS'.
*APPEND WA_FCAT TO IT_FCAT.
*CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'ERDAT'.
WA_FCAT-COL_POS = '26'.
WA_FCAT-SELTEXT_M = 'Created Dt'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'ERNAM'.
WA_FCAT-COL_POS = '27'.
WA_FCAT-SELTEXT_M = 'Created By'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'AEDAT'.
WA_FCAT-COL_POS = '28'.
WA_FCAT-SELTEXT_M = 'Last Change'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'USNAM'.
WA_FCAT-COL_POS = '29'.
WA_FCAT-SELTEXT_M = 'Changed By'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

*WA_FCAT-FIELDNAME = 'KUNNR'.
*WA_FCAT-COL_POS = '18'.
*WA_FCAT-SELTEXT_M = 'CUSTOMER NO'.
*APPEND WA_FCAT TO IT_FCAT.
*CLEAR WA_FCAT.

****CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'


**** EXPORTING
**** IT_FIELDCAT = IT_FCAT
**** TABLES
**** T_OUTTAB = IT_FINAL.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'


EXPORTING
I_CALLBACK_PROGRAM = SY-CPROG
IT_FIELDCAT = IT_FCAT
I_DEFAULT = 'X'
I_SAVE = 'A'
TABLES
T_OUTTAB = IT_FINAL
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.

You might also like