《资产负债表和损益表开发.docx》由会员分享,可在线阅读,更多相关《资产负债表和损益表开发.docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、资产负债表和损益表,在SAP标准系统中,可以通过事务代码F.01执行;但其结果所取数 据为SAP系统内的数据,需要根据实际情况进行修改和合并,并导出到EXCEL中。在事务代码OB58中,定义会计报表项目。此会计报表项目定义直接影响科目在报表上列式 的位置步骤:1 .从标准程序RFBILAOO拷贝一个ZRFBILAOO程序,为ZRFBILAOO指定事务代码:ZF01.2 .在ZRFBILAOO主程序中搜索Submit: Submit将内表scjdata中的数据提交3 . SCR_data 的结构:BUKRS ERGSL BSUMVSUM公司代码财务码当前值比较值需要根据财务ob58配的财务版本修
2、改SCR_DATA的数据4 .在Layout Set中,ERP+财务码 取出的数是当前数:ECP+财务码取出的数是比较数5 .针对浪潮需要做如下修改:源程序部分:在submit之前,添加以下程序段:* added by c0125* 2003. 11. 19* 定义导出Excel的格式DATA: BEGIN OF itab_sci OCCURS 0,bukrsLIKEskbl-bukrs,gsberLIKEskcla-gsber,ergslLIKErfOllq-ergsl,typ(l)TYPEc,bsumLIKEbseg-dmbtr,vsumLIKEbseg-dmbtr,saldoLIKEam
3、ount,z/Absolute Abweichungrelab(16)TYPEp DECIMALS 1,Relative Abweichungstar (5)TYPEc.waersLIKEtOOl-waers,END OF itab_scr.* 根据财务要求修改scr_data,包括些正负号和合并的要求 LOOP AT scr_data.if SCR_DATA-ERGSL = 23 or SCR_DATA-ERGSL = 26 or* SCR_DATA-ERGSL = 33 orSCR_DATA-ERGSL = 47 orSCR_DATA-ERGSL = 112 orSCR_DATA-ERGS
4、L(1) = 6 orSCR_DATA-ERGSL = 70 orSCR_DATA-ERGSL = 73 orSCR_DATA-ERGSL = 74 orSCR_DATA-ERGSL = 114 orSCR_DATA-ERGSL = 71 orSCR_DATA-ERGSL=,72orSCR_DATA-ERGSL=58orSCR_DATA-ERGSL=75orSCR_DATA-ERGSL=76orSCR_DATA-ERGSL=77orSCR_DATA-ERGSL=115orSCR_DATA-ERGSL=116orSCR_DATA-ERGSL=78orSCR_DATA-ERGSL=59orSCR_
5、DATA-ERGSL=79orSCR_DATA-ERGSL=56orSCR_DATA-ERGSL=120orSCR_DATA-ERGSL=80orSCR_DATA-ERGSL=118orSCR_DATA-ERGSL=117orSCR_DATA-ERGSL=81orSCR_DATA-ERGSL=82orSCR_DATA-ERGSL=83orSCR_DATA-ERGSL=84orSCR_DATA-ERGSL=96orSCR_DATA-ERGSL=57orSCR_DATA-ERGSL=104orSCR_DATA-ERGSL=90orSCR_DATA-ERGSL=91orSCR_DATA-ERGSL=
6、93orSCR_DATA-ERGSL=99orSCR_DATA-ERGSL=88orSCR_DATA-ERGSL=86orSCR DATA-ERGSL=5SCR_DATA-vsum * ,-,.SCR DATA-bsum * -1.SCR_DATA-vsum = SCR_DATA-bsum = modify SCR_DATA. endif.MOVE-CORRESPONDING scr data TO itab scr.itab_scr-bsum = itab_scr_vsum = APPEND itab_scr. ENDLOOP.itab_scr-bsum / 100.itab_scr-vsu
7、m / 100. 导出itab_scrPERFORM frm_process_scr_data.REFRESH itab_scr.根据layout的名称选择是资产负债表逻辑,还是损益表逻辑。FORM frm_process_scr_data.IF scr_form = Z_BILA_BACN,.PERFORM frm_banlance_sheet.ELSE.IF scr_form = Z_BILA_01.PERFORM frm_profit.ENDIF.ENDIF.ENDFORM.Afrm_process_scr_data调整itab_excel的结构,并导出FORM frm_ban1ance
8、_sheet.REFRESH itab excel.,数数,,.数数 目次初末目次初末 项行年期项行年期1tab_excel-col11 = itab_excel-coll2 = itab_excel-col13 - itab_excel-coll4 = itab_excel-col21 = itab_excel-col22 = itab_excel-col23 = itab_excel-col24 = APPEND itab excel.PERFORM frm_fill_excel USING:流动资产:流动负债:货币资金T 12短期借款51 61,短期投资2 22应付票据52 62,减:短
9、期投资跌价准备3 23应付帐款53 63,短期投资净额4 13预收帐款54 64,应收票据5 14代销商品款55 65,应收股利6 15应付工资56 66,应收利息7 16应付福利费57 67,应收帐款8 24应交税金58 68,其他应收款9 25应付股利59 69,减:坏帐准备10 26其他应交款60 70,应收帐款净额11 17其他应付款61 73,预付帐款12 19预提费用62 74,应收补贴款应收出口退税71,存货15 1813 20 预计负债63 114,其他流动负债65 72,14 21一年内到期的长期负债64其中:原材料16 27产成品17 28在产品18 110减:存货跌价准备
10、19 29 存货净额20 36,待摊费用21 37待处理流动资产净损失22 38一年内到期的长期债券投资23 500342,其他流动资产24 40,流动资产合计25 7流动负债合计66 58,长期投资:长期负债:长期股权投资26 30 长期债券投资27 31 长期投资合计28 32长期借款67 75, 应付债券68 76, 长期应付款69 77,减:长期投资减值准备长期投资净额30 3429 33专项应付款70 115, 递延收益71 116,其中:合并价差31 35其他长期负债72 78, 固定资产:长期负债合计73 59, 固定资产原价32 46递延税项:,,减:累计折旧33 47递延税款
11、贷项74 79,固定资产净值34 113,减:固定资产减值准备35 112固定资产净额36 41工程物资37 42在建工程38 43固定资产清理39 44,待处理固定资产净损失40 45负债合计75 56,固定资产合计41 9少数股东权益76 120,无形资产与其他资产:股东权益:,无形资产42 48股本77 80,其中:土地使用权43 52减:已规还投资78 118,,开办费44 49股本净额79 117,长期待摊费用45 119资本公积80 81,其中:固定资产改良支出46 54盈余公积81 82,其他长期资产47 51其中:公益金82 83,无形资产与其他资产合计48 10未分配利润83
12、 84,递延税项递延税款借项49 55股东权益合计84 57,资产总计50 6负债及所有者权益合计85 5.导出excelCALL FUNCTION D0WNL0AD,EXPORTINGfiletype=DATfilename=C:ZCFZB. DATTABLESdata_tab=itab_excelEXCEPTIONSinvalid_filesize=1invalid_table_width=2invalid_type二3no_batch=4unknown_error=5gui_refuse_filetransfer=6customer_error=7OTHERS=8.6 .导出的文件是以T
13、ab键分割的,为了方便财务使用,可以通过Excel宏编程,将数据显 示为默认格式。程序如下:Sub auto_open(),auto_open()代表启动excel自动执行如果不需要自动执行,则可以随便起名字Application. WindowState = xlMinimizedSet currentbook = Application.ActiveWorkbook old_page_name = currentbook.Name Sheets(sheet ).Visible = True ,Sheets(,sheetr,).Unprotect aaaM 给模板加密,防止其他用户进行修改W
14、orkbooks.Open Filename:=c:zcfzb.da打开头文件,头文件里面一般是凭证的抬头信息 Windows(old_page_name). Activate将zcfzb.dat的相应字段复制到模板中For i = 5 To 58j = i-2Cells(i, 3) = Val(Workbooks(zcfzb.dat).Sheets(zcfzbn).Cells(j, 3)Cells(i, 4) = Val(Workbooks(zcfzb.dat).Sheets(zcfzb).Cells(j, 4)Cells(i, 7) = Val(Workbooks(,zcfzb.dat,)
15、.Sheets(,zcfzb,).Cells(j, 7)Cells(i, 8) = Val(Workbooks(,zcfzb.dat,).Sheets(,zcfzbn).Cells(j, 8) Next i关掉头文件表、行项目表和初始模板表,剩下的就是所有的凭证表Windows(Hzcfzb.datu).Close savechanges:=FalseWindows(old_page_name).Close savechanges:=False预览或者不预览直接打印ActiveWorkbook.Printout Copies:=1ActiveWorkbook.PrintOut Copies:=l, Preview:=True, Collate:=TrueSheets(飞heet ).Visible = xlVeryHidden退出Application.QuitEnd Sub7 .报表平衡判断:资产总额=负债总额+所有者权益总额资产负债表中本年利润应与损益表中本年的累计利润金额一致
限制150内