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.
|