sap a4000和三星a5000手机怎么样的工时如何确定

在SAP中用承诺项目出现金流量表(报表开发源代码)
用承诺项目出现金流量表
转自:.cn/sapfangzhang/archives/100.html
在SAP中用承诺项目出现金流量表(报表开发源代码)
可能使用到的外部数据 或 SAP数据表数据的格式、字段等:
财务管理范围主记录表
承诺项目主记录表
现金预算管理行项目表
供应商主记录表
客户主记录表
总帐未清项表
公司代码主记录表
usr21&& 用户主记录表
用户地址表
财务凭证抬头表
财务凭证行项目表
总帐科目期间余额表
直接法通过分析凭证的承诺项目来取数,SAP为该项功能定义了一个逻辑数据库C1F. 本程序
开始部分的逻辑数据库取数部分是SAP的标准程序,其功能是将与现金流量相关的数据装入内部表
G_T_FMMP, 这部分程序禁止修改。
1、装入金流量表定义参数(FORM fill_item_direct)
该子程序将的现金流量表项和其对应的承诺项目装入内部表INT_CASHFLOW.
2、装入与现金流量相关的数据
这部分是逻辑数据库装入,属于SAP标准程序,数据关系比较复杂,建议不要做任何改动。
3、计算现金流量
计算的基本思路是对表G_T_FMMP进行循环,查找其中每条记录的承诺项目属于INT_CASHFLOW的
表项后,把其金额累计到相应表项。
REPORT zcmrp001& NO STANDARD PAGE HEADING
LINE-SIZE 220.
TABLES: fkrs, fpos, fmmp, lfa1, kna1 ,bsis,
t001, usr21, adrp, bkpf, bseg, glt0.
DATA: BEGIN OF g_t_fmmp OCCURS 300,
fikrs&&& LIKE
fmmp-fikrs,
bukrs&&& LIKE
fmmp-bukrs,
fipos&&& LIKE
fmmp-fipos,
wrttp&&& LIKE
fmmp-wrttp,
gjahr&&& LIKE
fmmp-gjahr,
perio&&& LIKE
fmmp-perio,
zhldt&&& LIKE
fmmp-zhldt,
budat&&& LIKE
fmmp-budat,
gsber&&& LIKE
fmmp-gsber,
vo_saknr LIKE fmmp-vo_saknr,
lifnr&&& LIKE
fmmp-lifnr,
kunnr&&& LIKE
fmmp-kunnr,
fwaer&&& LIKE
fmmp-fwaer,
fkbtr&&& LIKE
fmsu-btr001,
zbelnr&& LIKE cooi-refbn,
zbuzei&& LIKE cooi-rfpos,
vo_bukrs LIKE fmmp-vo_bukrs,
vo_gjahr LIKE fmmp-vo_gjahr,
fitxt&&& LIKE
fkrs-fitxt,
fname&&& LIKE
ffnd-fname,
cname&&& LIKE
fctr-cname,
pname&&& LIKE
fpos-pname,
wtext&&& LIKE
fmmp-wtext,
END OF g_t_fmmp.
DATA: BEGIN OF g_t_fkrs OCCURS 20,
fikrs LIKE fkrs-fikrs,
fitxt LIKE fkrs-fitxt,
END OF g_t_fkrs.
DATA: BEGIN OF g_t_fpos OCCURS 200,
fipos LIKE fpos-fipos,
pname LIKE fpos-pname,
END OF g_t_fpos.
DATA: BEGIN OF g_t_lfa1 OCCURS 200,
lifnr LIKE lfa1-lifnr,
sortl LIKE lfa1-sortl,
END OF g_t_lfa1.
DATA: BEGIN OF g_t_kna1 OCCURS 200,
kunnr LIKE kna1-kunnr,
sortl LIKE kna1-sortl,
END OF g_t_kna1.
RANGES: r_kunnr FOR kna1-kunnr,
r_lifnr FOR lfa1-lifnr,
r_fipos FOR fmmp-fipos.
DATA: BEGIN OF int_cashflow OCCURS 100,
desc(66)&&&&
r_fipos(66)& TYPE c,
com_fkbtr&&&
LIKE fmmp-fkbtr,
fi_fkbtr&&&&
LIKE fmmp-fkbtr,
fi_fwaer&&&&
LIKE fmmp-fwaer,
END OF int_cashflow.
DATA: BEGIN OF g_t_t001 OCCURS 300,
bukrs LIKE t001-bukrs,
butxt LIKE t001-butxt,
END OF g_t_t001.
pos&&&&&&&&&
TYPE i VALUE 0,
num_of_bukrs TYPE i VALUE 0.
cashflow_detail.
min_budat&&&&&
LIKE fmmp-budat,
max_budat&&&&&
LIKE fmmp-budat,
z_min_budat&&&
LIKE sy-datum,
z_max_budat&&&
LIKE sy-datum,
z_bukrs&&&&&&&
LIKE fmmp-bukrs,
z_profit&&&&&&
bseg-dmbtr,&&&&
z_bad_debit&&&
bseg-dmbtr,&&&&
“坏帐准备及计提的资产减值准备
z_asset_dep&&&
bseg-dmbtr,&&&&
“固定资产折旧
z_intang_dep&& LIKE
bseg-dmbtr,&&&&
“无形资产摊销
z_longpaid_dep LIKE
bseg-dmbtr,&&&&
“长期待摊费用摊销
z_paid_dec&&&&
bseg-dmbtr,&&&&
“待摊费用减少
z_accrul_inc&& LIKE
bseg-dmbtr,&&&&
“预提费用增加
z_asset_pro&&&
bseg-dmbtr,&&&&
“固定资产,长期资产处置损失
z_asset_scr&&&
bseg-dmbtr,&&&&
“固定资产报废损失
z_fi_expen&&&&
bseg-dmbtr,&&&&
“财务费用
z_invest_loss& LIKE
bseg-dmbtr,&&&&
“投资损失
z_defer_tax&&&
bseg-dmbtr,&&&&
“递延税款贷项
z_stock&&&&&&&
bseg-dmbtr,&&&&
“存货减少
z_ar&&&&&&&&&&
bseg-dmbtr,&&&&
“经营性应收减少
z_ap&&&&&&&&&&
bseg-dmbtr,&&&&
“经营性应付增加
z_other&&&&&&&
bseg-dmbtr,&&&&
z_production&& LIKE
bseg-dmbtr,&&&&
“经营活动产生的现金净额
z_loss&&&&&&&&
bseg-dmbtr,&&&&
“总公司下拨弥补亏损
z_asset_debit& LIKE
bseg-dmbtr,&&&&
“以固定资产偿还债务
z_invest_debit LIKE
bseg-dmbtr,&&&&
“以投资偿还债务
z_asset_invest LIKE
bseg-dmbtr,&&&&
“以固定资产投资
z_stock_debit& LIKE
bseg-dmbtr,&&&&
“以存货偿还债务
z_asset_rented LIKE
bseg-dmbtr,&&&&
“融资租赁固定资产
z_donation&&&&
bseg-dmbtr,&&&&
“接受捐赠非现金资产
z_debit_short& LIKE
bseg-dmbtr,&&&&
“偿还的经营性债务
z_debit_equit& LIKE
bseg-dmbtr,&&&&
“债务转为资本
z_bond_due&&&&
bseg-dmbtr,&&&&
“一年内到期的可转换公司债券
z_money_init&& LIKE
bseg-dmbtr,&&&&
“货币资金期初余额
z_money_end&&&
bseg-dmbtr,&&&&
“货币资金期末余额
z_cashs_init&& LIKE
bseg-dmbtr,&&&&
“现金等价物期初余额
z_cashs_end&&&
bseg-dmbtr,&&&&
“现金等价物期末余额
z_all_money&&&
bseg-dmbtr.&&&&
“货币资金及现金等价物净变动
DATA: BEGIN OF itb0 OCCURS 0,
txt(70) TYPE c,
LIKE bseg-dmbtr,
END OF itb0,
mtxt(70) TYPE c.
**INITIALIZATION.
PERFORM fill_item_direct.
*START-OF-SELECTION.
g_t_fkrs-fikrs = fkrs-fikrs.
g_t_fkrs-fitxt = fkrs-fitxt.
APPEND g_t_fkrs.
g_t_fpos-fipos = fpos-fipos.
g_t_fpos-pname = fpos-pname.
COLLECT g_t_fpos.
MOVE-CORRESPONDING fmmp TO g_t_fmmp.
CASE fmmp-wrttp.
&& WHEN ‘50& OR
‘51&.&&&&&&&&&&&&&&
” purchase order
g_t_fmmp-zbelnr = fmmp-ebeln.
g_t_fmmp-zbuzei = fmmp-ebelp.
‘64&.&&&&&&&&&&&&&&&&&&&&&&
” payment transfer
g_t_fmmp-zbelnr = fmmp-kblnr.
g_t_fmmp-zbuzei = fmmp-kblpos.
‘65&.&&&&&&&&&&&&&&&&&&&&&&
” funds commitments
g_t_fmmp-zbelnr = fmmp-kblnr.
g_t_fmmp-zbuzei = fmmp-kblpos.
OTHERS.&&&&&&&&&&&&&&&&&&&&
” Fi documents
g_t_fmmp-zbelnr = fmmp-vo_belnr.
g_t_fmmp-zbuzei = fmmp-vo_buzei.
APPEND g_t_fmmp.
IF NOT fmmp-kunnr IS INITIAL.
r_kunnr-sign&& = ‘I’.
&& r_kunnr-option = ‘EQ’.
r_kunnr-low&&& =
fmmp-kunnr.
&& COLLECT r_kunnr.
IF NOT fmmp-lifnr IS INITIAL.
r_lifnr-sign&& = ‘I’.
&& r_lifnr-option = ‘EQ’.
&& r_lifnr-low =
fmmp-lifnr.
&& COLLECT r_lifnr.
END-OF-SELECTION.
SORT g_t_fmmp BY fikrs& bukrs&
fipos&& wrttp&
&&&&&&&&&&&&&&&&&
perio& zhldt& zbelnr
&&&&&&&&&&&&&&&&&
zbuzei bukrs& vo_saknr.
RANGES: lr_lifnr FOR lfa1-lifnr,
lr_kunnr FOR kna1-kunnr.
DATA: l_cnt_from& LIKE sy-tabix VALUE 1,
l_cnt_to&&& LIKE
sy-tabix VALUE 50,
l_cnt_lines LIKE sy-tabix.
* “/ Lesen Kreditoren-Texte aus Stammdaten-Tabelle
IF NOT r_lifnr IS INITIAL.
&& LOOP AT r_lifnr WHERE low =
DELETE r_lifnr.
&& ENDLOOP.
&& DESCRIBE TABLE r_lifnr LINES
l_cnt_lines.&&&&&&&&&&&&&&
“&- insert
&& IF l_cnt_lines
50.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
“/ Lieferanten-Kurztexte auf einmal
einlesen&&&&&&&&
“&- insert
SELECT lifnr sortl FROM lfa1
&&&&&&&&&&&&
INTO CORRESPONDING FIELDS OF TABLE g_t_lfa1
&&&&&&&&&&&
WHERE lifnr IN r_lifnr.
ELSE.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
“/ Lieferanten-Kurztexte in Bloecken
einlesen&&&&&&&
“&- insert
DO.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
“/ Bloecke zu je 50 Leferanten
bilden&&&&&&&&&&&&
“&- insert
lr_lifnr.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
LOOP AT r_lifnr FROM l_cnt_from TO
l_cnt_to.&&&&&
“&- insert
lr_lifnr =
r_lifnr.&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
lr_lifnr.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
ENDLOOP.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
IF sy-subrc NE
0.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
EXIT.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
ENDIF.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
l_cnt_from = l_cnt_to&& +
1.&&&&&&&&&&&&&&&&&&&&&
“&- insert
l_cnt_to&& = l_cnt_from +
50.&&&&&&&&&&&&&&&&&&&&
“&- insert
“/ Lieferanten-Kurztexte
lesen&&&&&&&&&&&&&&&&&&&
“&- insert
SELECT lifnr sortl FROM
lfa1&&&&&&&&&&&&&&&&&&&&&
“&- insert
APPENDING CORRESPONDING
FIELDS&&&&&&&&&&&&&&&&
“&- insert
&&&&&&&&&&&&&&&&&&&
g_t_lfa1&&&&&&&&&&&&&&&&&&&
“&- insert
&&&&&&&&&&&&&
WHERE lifnr IN
lr_lifnr.&&&&&&&&&&&&&&&&&&
“&- insert
ENDDO.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
ENDIF.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
* “/ Lesen Debitoren-Texte aus Stammdaten-Tabelle
IF NOT r_kunnr IS INITIAL.
&& LOOP AT r_kunnr WHERE low =
DELETE r_kunnr.
&& ENDLOOP.
&& DESCRIBE TABLE r_kunnr LINES
l_cnt_lines.&&&&&&&&&&&&&&
“&- insert
&& IF l_cnt_lines
50.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
“/ Kunden-Kurztexte auf einmal
einlesen&&&&&&&&&&&&&
“&- insert
SELECT kunnr sortl FROM kna1
&&&&&&&&&&&&
INTO CORRESPONDING FIELDS OF TABLE g_t_kna1
&&&&&&&&&&&
WHERE kunnr IN r_kunnr.
ELSE.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
“/ Kunden-Kurztexte in Bloecken
einlesen&&&&&&&&&&&&
“&- insert
DO.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
“/ Bloecke zu je 50 Kunden
bilden&&&&&&&&&&&&&&&&
“&- insert
lr_kunnr.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
LOOP AT r_kunnr FROM l_cnt_from TO
l_cnt_to.&&&&&
“&- insert
lr_kunnr =
r_kunnr.&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
lr_kunnr.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
ENDLOOP.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
IF sy-subrc NE
0.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
EXIT.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
ENDIF.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
l_cnt_from = l_cnt_to&& +
1.&&&&&&&&&&&&&&&&&&&&&
“&- insert
l_cnt_to&& = l_cnt_from +
50.&&&&&&&&&&&&&&&&&&&&
“&- insert
“/ Kunden-Kurztexte
lesen&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
SELECT kunnr sortl FROM
kna1&&&&&&&&&&&&&&&&&&&&&
“&- insert
APPENDING CORRESPONDING
FIELDS&&&&&&&&&&&&&&&&
“&- insert
&&&&&&&&&&&&&&&&&&&
g_t_kna1&&&&&&&&&&&&&&&&&&&
“&- insert
&&&&&&&&&&&&&
WHERE kunnr IN
lr_kunnr.&&&&&&&&&&&&&&&&&&
“&- insert
ENDDO.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
ENDIF.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
“&- insert
SELECT bukrs butxt FROM t001
INTO CORRESPONDING FIELDS OF TABLE g_t_t001.
DATA: l_sav_wrttp_text(30),
l_sav_fwaer LIKE fmmp-fwaer,
l_sav_butxt LIKE t001-butxt,
l_sav_hide_row_type(4).
num_of_bukrs = 0.
max_budat = 0.
min_budat = ‘& .
LOOP AT g_t_fmmp.
&& IF min_budat &
g_t_fmmp-budat .
min_budat = g_t_fmmp-budat .
&& IF max_budat &
g_t_fmmp-budat .
max_budat = g_t_fmmp-budat .
&& l_sav_fwaer =
g_t_fmmp-fwaer.
&& AT NEW fikrs.
LOOP AT int_cashflow.
CLEAR int_cashflow-fi_fkbtr.
MODIFY TABLE int_cashflow.
CLEAR int_cashflow.
&& AT NEW bukrs.
PERFORM read_bukrs_text USING g_t_fmmp-bukrs
&&&&&&&&&&&&&&&&&&&&&&&&&
CHANGING g_t_t001-butxt.
l_sav_butxt = g_t_t001-butxt.
LOOP AT int_cashflow.
CLEAR int_cashflow-com_fkbtr.
MODIFY TABLE int_cashflow.
CLEAR int_cashflow.
&& LOOP AT int_cashflow.
PERFORM input_range USING int_cashflow-r_fipos.
LOOP AT r_fipos.
IF r_fipos-option = ‘EQ’.
IF r_fipos-low = g_t_fmmp-fipos.
&&&&&&&&&&
int_cashflow-fi_fkbtr& =
int_cashflow-fi_fkbtr
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
+ g_t_fmmp-fkbtr.
&&&&&&&&&&
int_cashflow-com_fkbtr = int_cashflow-com_fkbtr
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
+ g_t_fmmp-fkbtr.
IF r_fipos-option = ‘BT’.
IF g_t_fmmp-fipos &= r_fipos-low AND
&&&&&&&&&&&&&&&&&&
g_t_fmmp-fipos &= r_fipos-high.
&&&&&&&&&&
int_cashflow-fi_fkbtr& =
int_cashflow-fi_fkbtr
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
+ g_t_fmmp-fkbtr.
&&&&&&&&&&
int_cashflow-com_fkbtr = int_cashflow-com_fkbtr
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
+ g_t_fmmp-fkbtr.
MODIFY TABLE int_cashflow.
CLEAR int_cashflow.
CLEAR r_fipos.
REFRESH r_fipos.
&& ENDLOOP .
&& AT END OF bukrs.
PERFORM cal_indirect USING g_t_fmmp-bukrs.
PERFORM output_info USING ‘COM’.
num_of_bukrs = num_of_bukrs + 1.
&& AT END OF fikrs.
IF num_of_bukrs NE 1.
CLEAR l_sav_butxt.
PERFORM output_info USING ‘FI’.
WRITE : / text-103.
TOP-OF-PAGE.
IF NOT ( s_budat-low IS INITIAL ).
&& min_budat = s_budat-low.
IF NOT ( s_budat-high IS INITIAL ).
&& max_budat =
s_budat-high.
WRITE: /100 ‘现 金 流 量 表’.
WRITE: /210 ‘会年企03表’.
*& IF min_budat(6) = max_budat(6).
*&&& WRITE: /104
min_budat(4), ‘年’, min_budat+4(2), ‘月’,
*&&&&&&&&&&&
202 ‘报表编号: 会商03表’.
*&&& WRITE: /097
‘日期:’,
*&&&&&&&&&&&
103 min_budat, 113 ‘-’ , 115 max_budat,
*&&&&&&&&&&&
202 ‘报表编号: 会商03表’.
WRITE: /012 ‘编制单位: ‘, l_sav_butxt,
100& max_budat(4), ‘年’, max_budat+4(2), ‘月’,
&&&&&&&&&&&&&
max_budat+6(2), ‘日’,
212 ‘单位: 元’.
WRITE:& /011 sy-uline.
WRITE : /011
sy-vline,&&&&&
040 ‘&& 项 目’,
sy-vline,&&&&&
‘行次’,&&&&&&&
093 sy-vline,
金 额& ‘,
sy-vline,&&&&&
148 ‘补充资料’,
sy-vline,&&&&&
‘行次’,&&&&&&&
198 sy-vline,
金 额’,&& 220 sy-vline.
WRITE: /011 sy-uline.
***********************************************************************
AT LINE-SELECTION.
CHECK l_sav_hide_row_type = ‘EPOS’.
CALL FUNCTION ‘FM_DOCUMENT_DISPLAY’
&&&&&&&&&&
i_wrttp = g_t_fmmp-wrttp
&&&&&&&&&&
i_belnr = g_t_fmmp-zbelnr
&&&&&&&&&&
i_blpos = g_t_fmmp-zbuzei
&&&&&&&&&&
i_bukrs = g_t_fmmp-vo_bukrs
&&&&&&&&&&
i_gjahr = g_t_fmmp-vo_gjahr.
***********************************************************************
AT USER-COMMAND.
CASE sy-ucomm.
&& WHEN ‘SELE’.
SET PF-STATUS ‘SELE’.
CALL FUNCTION ‘FM_SELECTION_CRITERIA_PRINT’
&&&&&&&&&&&&&&
i_report_name = ‘RFFMIEP5&
EXCEPTIONS
&&&&&&&&&&&&&&
OTHERS&&&&&&&
*&———————————————————————
Form& READ_FIKRS_TEXT
*&———————————————————————
FORM read_fikrs_text USING u_fikrs
&&&&&&&&&&&&&&&&
CHANGING c_fitxt.
g_t_fkrs = space.
g_t_fkrs-fikrs = u_fikrs.
READ TABLE g_t_fkrs.
IF sy-subrc = 0.
&& c_fitxt =
g_t_fkrs-fitxt.
ENDFORM.&&&&&&&&&&&&&&&&&&&
” READ_FIKRS_TEXT
*&———————————————————————
Form& READ_FIPOS_TEXT
*&———————————————————————
FORM read_fipos_text USING u_fipos
&&&&&&&&&&&&&&&&
CHANGING c_pname.
g_t_fpos = space.
g_t_fpos-fipos = u_fipos.
READ TABLE g_t_fpos.
IF sy-subrc = 0.
&& c_pname =
g_t_fpos-pname.
ENDFORM.&&&&&&&&&&&&&&&&&&&
” READ_FIPOS_TEXT
*&———————————————————————
Form& READ_BUKRS_TEXT
*&———————————————————————
FORM read_bukrs_text USING u_bukrs
&&&&&&&&&&&&&&&&
CHANGING c_butxt.
g_t_t001 = space.
g_t_t001-bukrs = u_bukrs.
READ TABLE g_t_t001.
IF sy-subrc = 0.
&& c_butxt =
g_t_t001-butxt.
ENDFORM.&&&&&&&&&&&&&&&&&&&
” READ_FIPOS_TEXT
*&———————————————————————
Form& GET_KUNNR_LIFNR_TEXT
*&———————————————————————
FORM get_kunnr_lifnr_text USING value(u_kunnr)
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
value(u_lifnr)
&&&&&&&&&&&&&&&&&&&&&
CHANGING c_text.
CLEAR c_text.
IF NOT u_kunnr IS INITIAL.
&& IF u_kunnr = ‘*’.
c_text = ‘*’.
“/ Lesen Debitor-Text aus interner Tabelle
g_t_kna1 = space.
g_t_kna1-kunnr = u_kunnr.
READ TABLE g_t_kna1.
IF sy-subrc = 0.
c_text = g_t_kna1-sortl.
IF NOT u_lifnr IS INITIAL.
&& IF u_lifnr = ‘*’.
c_text = ‘*’.
“/ Lesen Kreditor-Text aus interner Tabelle
g_t_lfa1 = space.
g_t_lfa1-lifnr = u_lifnr.
READ TABLE g_t_lfa1.
IF sy-subrc = 0.
c_text = g_t_lfa1-sortl.
ENDFORM.&&&&&&&&&&&&&&&&&&&
” GET_KUNNR_LIFNR_TEXT
***********************************************************
FORM input_range USING value(rfipos).
DATA: off TYPE i, offset TYPE i, doing TYPE i.
DATA: item(20), str(10).
off = 0. offset = 0.& doing = 1.
WHILE doing && 0.
&& SHIFT rfipos BY offset
&& SEARCH rfipos FOR ‘,’.
&& IF sy-subrc = 0.
offset = sy-fdpos.
MOVE rfipos(offset) TO item.
offset = offset + 1.
MOVE rfipos TO item.
doing = 0.
&& SEARCH item FOR ‘-’.
&& IF sy-subrc = 0.
off = sy-fdpos.
MOVE item(off) TO str.
off = off + 1.
r_fipos-sign&& = ‘I’.
r_fipos-option = ‘BT’.
r_fipos-low&&&
SHIFT item BY off PLACES.
MOVE item TO str.
r_fipos-high&&
MOVE item TO str.
r_fipos-sign&& = ‘I’.
r_fipos-option = ‘EQ’.
r_fipos-low&&&
&& APPEND r_fipos.
FORM output_info USING fi_value.
DATA zcashflow LIKE fmmp-fkbtr.
DATA: i LIKE sy-tabix,
j LIKE sy-tabix,
k LIKE sy-tabix,
l LIKE sy-tabix.
i = 0.& j = 0. k = 32.
LOOP AT int_cashflow FROM 1 TO 32.
&& IF fi_value = ‘COM’.
zcashflow = int_cashflow-com_fkbtr.
&& ELSEIF fi_value = ‘FI’.
zcashflow = int_cashflow-fi_fkbtr.
&& i = i + 1.& j
= j + 1. k = k + 1.
&& WRITE : /011 sy-vline, 014
int_cashflow-desc,
&&&&&&&&&&&
085 sy-vline, 088(2) i,093 sy-vline.
&& IF zcashflow
WRITE: 099 zcashflow CURRENCY g_t_fmmp-fwaer.
&& IF i & 3.
l = i + 32.
READ TABLE int_cashflow INDEX l.
IF fi_value = ‘COM’.
zcashflow = int_cashflow-com_fkbtr.
ELSEIF fi_value = ‘FI’.
zcashflow = int_cashflow-fi_fkbtr.
WRITE: 116 sy-vline, 118(60) int_cashflow-desc,
&&&&&&&&&&&
190 sy-vline, 193(2) k, 198 sy-vline.
IF zcashflow && 0.
WRITE: 204 zcashflow CURRENCY g_t_fmmp-fwaer.
l = i - 2.
READ TABLE itb0 INDEX l.
IF sy-subrc && 0. CLEAR itb0.
WRITE: 116 sy-vline, 118(60) itb0-txt,
&&&&&&&&&&&
190 sy-vline, 193(2) k, 198 sy-vline.
IF itb0-num && 0.
WRITE: 204 itb0-num CURRENCY g_t_fmmp-fwaer.
&& WRITE: 220 sy-vline.
&& WRITE: /011 sy-uline.
&& IF j &=
PERFORM out_footer.
PERFORM out_footer.
*———————————————————————*
out_footer&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
……..&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
FORM out_footer.
DATA: usrname(80) TYPE c.
SELECT SINGLE * FROM usr21 WHERE bname = sy-uname.
SELECT SINGLE * FROM adrp& WHERE persnumber =
usr21-persnumber AND
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
date_from &=
sy-datum&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
date_to&& &=
CONCATENATE adrp-name_last adrp-name_first INTO usrname.
CONDENSE usrname NO-GAPS.
WRITE: /012 ‘制表人员:’, (12) usrname,
110 ‘打印日期:’, sy-datum,
202 ‘打印时间:’, sy-uzeit.
***********************************************************************
******************* 计算科目段在指定日期的起始余额 ********************
***********************************************************************
*****&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
***** 参数:mdate1&
开始日期(含此天)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*****&&&&&&
结束日期(不含此天)&&&&&&&&&&&&&&&&&&&&&&&&&&&
*****&&&&&&
科目编号的匹配模式字符串&&&&&&&&&&&&&&&&&&&&&
结果:znum&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
***** 算法:某日余额 = 年初余额 + 一月余额 +
...+&&&&&
*****&&&&&&&&&&&&&&&&&&
上月余额 +
本月到mdate2余额&&&&&&&&&&&
*****&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
***********************************************************************
FORM cal_dates_amount USING mdate1 mdate2 mstring
&&&&&&&&&&&&&&&&&&&&
CHANGING znum.
DATA: BEGIN OF iglt0 OCCURS 0.
INCLUDE STRUCTURE glt0.
DATA: END OF iglt0.
DATA: BEGIN OF itmp OCCURS 0,
num& LIKE& bseg-dmbtr,
END OF itmp.
LIKE sy-tabix.
SELECT * FROM glt0 INTO TABLE iglt0
WHERE bukrs& =
z_bukrs&&&&
&&&&&&&&&&&
mdate1(4)&& AND
&&&&&&&&&&&
racct LIKE mstring.
LOOP AT iglt0.
&& REFRESH itmp.
&& itmp-num =
iglt0-hslvt.& APPEND itmp.
&& itmp-num =
iglt0-hsl01.& APPEND itmp.
&& itmp-num =
iglt0-hsl02.& APPEND itmp.
&& itmp-num =
iglt0-hsl03.& APPEND itmp.
&& itmp-num =
iglt0-hsl04.& APPEND itmp.
&& itmp-num =
iglt0-hsl05.& APPEND itmp.
&& itmp-num =
iglt0-hsl06.& APPEND itmp.
&& itmp-num =
iglt0-hsl07.& APPEND itmp.
&& itmp-num =
iglt0-hsl08.& APPEND itmp.
&& itmp-num =
iglt0-hsl09.& APPEND itmp.
&& itmp-num =
iglt0-hsl10.& APPEND itmp.
&& itmp-num =
iglt0-hsl11.& APPEND itmp.
&& LOOP AT itmp FROM 1 TO
mdate1+4(2).
znum = znum + itmp-num.
&& ENDLOOP.
SELECT * FROM bkpf WHERE bukrs& =
z_bukrs&& AND
&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&
budat && mdate2.
&& SELECT * FROM bsis WHERE gjahr
= bkpf-gjahr AND
&&&&&&&&&&&&&&&&&&&&&&&&&&&
belnr = bkpf-belnr AND
&&&&&&&&&&&&&&&&&&&&&&&&&&&
hkont LIKE mstring.
IF bsis-shkzg = ‘S’.
znum = znum + bsis-dmbtr.
znum = znum - bsis-dmbtr.
&& ENDSELECT.
ENDSELECT.
DEFINE cal_data.
types: begin of datatype,
dnum&&& like
bseg-dmbtr,&&&&
“借方金额
cnum&&& like
bseg-dmbtr,&&&&
“贷方金额
end of datatype.
data: masset& type
datatype,&&&&&&&&&
“固定资产数据
minvest type
datatype,&&&&&&&&&
“投资数据
mlib&&& type
datatype,&&&&&&&&&
“短期负债数据
mstock& type
datatype,&&&&&&&&&
“库存数据
mllib&& type
datatype,&&&&&&&&&
“长期负债数据
mequit& type
datatype.&&&&&&&&&
“权益数据
loop at tab2.
&& case tab2-hkont(4).
when ‘1501& or
‘1701&.&&&&&&&&&&&&&&
“固定资产和无形资产
if tab2-shkzg = ‘S’.
add tab2-dmbtr to masset-dnum.
add tab2-dmbtr to masset-cnum.
when ‘1101& or ‘1401& or
‘1402&.&&&
“短期投资与长期投资
if tab2-shkzg = ‘S’.
add tab2-dmbtr to minvest-dnum.
add tab2-dmbtr to minvest-cnum.
when ‘1221& or ‘1231& or
‘1243&.&&&
“库存科目
if tab2-shkzg = ‘S’.
add tab2-dmbtr to mstock-dnum.
add tab2-dmbtr to mstock-cnum.
when ‘2111& or ‘2121& or
‘2181&.&&&
“经营性负债
if tab2-shkzg = ‘S’.
add tab2-dmbtr to mlib-dnum.
add tab2-dmbtr to mlib-cnum.
‘2321&.&&&&&&&&&&&&&&&&&&&&&&&
“长期负债
if tab2-shkzg = ‘S’.
add tab2-dmbtr to mllib-dnum.
add tab2-dmbtr to mllib-cnum.
when ‘3105& or
‘3111&.&&&&&&&&&&&&&&
“所有者权益
if tab2-shkzg = ‘S’.
add tab2-dmbtr to mequit-dnum.
add tab2-dmbtr to mequit-cnum.
&& endcase.
if masset-dnum &
0.&&&&&&&&&&
“固定资产增加
&& if mllib-cnum &
0.&&&&&&&&&
“融资租赁固定资产
if masset-dnum & mllib-cnum.
z_asset_rented = z_asset_rented + masset-dnum.
mllib-cnum&&&&
mllib-cnum&&&&
- masset-dnum.
masset-dnum&&& =
z_asset_rented = z_asset_rented + mllib-cnum.
masset-dnum&&& =
masset-dnum&&& -
mllib-cnum.
mllib-cnum&&&&
if masset-cnum &
0.&&&&&&&&&&
“固定资产减少
&& if mlib-dnum &
0.&&&&&&&&&&
“固定资产偿还债务(经营性)
if masset-cnum & mlib-dnum.
z_asset_debit = z_asset_debit + mlib-dnum.
z_debit_short = z_debit_short + mlib-dnum.
masset-cnum&& =
masset-cnum&& - mlib-dnum.
mlib-dnum&&&&
z_asset_debit = z_asset_debit + masset-cnum.
z_debit_short = z_debit_short + masset-cnum.
mlib-dnum&&&&
mlib-dnum&&&&
- masset-cnum.
masset-cnum&& = 0.
&& if mllib-dnum &
0.&&&&&&&&
“固定资产偿还债务(长期)
if masset-cnum & mllib-dnum.
z_asset_debit = z_asset_debit + mllib-dnum.
masset-cnum&& =
masset-cnum&& - mllib-dnum.
mllib-dnum&&& =
z_asset_debit = z_asset_debit + masset-cnum.
mllib-dnum&&& =
mllib-dnum&&& -
masset-cnum.
masset-cnum&& = 0.
&& if minvest-dnum
“以固定资产投资
if masset-cnum & minvest-dnum.
z_asset_invest = z_asset_invest + minvest-dnum.
masset-cnum&&& =
masset-cnum&&& -
minvest-dnum.
minvest-dnum&& = 0.
z_asset_invest = z_asset_invest + masset-cnum.
minvest-dnum&& =
minvest-dnum&& -
masset-cnum.
masset-cnum&&& =
if minvest-dnum &
0.&&&&&&&&&&&&&
“投资增加
&& if masset-cnum
0.&&&&&&&&&&&&
“以固定资产投资
if masset-cnum & minvest-dnum.
z_asset_invest = z_asset_invest + minvest-dnum.
masset-cnum&&& =
masset-cnum&&& -
minvest-dnum.
minvest&&&&&&&
z_asset_invest = z_asset_invest + masset-cnum.
minvest-dnum&& =
minvest-dnum&& -
masset-cnum.
masset-cnum&&& =
if minvest-cnum &
0.&&&&&&&&&&&&
“投资减少
&& if mlib-dnum &
0.&&&&&&&&&&&&&
“以投资偿还债务(经营性)
if mlib-dnum & minvest-cnum.
z_invest_debit = z_invest_debit + minvest-cnum.
z_debit_short& = z_debit_short& +
minvest-cnum.
mlib-dnum&&&&&
mlib-dnum&&&&&
- minvest-cnum.
minvest-cnum&& = 0.
z_invest_debit = z_invest_debit + mlib-dnum.
z_debit_short& = z_debit_short& +
mlib-dnum.
minvest-cnum&& =
minvest-cnum&& - mlib-dnum.
mlib-dnum&&&&&
&& if mllib-dnum &
0.&&&&&&&&&&&
“以投资偿还债务(长期)
if mllib-dnum & minvest-cnum.
z_invest_debit = z_invest_debit + minvest-cnum.
mllib-dnum&&&&
mllib-dnum&&&&
- minvest-cnum.
minvest-cnum&& = 0.
z_invest_debit = z_invest_debit + mllib-dnum.
minvest-cnum&& =
minvest-cnum&& -
mllib-dnum.
mllib-dnum&&&&
if mstock-cnum &
0.&&&&&&&&&&
“存货减少
&& if mlib-dnum &
0.&&&&&&&&&&
“以存货偿还债务(经营性)
if mlib-dnum & mstock-cnum.
z_stock_debit = z_stock_debit + mstock-cnum.
z_debit_short = z_debit_short + mstock-cnum.
mlib-dnum&&&&
mlib-dnum&&&&
- mstock-cnum.
mstock-cnum&& = 0.
z_stock_debit = z_stock_debit + mlib-dnum.
z_debit_short = z_debit_short + mlib-dnum.
mstock-cnum&& =
mstock-cnum&& - mlib-dnum.
mlib-dnum&&&&
&& if mllib-dnum &
0.&&&&&&&&&&
“以存货偿还债务(长期)
if mllib-dnum & mstock-cnum.
z_stock_debit = z_stock_debit + mstock-cnum.
mllib-dnum&&& =
mllib-dnum&&& -
mstock-cnum.
mstock-cnum&& = 0.
z_stock_debit = z_stock_debit + mllib-dnum.
mstock-cnum&& =
mstock-cnum&& - mllib-dnum.
mllib-dnum&&& =
if mequit-cnum &
0.&&&&&&&&&&&
“资本增加
&& if mlib-dnum &
if mlib-dnum & mequit-cnum.
z_debit_equit = z_debit_equit + mequit-cnum.
z_debit_short = z_debit_short + mequit-cnum.
mlib-dnum&&&&
mlib-dnum&&&&
- mequit-cnum.
mequit-cnum&& = 0.
z_debit_equit = z_debit_equit + mlib-dnum.
z_debit_short = z_debit_short + mlib-dnum.
mequit-cnum&& =
mequit-cnum&& - mlib-dnum.
mlib-dnum&&&&
&& if mllib-dnum &
if mllib-dnum & mequit-cnum.
z_debit_equit = z_debit_equit + mequit-cnum.
mllib-dnum&&&&
mllib-dnum&&&&
- mequit-cnum.
mequit-cnum&& = 0.
z_debit_equit = z_debit_equit + mllib-dnum.
mequit-cnum&& =
mequit-cnum&& - mllib-dnum.
mlib-dnum&&&&
END-OF-DEFINITION.
*———————————————————————*
cal_indirect&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
……..&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
pbukrs&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
FORM cal_indirect USING pbukrs LIKE fmmp-bukrs.
DATA: BEGIN OF tab1 OCCURS 0,
gjahr& LIKE bkpf-gjahr,
belnr& LIKE bkpf-belnr,
END OF tab1,
BEGIN OF tab2 OCCURS 0,
gjahr& LIKE bseg-gjahr,
belnr& LIKE bseg-belnr,
hkont& LIKE bseg-hkont,
shkzg& LIKE bseg-shkzg,
dmbtr& LIKE bseg-dmbtr,
END OF tab2,
BEGIN OF tab3 OCCURS 0,
gjahr& LIKE bseg-gjahr,
belnr& LIKE bseg-belnr,
hkont& LIKE bseg-hkont,
shkzg& LIKE bseg-shkzg,
dmbtr& LIKE bseg-dmbtr,
END OF tab3.
IF NOT ( s_budat-low IS INITIAL ).
&& z_min_budat =
s_budat-low.
&& z_min_budat = min_budat.
IF NOT ( s_budat-high IS INITIAL ).
&& z_max_budat =
s_budat-high.
&& z_max_budat = max_budat.
z_bukrs = pbukrs.
SELECT gjahr belnr FROM bkpf
CORRESPONDING FIELDS OF TABLE tab1
&& WHERE bukrs&
z_bukrs&&&&&&&&
z_min_budat&&&&
budat &= z_max_budat.
LOOP AT tab1.
&& SELECT hkont shkzg dmbtr FROM
INTO& CORRESPONDING FIELDS OF tab2
WHERE gjahr =
tab1-gjahr&&&&&
&&&&&&&&&&
belnr = tab1-belnr.
tab2-gjahr& = tab1-gjahr.
tab2-belnr& = tab1-belnr.
APPEND tab2.
&& ENDSELECT.
REFRESH tab1.
tab2.&&&&&&&&&&&&&&&&&&&
“挑出与补充资料相关的凭证号
&& IF tab2-hkont(4) =
‘1501&& OR& “固定资产原值科目
tab2-hkont(4) = ‘1701&& OR&
“固定资产清理
tab2-hkont(4) = ‘1101&& OR&
“短期投资
tab2-hkont(4) = ‘1401&& OR&
“长期股权投资
tab2-hkont(4) = ‘1402&& OR&
“长期债权投资
tab2-hkont(4) = ‘1221&& OR&
tab2-hkont(4) = ‘1231&& OR&
“低值易耗品
tab2-hkont(4) = ‘1243&& OR&
“库存商品
tab2-hkont(4) = ‘3105&& OR&
“上级拨入
tab2-hkont(4) =
‘3111&.&&&&
“资本公积
tab1-gjahr&&& =
tab2-gjahr.
tab1-belnr&&& =
tab2-belnr.
APPEND tab1.
&& IF tab2-shkzg =
tab2-dmbtr = 0 - tab2-dmbtr.&&
&& IF tab2-hkont(1) =
‘5&.&&&&&&&&&
ADD tab2-dmbtr TO z_profit.
&& IF tab2-hkont =
“管理费用-坏帐损失
ADD tab2-dmbtr TO z_bad_debit.
&& IF tab2-hkont = ‘&
OR&& “短期投资减值准备
tab2-hkont = ‘& OR&& “存
货跌价准备
tab2-hkont = ‘& OR&&
“长期投资减值准备
tab2-hkont = ‘& OR&&
“固定资产减值准备
tab2-hkont = ‘& OR&&
“在建工程减值准备
tab2-hkont =
“无形资产减值准备
z_bad_debit = z_bad_debit - tab2-dmbtr.
&& IF tab2-hkont(7) =
‘5501020&.&&&
“固定资产折旧
ADD tab2-dmbtr TO z_asset_dep.
&& IF tab2-hkont(7) =
‘5501043&.&&&
“无形资产摊销
ADD tab2-dmbtr TO z_intang_dep.
&& IF tab2-hkont(4) =
‘1301&.&&&&&&
“待摊费用
ADD tab2-dmbtr TO z_paid_dec.
&& IF tab2-hkont(4) =
‘2191&.&&&&&&
“预提费用
ADD tab2-dmbtr TO z_accrul_inc.
tab2-hkont&&& =
‘& OR& “营业外收入-处置长期资产净收入
tab2-hkont&&& =
‘& OR& “营业外收入-固定资产盘盈
tab2-hkont&&& =
‘& OR& “营业外支出-处置长期资产净损失
tab2-hkont&&& =
“营业外支出-固定资产盘亏
ADD tab2-dmbtr TO z_asset_pro.
&& IF tab2-hkont(4) =
‘5503&.&&&&&&&&&
“财务费用
ADD tab2-dmbtr TO z_fi_expen.
&& IF tab2-hkont(4) =
tab2-hkont(4) = ‘1231&&
“低值易耗品
tab2-hkont(4) =
‘1243&.&&&&&&&&&
“库存商品
ADD tab2-dmbtr TO z_stock.
&& IF tab2-hkont(4) = ‘1111&
“应收票据
tab2-hkont(4) = ‘1131&
“应收帐款
tab2-hkont(4) = ‘1133&
“其它应收帐款
tab2-hkont(4) =
‘1141&.&&&&&&&&
“坏帐准备
ADD tab2-dmbtr TO z_ar.
&& IF tab2-hkont(4) = ‘2111&
“应付票据
tab2-hkont(4) = ‘2121&
“应付帐款
tab2-hkont(4) = ‘2151&
“应付工资
tab2-hkont(4) = ‘2153&
“应付福利费
tab2-hkont(4) = ‘2171&
“应交税金
tab2-hkont(4) = ‘2176&
“其它应缴款
tab2-hkont(4) =
‘2181&.&&&&&&&&
“其它应付款
ADD tab2-dmbtr TO z_ap.
SORT tab1 BY gjahr belnr.
DELETE ADJACENT DUPLICATES FROM tab1 COMPARING gjahr belnr.
LOOP AT tab2.
&& READ TABLE tab1 WITH KEY gjahr
= tab2-gjahr
&&&&&&&&&&&&&&&&&&&&&&&&&&&
belnr = tab2-belnr BINARY SEARCH.
&& IF sy-subrc = 0.
tab3 = tab2. APPEND tab3.
REFRESH tab2.
SORT tab3 BY gjahr belnr.
LOOP AT tab3.
&& tab2 = tab3. APPEND
&& AT END OF belnr.
cal_data.&&&&&&&&&&&&
“计算每张凭证中的补充资料
REFRESH tab2.
z_stock = z_stock + z_stock_debit.
z_debit_short.
LOOP AT int_cashflow.
&& IF int_cashflow-desc CP
‘*经营活动产生的现金流量净额*’.
&&& z_other =
z_profit&&&&&
- z_bad_debit - z_asset_dep - z_intang_dep
&&&&&&&&&&&&&&
- z_longpaid_dep + z_paid_dec + z_accrul_inc
&&&&&&&&&&&&
- z_asset_pro - z_asset_scr - z_fi_expen& -
z_invest_loss
&&&&&&&&&&&&&&
+ z_defer_tax +
z_stock&&&&
z_ar&&&&&&&
z_production = int_cashflow-com_fkbtr.
z_other = int_cashflow-com_fkbtr + z_other.
z_profit&&&&
= 0 - z_profit.
z_defer_tax& = 0 - z_defer_tax.
z_stock&&&&&
= 0 - z_stock.
z_ar&&&&&&&&
= 0 - z_ar.
z_ap&&&&&&&&
= 0 - z_ap.
z_paid_dec&& = 0 -
z_paid_dec.
z_accrul_inc = 0 - z_accrul_inc.
DATA: mdate1 LIKE sy-datum, mdate2 LIKE sy-datum.
z_min_budat.&&&&&&
mdate1+6(2) = ‘01&.
PERFORM cal_dates_amount USING
mdate1&&&&&&&&&
“计算期初货币资金余额
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
z_min_budat
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&
CHANGING z_money_init.
z_max_budat.&&&&&&
mdate1+6(2) = ‘01&.
mdate2 = z_max_budat + 1.
PERFORM cal_dates_amount USING
mdate1&&&&&&&&
“计算期末货币资金余额
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&
CHANGING z_money_end.
z_all_money = z_money_end - z_money_init +
&&&&&&&&&&&&&&
z_cashs_end - z_cashs_init.
PERFORM fill_item.
*———————————————————————*
fill_item&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
……..&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
FORM fill_item.
REFRESH itb0.
‘补充资料&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
0.&&&&&&&&&&&&&&
APPEND itb0.
‘1、将净利润调节为经营活动的现金流量&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
0.&&&&&&&&&&&&&&
APPEND itb0.
mtxt = ‘&
净利润&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_profit.&&&&&&&
APPEND itb0.
mtxt = ‘&
加:计提的资产减值准备&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_bad_debit.&&&&
APPEND itb0.
mtxt = ‘&
固定资产折旧&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_asset_dep.&&&&
APPEND itb0.
mtxt = ‘&
无形资产摊销&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_intang_dep.&&&
APPEND itb0.
mtxt = ‘&
长期待摊费用摊销&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num = z_longpaid_dep.&
APPEND itb0.
mtxt = ‘&
待摊费用的减少(减:增加)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_paid_dec.&&&&&
APPEND itb0.
mtxt = ‘&
预提费用的增加(减:减少)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num = z_accrul_inc.& APPEND
mtxt = ‘&
处置固定资产、无形资产和其它长期资产的损失(减:收益)&&&
itb0-txt = mtxt. itb0-num =
z_asset_pro.&&&&
APPEND itb0.
mtxt = ‘&
固定资产报废损失&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_asset_scr.&&&&
APPEND itb0.
mtxt = ‘&
财务费用&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_fi_expen.&&&&&
APPEND itb0.
mtxt = ‘&
投资损失(减:收益)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_invest_loss.&& APPEND
mtxt = ‘&
递延税款贷项(减:借项)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_defer_tax.&&&&
APPEND itb0.
mtxt = ‘&
存货的减少(减:增加)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_stock.&&&&&&&&
APPEND itb0.
mtxt = ‘&
经营性应收项目的减少(减:增加)&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_ar.&&&&&&&&&&&
APPEND itb0.
mtxt = ‘&
经营性应付项目的增加(减:减少)&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_ap.&&&&&&&&&&&
APPEND itb0.
mtxt = ‘&
其它&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_other.&&&&&&&&
APPEND itb0.
mtxt = ‘&
经营活动产生的现金流量净额&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_production.&&&
APPEND itb0.
‘2、不涉及现金收支的投资活动和筹资活动:&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
0.&&&&&&&&&&&&&&
APPEND itb0.
‘&&&&&&&&
以固定资产偿还债务&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*& itb0-txt = mtxt. itb0-num =
z_asset_debit.&& APPEND
‘&&&&&&&&
以投资偿还债务&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*& itb0-txt = mtxt. itb0-num =
z_invest_debit.& APPEND itb0.
‘&&&&&&&&
以固定资产进行投资&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*& itb0-txt = mtxt. itb0-num =
z_asset_invest.& APPEND itb0.
‘&&&&&&&&
以存货偿还债务&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*& itb0-txt = mtxt. itb0-num =
z_stock_debit.&& APPEND
mtxt = ‘&
债务转为资本&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_debit_equit.&& APPEND
mtxt = ‘&
一年内到期的可转换公司债券&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_bond_due.&&&&&
APPEND itb0.
mtxt = ‘&
融资租赁固定资产&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num = z_asset_rented.&
APPEND itb0.
mtxt = ‘&
其它&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
0.&&&&&&&&&&&&&&
APPEND itb0.
‘&&&&&&&&
接受捐赠的非现金资产&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*& itb0-txt = mtxt. itb0-num =
z_donation.&&&&&
APPEND itb0.
‘3、现金及现金等价物净增加情况:&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
0.&&&&&&&&&&&&&&
APPEND itb0.
mtxt = ‘&&
货币资金的期末余额&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_money_end.&&&&
APPEND itb0.
减:货币资金的期初余额&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_money_init.&&&
APPEND itb0.
mtxt = ‘&&
现金等价物的期末余额&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_cashs_end.&&&&
APPEND itb0.
减:现金等价物的期初余额&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_cashs_init.&&&
APPEND itb0.
mtxt = ‘&&
现金及现金等价物的净增加额&&&&&&&&&&&&&&&&&&&&&&&&&&&&
itb0-txt = mtxt. itb0-num =
z_all_money.&&&&
APPEND itb0.
*———————————————————————*
fill_item_direct&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
……..&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
*———————————————————————*
FORM fill_item_direct.
DATA: s1(66) TYPE c,
s2(66) TYPE c.
CLEAR: int_cashflow, s1, s2.
s1 = ‘一、经营活动产生的现金流量:&& ‘.
‘&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
销售商品、提供劳务收到的现金& ‘.
s2 = ‘A,A,A,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘&& 收到的税费返还 ‘.
s2 = ‘A,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
收到的其它与经营活动有关的现金& ‘.
s2 = ‘A,A,A,A9999,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘&& 现金流入小计&
s2 = ‘A,A,C9000,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
购买商品、接受劳务支付的现金& ‘.
s2 = ‘B,B,B,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
支付给职工以及为职工支付的现金& ‘.
s2 = ‘B3100,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
支付的各项税费& ‘.
s2 = ‘B,B3212,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
支付的其它与经营活动有关的现金& ‘.
s2 = ‘B-B,B9999,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘&& 现金流出小计&
s2 = ‘B,B,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘经营活动产生的现金流量净额& ‘.
s2 = ‘A,A,B,B,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘二、投资活动产生的现金流量:& ‘.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
收回投资所收到的现金& ‘.
s2 = ‘A4000,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
取得投资收益所收到的现金& ‘.
s2 = ‘A,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
处置固定资产、无形资产和其它长期资产’.
s2 = ‘而收到的现金净额& ‘.
DATA: xtx(150) TYPE c.
CONCATENATE s1 s2 INTO xtx.
CONDENSE xtx NO-GAPS.
int_cashflow-desc = xtx.
s2 = ‘A4300,’.
int_cashflow-desc = xtx. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
收到的其它与投资活动有关的现金& ‘.
s2 = ‘A4400,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘&& 现金流入小计&
s2 = ‘A&.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
购建固定资产、无形资产和其它长期资产所支付的现金’.
s2 = ‘B4000,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
投资支付的现金& ‘.
s2 = ‘B,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
支付的其它与投资活动有关的现金& ‘.
s2 = ‘B4300,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
s1 = ‘&& 现金流出小计&
s2 = ‘A,B,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘投资活动产生的现金流量净额& ‘.
s2 = ‘A,B,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘三、筹资活动产生的现金流量:& ‘.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
吸收投资所收到的现金& ‘.
s2 = ‘A,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
借款所收到的现金& ‘.
s2 = ‘A5200,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
收到的其它与筹资活动有关的现金& ‘.
s2 = ‘A,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘&& 现金流入小计&
s2 = ‘A,A5500&.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
偿还债务所支付的现金& ‘.
s2 = ‘B5000,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
分配股利或利润所支付的现金& ‘.
s2 = ‘B5200,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
支付的其它与筹资活动有关的现金& ‘.
s2 = ‘B,B,B5800,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘&& 现金流出小计&
s2 = ‘B,B5800,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘筹资活动产生的现金流量净额’.
s2 = ‘A,A-B,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘四、汇率变化对现金的影响额& ‘.
s2 = ‘A,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
CLEAR: int_cashflow, s1, s2.
s1 = ‘五、现金及现金等价物净增加额& ‘.
s2 = ‘A,’.
int_cashflow-desc = s1. int_cashflow-r_fipos = s2.
APPEND int_cashflow.
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 三星a5000怎么样 的文章

 

随机推荐