ABAP实现本地化的资产负债表和损益表_第1页
ABAP实现本地化的资产负债表和损益表_第2页
ABAP实现本地化的资产负债表和损益表_第3页
ABAP实现本地化的资产负债表和损益表_第4页
ABAP实现本地化的资产负债表和损益表_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ABAP实现本地化的资产负债表和损益表1.设计思路:SAP没有提供标准的符合中国标准的资产负债表和损益表,需要我们在系统中自定义开发,我们在配置报表版本时都指定了一个项目的编号,一个版本下面都有期其统驭的科目范围,我们可以根据这个项目编号找到相应的科目范围,然后根据科目范围获取科目借贷汇总的值。SAP中资产负债表的配置图示:我们传统的资产负债表如下格式:我们可以在程序中用项目编号找到其下面的科目范围,然后取科目汇总值,因为资产负债表是固定的,所以我们要建立一个CBO表来存放各个具体的项目和在SAP中对应的项目编号。最后要强调的是在资产负债表中未分配利润的计算:未分配利润的期末余额=年初结转额(

2、留存收益的上年余额)+今年截至到本月的盈利额(利润表中有体现)利润表的思路和资产负债表是一样的。具体的代码实现:*&*&Company Code:N207*& module:FI*& create by:rrzhang*& create date:2011.12.28*&*& title:资产负债表,利润表*& Description:资产负债表,利润表报表呈现*&*& Change History*-*C.R No |Date|Developer|Description*-* 2012.01.11|ccyu*-*REPORT zfir00026.INCLUDE zfir00026_top.I

3、NCLUDE zfir00026_cls.INCLUDE zfir00026_f01.INCLUDE zfir00026_o01.INCLUDE zfir00026_i01.INCLUDE .INITIALIZATION.p_y = sy-datum+0(4).p_m = sy-datum+4(2).AT SELECTION-SCREEN OUTPUT.PERFORM setdis USING p_rpv.IF c IS INITIAL.PERFORM setlist.gv_name = 爱思开实业(上海)商贸有限公司合并财务报表版本.c = X.gv_rp = 资产负债表.ELSE.PERF

4、ORM setpcg USING p_rpv.CASE p_rpv.WHEN 2070.gv_name = 爱思开实业(上海)商贸有限公司合并财务报表版本.WHEN 2071.gv_name = 爱思开实业(上海)商贸有限公总部财务报表版本.WHEN 2072.gv_name = 爱思开实业(上海)商贸有限公司直营店财务报表版本.WHEN 2073.gv_name = ”.ENDCASE.IF p_rp = BS.gv_rp = 资产负债表.ELSE.gv_rp = 利润表.ENDIF.ENDIF.START-OF-SELECTION.PERFORM synchrodata.PERFORM g

5、et_data1.*&*& Include ZFIR00026_TOP*&*Data definitionTYPE-POOLS vrm.TABLES:faglflexa.“同步数据用的凭证抬头表DATA:BEGIN OF gt_bkpfsyn OCCURS 0,gjahr LIKE bkpf-gjahr,bukrs LIKE bkpf-bukrs,belnr LIKE bkpf-belnr,END OF gt_bkpfsyn.DATA ly(4) TYPE n.“同步数据用的凭证行项目表(bseg)DATA:BEGIN OF gt_bsegsyn OCCURS 0,gjahr LIKE bse

6、g-gjahr,bukrs LIKE bseg-bukrs,belnr LIKE bseg-belnr,prctr LIKE bseg-prctr,pprct LIKE bseg-pprct,buzei LIKE bseg-buzei,END OF gt_bsegsyn.DATA:BEGIN OF gt_fagasyn OCCURS 0.INCLUDE STRUCTURE faglflexa.DATA:END OF gt_fagasyn.TYPES: ch(3) TYPE c,cf(4) TYPE c,cgcp(12) TYPE c,ok_code LIKE sy-ucomm.DATA:c,d

7、,gv_bs TYPE ukurs_curr VALUE 1,”倍数gv_iden(2).“要显示的资产负债表DATA:BEGIN OF gt_alv_bs0 OCCURS 0,lct1 TYPE int1,item1 TYPE zitem,yamt1 TYPE hslvt12,ysamt1 TYPE hslvt12,lct2 TYPE int1,item2 TYPE zitem,yamt2 TYPE hslvt12,ysamt2 TYPE hslvt12,waers LIKE t001-waers,END OF gt_alv_bs0.DATA:BEGIN OF gt_bs OCCURS 0,

8、ukurs TYPE ukurs_curr,gdatu TYPE gdatu_inv,END OF gt_bs.DATA:gv_mf(5).”The month field*The report version account information.“要显示的利润表DATA:BEGIN OF gt_alv_is0 OCCURS 0,lct TYPE int1,item TYPE zitem,yamt LIKE faglflext-hslvt,”本年累计数mamt LIKE faglflext-hslvt,”本月累计数waers LIKE t001-waers,END OF gt_alv_is

9、0.“下载数据的内表DATA:BEGIN OF gt_alv_is01 OCCURS 0,lct TYPE int1,item TYPE zitem,yamt LIKE faglflext-hslvt,”本年累计数mamt LIKE faglflext-hslvt,”本月累计数END OF gt_alv_is01.*利润表下钻数据内表* 2012.01.16 CCYU STARTDATA:BEGIN OF gt_skat OCCURS 0,saknr LIKE skat-saknr,txt50 LIKE skat-txt50,END OF gt_skat.* 2012.01.16 CCYU S

10、TARTtxt50 LIKE skat-txt50,* 2012.01.16 CCYU STARTtxt50 LIKE skat-txt50,* 2012.01.16 CCYU STARTtxt50 LIKE skat-txt50,* 2012.01.16 CCYU STARTtxt50 LIKE skat-txt50,* 2012.01.16 CCYU STARTtxt50 LIKE skat-txt50,* 2012.01.17 CCYU STARTDATA:BEGIN OF gt_head1 OCCURS 0,t1(6),t2(20),t3(20),t4(20),t5(6),t6(20)

11、,t7(20),t8(20),END OF gt_head1.DATA:BEGIN OF gt_head2 OCCURS 0,t1(6),t2(20),t3(20),t4(20),END OF gt_head2.DATA:BEGIN OF gt_alv_bs01 OCCURS 0,lct1 TYPE int1,item1 TYPE zitem,yamt1 TYPE hslvt12,ysamt1 TYPE hslvt12,lct2 TYPE int1,item2 TYPE zitem,yamt2 TYPE hslvt12,ysamt2 TYPE hslvt12,END OF gt_alv_bs0

12、1.* 2012.01.11 ccyu STARTPARAMETERS p_m(3) TYPE n AS LISTBOX VISIBLE LENGTH 4 OBLIGATORY.* p1 text* 2012.01.11 CCYU SRARTCLEAR itab.CLEAR line.line-key = 01.line-text = 01.APPEND line TO itab.line-key = 02.line-text = 02.APPEND line TO itab.line-key = 03.line-text = 03.APPEND line TO itab.line-key =

13、 04.line-text = 04.APPEND line TO itab.line-key = 05.line-text = 05.APPEND line TO itab.line-key = 06.line-text = 06.APPEND line TO itab.line-key = 07.line-text = 07.APPEND line TO itab.line-key = 08.line-text = 08.APPEND line TO itab.line-key = 09.line-text = 09.APPEND line TO itab.line-key = 10.li

14、ne-text = 10.APPEND line TO itab.line-key = 11.line-text = 11.APPEND line TO itab.line-key = 12.line-text = 12.APPEND line TO itab.CALL FUNCTION VRM_SET_VALUESEXPORTINGid = P_Mvalues = itab.” IF P_PCG IS INITIAL.” CLEAR ITAB.” CALL FUNCTION VRM_SET_VALUES” EXPORTING” ID = P_PC” VALUES = ITAB.” ELSE.

15、PERFORM setpcg USING p_rpv.” ENDIF.* P_P_RPV text*-*FORM setdis USING p.LOOP AT SCREEN.IF p = 2070.IF screen-group1 = PC.screen-input = 0.ENDIF.ENDIF.MODIFY SCREEN.ENDLOOP.ENDFORM. ” SETDIS*&*& Form GET_DATA*&* text*-* p1 text* p1 text* p2 text*-*FORM getrv .CLEAR gt_fagl_011zc.SELECT versnergslvonk

16、tbisktFROM fagl_011zc INTO CORRESPONDING FIELDS OF TABLE gt_fagl_011zcWHERE versn = p_rpv.IF gt_fagl_011zc IS NOT INITIAL.SELECT DISTINCT ergsltxt45INTO CORRESPONDING FIELDS OF TABLE gt_fagl_011qtFROM fagl_011qt FOR ALL ENTRIES IN gt_fagl_011zcWHERE versn = p_rpv AND ergsl = gt_fagl_011zc-ergsl.IF g

17、t_fagl_011qt IS NOT INITIAL.SORT gt_fagl_011qt BY ergsl.LOOP AT gt_fagl_011zc.READ TABLE gt_fagl_011qt WITH KEY ergsl = gt_fagl_011zc-ergsl BINARY SEARCH.IF sy-subrc = 0.gt_fagl_011zc-txt45 = gt_fagl_011qt-txt45.ENDIF.MODIFY gt_fagl_011zc.ENDLOOP.ENDIF.IF p_curr = KRW.PERFORM getbs.ENDIF.ly = p_y -

18、1.”取去年CALL FUNCTION CONVERSION_EXIT_ALPHA_INPUTEXPORTINGinput = p_mIMPORTINGoutput = p_m.IF p_rp = BS.CLEAR gt_alv_bs0.PERFORM setbsitem.SORT gt_alv_bs0 BY lct1 ASCENDING.DATA:lv_pro(10) TYPE p DECIMALS 2 VALUE 3,lv_i(10) TYPE p DECIMALS 2 VALUE 3.“为核算固定资产等项目设置的临时变量DATA:a1601_1 TYPE hslvt12,a1601_2

19、TYPE hslvt12,a1602_1 TYPE hslvt12,a1602_2 TYPE hslvt12,a1603_1 TYPE hslvt12,a1603_2 TYPE hslvt12,a4001_1 TYPE hslvt12,a4001_2 TYPE hslvt12,a3103_1 TYPE hslvt12,a3103_2 TYPE hslvt12,a4104_1 TYPE hslvt12,a4104_2 TYPE hslvt12,a4102_1 TYPE hslvt12,a4102_2 TYPE hslvt12,a13yamt1 TYPE hslvt12,a13ysamt1 TYP

20、E hslvt12,a14yamt2 TYPE hslvt12,a14ysamt2 TYPE hslvt12,a23yamt2 TYPE hslvt12,a23ysamt2 TYPE hslvt12,a24yamt2 TYPE hslvt12,a24ysamt2 TYPE hslvt12,a31yamt2 TYPE hslvt12,a31ysamt2 TYPE hslvt12,a32yamt1 TYPE hslvt12,a32ysamt1 TYPE hslvt12,a33yamt1 TYPE hslvt12,a33ysamt1 TYPE hslvt12,a33yamt2 TYPE hslvt1

21、2,a33ysamt2 TYPE hslvt12,a30yamt2 TYPE hslvt12,a30ysamt2 TYPE hslvt12,a26yamt2 TYPE hslvt12,a26ysamt2 TYPE hslvt12,a27yamt2 TYPE hslvt12,a27ysamt2 TYPE hslvt12,a29yamt2 TYPE hslvt12,a29ysamt2 TYPE hslvt12.“构造科目查询范围的查询条件LOOP AT gt_alv_bs0.IF gt_alv_bs0-item1 = 货币资金.PERFORM getbsamt USING:gt_alv_bs0-y

22、amt1 gt_alv_bs0-ysamt1 1000 ly,gt_alv_bs0-yamt2 gt_alv_bs0-ysamt2 2001 ly.ELSEIF gt_alv_bs0-item1 = 交易性金融资产.PERFORM getbsamt USING:gt_alv_bs0-yamt1 gt_alv_bs0-ysamt1 1101 ly,gt_alv_bs0-yamt2 gt_alv_bs0-ysamt2 2010 ly.ELSEIF gt_alv_bs0-item1 = 应收票据.PERFORM getbsamt USING:gt_alv_bs0-yamt1 gt_alv_bs0-ysamt1 1121 ly,gt_alv_bs0-yamt2 gt_alv_bs0-ysamt2 2201 ly.ELSEIF gt_alv_bs0-item1 = 应收账款

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论