|
This program download a listing of the GL Accounts. Run the program for every company code. It will check the subsequent runs to see if there are any additional accounts not on the spreadsheet yet.
REPORT ZFGLDNLD. *********************************************************************** ** This program download a listing of the GL Accounts. Run the program ** for every company code. It will check the subsequent runs to see if ** there are any additional accounts not on the spreadsheet yet. **********************************************************************
TABLES: T001, "Company code SKA1, "GL Account header info SKB1, "GL Account item info SKAT. "GL Account texts
DATA: BEGIN OF TAB OCCURS 2000, SAKNR LIKE SKA1-SAKNR, "GL Account number XBILK LIKE SKA1-XBILK, "Ind for B/S account GVTYP LIKE SKA1-GVTYP, "Ind for P&L account KTOKS LIKE SKA1-KTOKS, "Account group * xspeb like ska1-xspeb, "Block indicator TXT20 LIKE SKAT-TXT20, "Short text TXT50 LIKE SKAT-TXT50, "Long text FSTAG LIKE SKB1-FSTAG, "Field status group MITKZ LIKE SKB1-MITKZ, "Recon.indicator MWSKZ LIKE SKB1-MWSKZ, "Tax category WAERS LIKE SKB1-WAERS, "Currency XINTB LIKE SKB1-XINTB, "Aut.posted XKRES LIKE SKB1-XKRES, "Line item display XOPVW LIKE SKB1-XOPVW, "Open item managed ZUAWA LIKE SKB1-ZUAWA, "Sort key FIPOS LIKE SKB1-FIPOS, "Commitment item XMWNO LIKE SKB1-XMWNO, "Tax not required XSALH LIKE SKB1-XSALH, "Only managed in local bal. CODE LIKE SKB1-BUKRS, "Company code FDLEV LIKE SKB1-FDLEV, "Planning level HBKID LIKE SKB1-HBKID, "House bank HKTID LIKE SKB1-HKTID, "Account ID END OF TAB.
DATA: NUM(10) TYPE C.
PARAMETERS: FILE LIKE RLGRAP-FILENAME, F_TYP LIKE RLGRAP-FILETYPE DEFAULT 'ASC', COA LIKE T004-KTOPL DEFAULT 'CAEK', CC LIKE T001-BUKRS DEFAULT '1000', CLNT LIKE T000-MANDT DEFAULT '500', IND(1) TYPE C DEFAULT 'N'.
** If not the first run, upload the GL account file to compare with the ** company code executed currently. IF IND = 'N'. CALL FUNCTION 'UPLOAD' EXPORTING FILENAME = FILE FILETYPE = F_TYP TABLES DATA_TAB = TAB. ENDIF.
WRITE: / 'ADDITIONAL ACCOUNTS FOR COMPANY',CC. WRITE: / '____________________________________'. SKIP.
** Check GL Account. IF not on the spreadsheet, append internal table ** TAB. SKA1 = SPACE. SELECT * FROM SKA1 WHERE KTOPL = COA. IF SKA1-XSPEB EQ SPACE. NUM = SKA1-SAKNR. TAB-SAKNR = NUM. TAB-XBILK = SKA1-XBILK. TAB-GVTYP = SKA1-GVTYP. TAB-KTOKS = SKA1-KTOKS. SKB1 = SPACE. SELECT SINGLE * FROM SKB1 WHERE BUKRS = CC AND SAKNR = SKA1-SAKNR. IF SY-SUBRC = 0. TAB-FSTAG = SKB1-FSTAG. TAB-MITKZ = SKB1-MITKZ. TAB-MWSKZ = SKB1-MWSKZ. TAB-WAERS = SKB1-WAERS. TAB-XINTB = SKB1-XINTB. TAB-XKRES = SKB1-XKRES. TAB-XOPVW = SKB1-XOPVW. TAB-ZUAWA = SKB1-ZUAWA. TAB-FIPOS = SKB1-FIPOS. TAB-XMWNO = SKB1-XMWNO. TAB-XSALH = SKB1-XSALH. TAB-FDLEV = SKB1-FDLEV. TAB-HBKID = SKB1-HBKID. TAB-HKTID = SKB1-HKTID. SKAT = SPACE. SELECT SINGLE * FROM SKAT WHERE SPRAS = 'E' AND KTOPL = COA AND SAKNR = SKA1-SAKNR. IF SY-SUBRC = 0. TAB-TXT20 = SKAT-TXT20. TAB-TXT50 = SKAT-TXT50. ENDIF. READ TABLE TAB WITH KEY SKA1-SAKNR. IF SY-SUBRC NE 0. APPEND TAB. WRITE: / TAB-SAKNR, TAB-TXT20. ENDIF. ENDIF. ENDIF. ENDSELECT.
** Download new list of GL Acocunts CALL FUNCTION 'DOWNLOAD' EXPORTING FILENAME = FILE FILETYPE = F_TYP TABLES DATA_TAB = TAB. |