ABAP资产负债表作业
REPORT z_zycc010 MESSAGE-ID z_zycc001.
TABLES: faglflext.
DATA: BEGIN OF gwa_faglflext,
racct LIKE faglflext-racct, "科目
drcrk LIKE faglflext-drcrk, "借方/贷方标识
ryear TYPE faglflext-ryear,
rbukrs TYPE faglflext-rbukrs,
prctr TYPE faglflext-prctr,
rpmax TYPE faglflext-rpmax,
hslvt LIKE faglflext-hslvt,
hsl01 LIKE faglflext-hsl01, "本币金额
hsl02 LIKE faglflext-hsl02,
hsl03 LIKE faglflext-hsl03,
hsl04 LIKE faglflext-hsl04,
hsl05 LIKE faglflext-hsl05,
hsl06 LIKE faglflext-hsl06,
hsl07 LIKE faglflext-hsl07,
hsl08 LIKE faglflext-hsl08,
hsl09 LIKE faglflext-hsl09,
hsl10 LIKE faglflext-hsl10,
hsl11 LIKE faglflext-hsl11,
hsl12 LIKE faglflext-hsl12,
hsl13 LIKE faglflext-hsl13,
hsl14 LIKE faglflext-hsl14,
hsl15 LIKE faglflext-hsl15,
hsl16 LIKE faglflext-hsl16,
END OF gwa_faglflext.
DATA: gt_faglflext LIKE STANDARD TABLE OF gwa_faglflext.
DATA:BEGIN OF gs_alv,
hxmmc1 TYPE string,
hch1 TYPE string,
qmye1 TYPE faglflext-tsl16,
ncye1 TYPE faglflext-tsl16,
hxmmc2 TYPE string,
hch2 TYPE string,
qmye2 TYPE faglflext-tsl16,
ncye2 TYPE faglflext-tsl16,
END OF gs_alv,
gt_alv LIKE TABLE OF gs_alv.
DATA: g_bzdw TYPE string,
g_kjqj TYPE string.
* Define ALV attribute
DATA:go_grid TYPE REF TO cl_gui_alv_grid.
*DATA:gs_layout TYPE lvc_s_layo,
* gt_fieldcat TYPE lvc_t_fcat,
* gs_variant TYPE disvariant,
* gs_fieldcat LIKE LINE OF gt_fieldcat,
* gt_exclude TYPE slis_t_extab,
* gv_repid TYPE syrepid.
*&------------------------------------------------------------------*
*& SELECT SCREEN
*&------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS:p_rbukrs TYPE faglflext-rbukrs OBLIGATORY. "公司代码
SELECT-OPTIONS s_prctr FOR faglflext-prctr.
PARAMETERS:p_ryear TYPE faglflext-ryear OBLIGATORY,
p_rpmax TYPE faglflext-rpmax OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1.
FIELD-SYMBOLS <fs>.
DATA: g_index TYPE i.
DATA: g_tot LIKE faglflext-hsl16.
DATA: g_tot2 LIKE faglflext-hsl16.
DATA:g_hsl LIKE faglflext-hsl16.
DATA: num TYPE i.
num = p_rpmax.
RANGES:lrr_racct FOR faglflext-racct.
START-OF-SELECTION.
PERFORM frm_get_header.
PERFORM getdata.
PERFORM frm_get_data.
PERFORM frm_display.
FORM getdata.
SELECT
ryear
prctr
racct
rbukrs
rpmax
SUM( hslvt ) AS hslvt
SUM( hsl01 ) AS hsl01
SUM( hsl02 ) AS hsl02
SUM( hsl03 ) AS hsl03
SUM( hsl04 ) AS hsl04
SUM( hsl05 ) AS hsl05
SUM( hsl06 ) AS hsl06
SUM( hsl07 ) AS hsl07
SUM( hsl08 ) AS hsl08
SUM( hsl09 ) AS hsl09
SUM( hsl10 ) AS hsl10
SUM( hsl11 ) AS hsl11
SUM( hsl12 ) AS hsl12
SUM( hsl13 ) AS hsl13
SUM( hsl14 ) AS hsl14
SUM( hsl15 ) AS hsl15
SUM( hsl16 ) AS hsl16
INTO CORRESPONDING FIELDS OF TABLE gt_faglflext FROM faglflext
WHERE ryear = p_ryear
AND rbukrs = p_rbukrs
* and drcrk = 'S'
AND rldnr = '0L'
* AND rpmax = p_rpmax
* AND racct = '0000089000'
AND prctr IN s_prctr
GROUP BY ryear rbukrs prctr racct rpmax.
ENDFORM.
FORM frm_get_data.
DATA:l_qmye TYPE faglflext-tsl16,l_ncye TYPE faglflext-tsl16,
l_qmye1 TYPE faglflext-tsl16,l_ncye1 TYPE faglflext-tsl16.
lrr_racct+0(3) = 'ICP'.
lrr_racct-low = '*176200'.
APPEND lrr_racct.
PERFORM get_data TABLES lrr_racct[].
gs_alv-hxmmc1 = '货币资金'.
gs_alv-hch1 = '2'.
gs_alv-qmye1 = g_tot2.
gs_alv-ncye1 = gwa_faglflext-hslvt.
CLEAR g_tot2.
CLEAR:lrr_racct[],lrr_racct.
lrr_racct+0(3) = 'ICP'.
lrr_racct-low = '*176100'.
APPEND lrr_racct.
PERFORM get_data TABLES lrr_racct[].
gs_alv-hxmmc2 = '短期借款'.
gs_alv-hch2 = '48'.
gs_alv-qmye2 = g_tot2.
gs_alv-ncye2 = gwa_faglflext-hslvt.
CLEAR g_tot2.
APPEND gs_alv TO gt_alv.
"下一行由此开始
clear:gs_alv.
CLEAR:lrr_racct[],lrr_racct.
lrr_racct+0(3) = 'ICP'.
lrr_racct-low = '*465000'.
APPEND lrr_racct.
PERFORM get_data TABLES lrr_racct[].
gs_alv-hxmmc1 = '交易性金融资产'.
gs_alv-hch1 = '3'.
gs_alv-qmye1 = g_tot2.
gs_alv-ncye1 = gwa_faglflext-hslvt.
CLEAR:lrr_racct[],lrr_racct.
lrr_racct+0(3) = 'ICP'.
lrr_racct-low = '0000175003'.
APPEND lrr_racct.
PERFORM get_data TABLES lrr_racct[].
gs_alv-hxmmc2 = '交易性金融负债'.
gs_alv-hch2 = '49'.
gs_alv-qmye2 = g_tot2.
gs_alv-ncye2 = gwa_faglflext-hslvt.
APPEND gs_alv TO gt_alv.
ENDFORM.
FORM get_data TABLES acct LIKE lrr_racct[].
LOOP AT gt_faglflext INTO gwa_faglflext WHERE racct IN acct.
DATA: g_tot21 LIKE faglflext-hsl16.
DO num TIMES
VARYING g_tot21 FROM gwa_faglflext-hsl01 NEXT gwa_faglflext-hsl02.
g_tot2 = g_tot2 + g_tot21.
ENDDO.
" WRITE:'期初余额',gwa_faglflext-hslvt.
" WRITE:'会计科目',gwa_faglflext-racct.
" WRITE:'利润中心',gwa_faglflext-prctr.
" WRITE:'会计期间',gwa_faglflext-rpmax.
" SKIP.
" WRITE: '一月' , gwa_faglflext-hsl01.
" WRITE: '二月' , gwa_faglflext-hsl02.
" WRITE: '三月' , gwa_faglflext-hsl03.
" WRITE: '四月' , gwa_faglflext-hsl04.
" WRITE: '五月' , gwa_faglflext-hsl05.
" WRITE: '六月' , gwa_faglflext-hsl06.
" WRITE: '七月' , gwa_faglflext-hsl07.
" WRITE: '八月' , gwa_faglflext-hsl08.
" WRITE: '九月' , gwa_faglflext-hsl09.
" WRITE: '十月' , gwa_faglflext-hsl10.
" WRITE: '十一月' , gwa_faglflext-hsl11.
" WRITE: '十二月' , gwa_faglflext-hsl12.
" WRITE: '十三月' , gwa_faglflext-hsl13.
" WRITE: '十四月' , gwa_faglflext-hsl14.
" WRITE: '十五月' , gwa_faglflext-hsl15.
" WRITE: '十六月' , gwa_faglflext-hsl16.
" SKIP.
" WRITE: '当月期末余额' , g_tot2.
" WRITE: / ,/.
ENDLOOP.
ENDFORM.
FORM frm_get_header.
DATA:l_bukrs_txt TYPE t001-butxt.
DATA:l_ktext TYPE cepct-ktext.
DATA:lv_period_end TYPE sy-datum.
DATA:lp_rpmax TYPE faglflext-rpmax.
"取编制单位
SELECT SINGLE butxt INTO ( l_bukrs_txt )
FROM t001 WHERE bukrs EQ p_rbukrs.
IF s_prctr IS NOT INITIAL.
SELECT SINGLE ktext INTO ( l_ktext ) FROM cepct WHERE spras EQ sy-langu AND prctr IN s_prctr.
g_bzdw = l_bukrs_txt && '(' && l_ktext && ')'.
ELSE.
g_bzdw = l_bukrs_txt.
ENDIF.
"会计期间
IF p_rpmax < 1 .
lp_rpmax = 1.
ELSEIF p_rpmax > 12 .
lp_rpmax = 12.
ELSE.
lp_rpmax = p_rpmax.
ENDIF.
CALL FUNCTION 'LAST_DAY_IN_PERIOD_GET'
EXPORTING
i_gjahr = p_ryear
i_periv = 'K4'
i_poper = lp_rpmax
IMPORTING
e_date = lv_period_end
EXCEPTIONS
input_false = 1
t009_notfound = 2
t009b_notfound = 3
OTHERS = 4.
CONCATENATE lv_period_end+0(4) '年' lv_period_end+4(2) '月' lv_period_end+6(2) '日' INTO g_kjqj.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form FRM_DISPLAY
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM frm_display .
DATA:ls_layo TYPE lvc_s_layo,
lt_fcat TYPE lvc_t_fcat,
ls_fcat TYPE lvc_s_fcat.
*******设置报表抬头&注释
* PERFORM comment_build USING er_list_top_of_page[].
* 布局设置
CLEAR ls_layo.
ls_layo-zebra = 'X'. "斑马线
ls_layo-no_rowmark = 'X'. "不选择选择框
* ls_layo-box_fname = 'SEL'.
* FIELDCAT字段填充
CLEAR lt_fcat[].
DEFINE m_fieldcat.
CLEAR ls_fcat.
ls_fcat-fieldname = &1.
ls_fcat-coltext = &2.
ls_fcat-outputlen = &3.
ls_fcat-no_zero = &4.
APPEND ls_fcat TO lt_fcat.
END-OF-DEFINITION.
m_fieldcat 'hxmmc1' '资 产' '' '' .
m_fieldcat 'hch1' '行次' '' ''.
m_fieldcat 'qmye1' '期末余数' '' ''.
m_fieldcat 'ncye1' '年初余额' '' ''.
m_fieldcat 'hxmmc2' '负债和所有者权益(或股东权益)' '' ''.
m_fieldcat 'hch2' '行次' '' ''.
m_fieldcat 'qmye2' '期末余数' '' ''.
m_fieldcat 'ncye2' '年初余额' '' ''.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
EXPORTING
i_callback_program = sy-repid
is_layout_lvc = ls_layo
it_fieldcat_lvc = lt_fcat[]
* i_callback_pf_status_set = 'FRM_SET_STATUS'
i_callback_user_command = 'FRM_USER_COMMAND'
i_callback_html_top_of_page = 'F_TOP_OF_PAGE'
i_save = 'A'
TABLES
t_outtab = gt_alv[]
EXCEPTIONS
program_error = 1
OTHERS = 2.
ENDFORM.
FORM f_top_of_page USING p_cl_dd TYPE REF TO cl_dd_document.
DATA:lv_str1 TYPE string,
lv_str2 TYPE string,
lv_str3 TYPE string,
lv_date TYPE string.
" 定义缓冲区变量
DATA: m_p TYPE i,
m_buffer TYPE string.
" 开始输出表头标题
m_buffer = '<HTML><CENTER><H1>资产负债表</H1></CENTER></HTML>' .
CALL METHOD p_cl_dd->html_insert
EXPORTING
contents = m_buffer
CHANGING
position = m_p.
"取编制单位
lv_date = sy-datum.
lv_date = lv_date+0(4) && '年' && lv_date+4(2) && '月' && '26日'.
" 输出制表人和制表日期
CONCATENATE '<P ALIGN = CENTER >编制单位:' g_bzdw
'                   '
'                  '
'                  '
'                  '
'                  '
'                  '
'会计期间:' g_kjqj INTO m_buffer .
CALL METHOD p_cl_dd->html_insert
EXPORTING
contents = m_buffer
CHANGING
position = m_p.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form FRM_SET_STATUS
*&---------------------------------------------------------------------*
* set status
*----------------------------------------------------------------------*
FORM frm_set_status USING extab TYPE slis_t_extab.
DATA:wa_excluding TYPE slis_extab.
wa_excluding-fcode = '&INFO' .
APPEND wa_excluding TO extab .
SET PF-STATUS 'S1000'.
ENDFORM. " FRM_SET_STATUS
*&---------------------------------------------------------------------*
*& Form FRM_USER_COMMAND
*&---------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
* -->I_UCOMM
* -->I_SELFIELD
*----------------------------------------------------------------------*
FORM frm_user_command USING i_ucomm LIKE sy-ucomm
i_selfield TYPE slis_selfield.
DATA:l_grid TYPE REF TO cl_gui_alv_grid,
lv_count TYPE i.
*- 获取alv
CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
IMPORTING
e_grid = l_grid.
*- 获取alv改变值
CALL METHOD l_grid->check_changed_data.
*- 刷新ALV界面
CALL METHOD l_grid->refresh_table_display.
CASE i_ucomm.
WHEN '&IC1'.
* i_selfield-fieldname
*i_selfield-tabindex
WHEN OTHERS.
ENDCASE.
i_selfield-refresh = 'X'.
ENDFORM. " FRM_USER_COMMAND
ABAP资产负债表作业相关推荐
- SAP ABAP ChatGPT 初体验 我会失业吗?
SAP ABAP ChatGPT 初体验 我会失业吗? 简介: ChatGPT 最近很火,听说我可能要失业!就在今天我历经千辛万苦,终于把 ChatGPT 注册好了.话不多说,我先问两个 ABAP 开 ...
- SAP ABAP 业务对象 BUS1115 ActivityTypeGroup 作业类型组 BAPI 清单和相关 TCODE
SAP ABAP 业务对象 BUS1115 ActivityTypeGroup 作业类型组 BAPI 清单和相关 TCODE 简介: SAP ABAP 业务对象 BUS1115 ActivityTyp ...
- ABAP实现本地化的资产负债表和损益表
1.设计思路: SAP没有提供标准的符合中国标准的资产负债表和损益表,需要我们在系统中自定义开发,我们在配置报表版本时都指定了 一个项目的编号,一个版本下面都有期其统驭的科目范围,我们可以根据这个项目 ...
- 会计学第四周作业(会计科目,资产负债表,利润表)
一.选择题 1.AC 2.BD 3.A 4.B 5.D 6.B 7.ABC 8.C 9.BCD 10.B 二.判断题 1.错 2.错 3.对 4.对 5.错 6.错 7.对 8.对 9.对 10.错 ...
- 计算机会计课程试题及答案,计算机会计第2次作业_报表_附答案
计算机会计第2次作业_报表_附答案 (6页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 . . . . .<计算机会计>课程作业 ...
- 计算机编程导论python程序设计答案-学堂在线_计算机科学与Python编程导论_作业课后答案...
学堂在线_计算机科学与Python编程导论_作业课后答案 答案: 更多相关问题 近代中国完全沦为半殖民地半封建社会的标志是:A.<马关条约>B.<辛丑条约>C.<凡尔赛和 ...
- SAP ABAP 点滴记录
***************************************************************************************** 系统字段篇--STR ...
- 【ABAP】获取后台Job相关状态
这一节主要对后台作业(Batch JOB)中一些平时不怎么用到的内容做一下整理,有需要对后台作业进行控制的同行可以学习参照,比如定时批量对一部分作业进行状态的变更,控制运行中作业的数量等等. 1.SA ...
- ABAP开发常用的表
1 两个内表相拷可用表达式: ITABA[] = ITABB[]. 2. 为了提高程序的运行速度: Uesing ABAP sort clause instead of order by. 3. 把一 ...
最新文章
- Selenium提取数据之标签对象提取文本内容和属性值
- tensorflow tf.enable_eager_execution()(立即执行操作,不添加到稍后在“ tf.Session”中执行的图)
- 第1章 计算机基础知识习题答案,职称计算机基础知识习题第一章
- spring cloud+dotnet core搭建微服务架构:Api网关(三)
- slider节点透明背景_【Cocos Creator 实战教程(1)】——人机对战五子棋(节点事件相关)...
- 使用svnsync同步svn
- .net 代码混淆原理性实践
- 对比,还原真实的GPU池化
- Asp.net MVC2使用第三方控件
- 【Django 2021年最新版教程14】session是什么 如何使用
- Axure原型APP设计规范
- 【H.264/AVC 句法和语义详解】(十二):H264中的帧场编码模式详解
- android 小米盒子开发,接小米盒子Android SDK
- 数学期望、方差、标准差
- ih5学习笔记_事件对象
- PHP程序设计读书笔记七
- 【文章】我在华为打工的日子
- 计算机运维考核指标,信息中心考核指标库
- 我才22岁,我再玩一年又能怎么样?等我23岁的时候,一定给你活出个人样
- CP2101 usb转uart驱动
热门文章
- DELPHI基础开发技巧
- 1个钟是多久_一个番茄钟要多长时间
- 前端诡异参数start
- C练题笔记之:Leetcode-780. 到达终点
- 按要求编写一个Java应用程序:(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。(2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性
- 列表3:修改删除函数实操
- ERROR: cannot launch node of type [map_server/map_server]: map_server
- python绘制饼图的如何设置高度宽度_Matplotlib添加pictu时调整饼图大小
- Python根据关键词在360、百度、bing搜索下载图片
- 支付宝 自动发货 php,ecshop 支付宝自动发货接口