SAP FICO工单成本明细报表
一、报表逻辑




二、报表界面


三、功能代码
*&---------------------------------------------------------------------*
*& 程序名: ZRPFI_040
*& 创建者(公司)/日期:
*& 程序描述:
*& 工单成本明细表
*&---------------------------------------------------------------------*
*& 版本/修改者(公司)/日期//修改描述
*&
*&---------------------------------------------------------------------*
REPORT zrpfi_040 NO STANDARD PAGE HEADING.
TABLES:coss,cosp,coka,cokey,aufk,afpo,caufvd,makt,jcds,csku,cskt,cslt,t001,mara.
TYPE-POOLS:slis.
DATA: i_cat TYPE slis_t_fieldcat_alv. "MADE STANDARD STRUCTURE TABLE
DATA:gs_layout TYPE slis_layout_alv.
DATA:gt_fieldcat TYPE lvc_t_fcat,
wa_fieldcat LIKE LINE OF gt_fieldcat.
DATA: g_custom_container TYPE REF TO cl_gui_custom_container,
sap_grid TYPE REF TO cl_gui_alv_grid.
DATA: save_code LIKE sy-tcode,ok_key LIKE sy-tcode,rds TYPE i.
"取工单信息的结构
DATA:BEGIN OF zsfcord OCCURS 50,
aufnr LIKE afpo-aufnr, "工单号
dwerk LIKE afpo-dwerk, "工厂代码
ftrmi TYPE afko-ftrmi, "REL下达日期
idat2 LIKE aufk-idat2, "TECO技术性关闭日期
idat3 LIKE aufk-idat3, "CLSD关闭日期
idat4 LIKE aufk-idat3, ""DLV日期
matnr LIKE afpo-matnr, "料号
maktx LIKE makt-maktx, "料号说明
psmng LIKE afpo-psmng, "订单数量
wemng LIKE afpo-wemng, "入库数量
amein LIKE afpo-amein, "工单计量单位
objnr LIKE aufk-objnr, "内部对象号码
prctr LIKE aufk-prctr, "利润中心
dauat LIKE afpo-dauat, "工单类型
waers LIKE aufk-waers, "工单币别
mtart LIKE mara-mtart, "物料类型
matkl LIKE mara-matkl, "物料组
zzkhjx LIKE ztmm_marc-zzkhjx, "客户机型
zzxmbm LIKE ztmm_marc-zzxmbm, "项目编号
END OF zsfcord.
"取出料号说明
DATA:BEGIN OF i_makt OCCURS 0,
matnr LIKE makt-matnr, "料号
maktx LIKE makt-maktx, "料号说明
mtart LIKE mara-mtart, "物料类型
matkl LIKE mara-matkl, "物料组
zzkhjx LIKE ztmm_marc-zzkhjx, "客户机型
zzxmbm LIKE ztmm_marc-zzxmbm, "项目编号
END OF i_makt.
"读取成本中心说明
DATA:BEGIN OF i_cskt OCCURS 0,
kostl LIKE cskt-kostl,
ktext LIKE cskt-ktext,
END OF i_cskt.
"读取作业类型说明
DATA:BEGIN OF i_cslt OCCURS 0,
lstar LIKE cslt-lstar,
ktext LIKE cslt-ktext,
END OF i_cslt.
"读取成本数据的结构'
TYPES:BEGIN OF zcosumt,
kstar LIKE kkbcs_out-kstar, "成本要素
ktext LIKE kkbct-ktext, "成本要素说明
herku LIKE kkbcs_out-herku, "来源
khetext LIKE kkbct-ktext, "来源说明
planmeng_g LIKE kkbcs_out-planmeng_g, "计划数量
sollmeng_g LIKE kkbcs_out-sollmeng_g, "目标数量
istmeng_g LIKE kkbcs_out-istmeng_g, "实际数量
plankost_g LIKE kkbcs_out-plankost_g, "计划成本
sollkost_g LIKE kkbcs_out-sollkost_g, "目标成本
istkost_g LIKE kkbcs_out-istkost_g, "实际成本
plis_meng_p LIKE kkbcs_out-plis_meng_p, "计划与实际数量的差异=ISTMENG_G - PLANMENG_G
sois_meng_p LIKE kkbcs_out-sois_meng_p, "目标与实际数量的差异= ISTMENG_G - SOLLMENG_G
plis_meng_a LIKE kkbcs_out-plis_meng_a, "实际数量与计划差异比例 =PLIS_MENG_P / PLANMENG_G * 100 %
sois_meng_a LIKE kkbcs_out-sois_meng_a, "实际数量与目标数量差异比例 = SOIS_MENG_P / SOLLMENG_G * 100 %
plis_kost_a LIKE kkbcs_out-plis_kost_a, "计划与实际的差异--金额= ISTKOST -_GPLANKOST_G
sois_kost_a LIKE kkbcs_out-sois_kost_a, "目标与实际的差异--金额= ISTKOST_G - SOLLKOST_G
plis_kost_p LIKE kkbcs_out-plis_kost_p, "计划与实际的差异--比例= PLIS_KOST_A / PLANKOST_G * 100 %
sois_kost_p LIKE kkbcs_out-sois_kost_p, "目标与实际的差异-比例 = SOIS_KOST_A / SOLLKOST_G * 100 %
meinh LIKE kkbcs_out-meinh, "物料或工时的单位
"以下为辅助取数用,并不输出
objnr LIKE coka-objnr, "内部对象号码
hrkft LIKE coka-hrkft, "CO次码
werks LIKE cokey-werks, "物料的工厂
matnr_z LIKE cokey-matnr, "组件物料
maktx_z LIKE makt-maktx, "物料描述
waers LIKE kkbcs_out-waers, "币别
uspob LIKE coss-uspob, "来源对象〈成本中心/作业类型〉
lstar LIKE cslt-lstar, "作业类型
END OF zcosumt.
"读取实际及计划结果用到的内表---物料使用
DATA: BEGIN OF zv OCCURS 0,
twaer LIKE cosp-twaer, "交易币别
objnr LIKE cosp-objnr, "内部对象
kstar LIKE cosp-kstar, "成本要素T
hrkft LIKE cosp-hrkft, "COKEY
wrttp LIKE cosp-wrttp, "实际(04)/计划(04)
vrgng LIKE cosp-vrgng, "商业交易
wog001 LIKE cosp-wtg001, "实际金额
wog002 LIKE cosp-wtg002, "
wog003 LIKE cosp-wtg003, "
wog004 LIKE cosp-wtg004, "
wog005 LIKE cosp-wtg005, "
wog006 LIKE cosp-wtg006, "
wog007 LIKE cosp-wtg007, "
wog008 LIKE cosp-wtg008, "
wog009 LIKE cosp-wtg009, "
wog010 LIKE cosp-wtg010, "
wog011 LIKE cosp-wtg011, "
wog012 LIKE cosp-wtg012, "
meg001 LIKE cosp-meg001, "实际数量
meg002 LIKE cosp-meg002, "
meg003 LIKE cosp-meg003, "
meg004 LIKE cosp-meg004, "
meg005 LIKE cosp-meg005, "
meg006 LIKE cosp-meg006, "
meg007 LIKE cosp-meg007, "
meg008 LIKE cosp-meg008, "
meg009 LIKE cosp-meg009, "
meg010 LIKE cosp-meg010, "
meg011 LIKE cosp-meg011, "
meg012 LIKE cosp-meg012, "
***ADD BY TAO 20121119
wkg001 LIKE cosp-wkg001, "集团币别金额
wkg002 LIKE cosp-wkg002, "
wkg003 LIKE cosp-wkg003, "
wkg004 LIKE cosp-wkg004, "
wkg005 LIKE cosp-wkg005, "
wkg006 LIKE cosp-wkg006, "
wkg007 LIKE cosp-wkg007, "
wkg008 LIKE cosp-wkg008, "
wkg009 LIKE cosp-wkg009, "
wkg010 LIKE cosp-wkg010, "
wkg011 LIKE cosp-wkg011, "
wkg012 LIKE cosp-wkg012, "
**********************20121119
END OF zv.
"读取实际及计划结果用到的内表---报工使用
DATA:BEGIN OF zc OCCURS 0,
twaer LIKE coss-twaer, "交易币别
objnr LIKE coss-objnr, "内部对象
kstar LIKE coss-kstar, "成本要素
wrttp LIKE coss-wrttp, "类型01为计划,04为实际 05为目标
uspob LIKE coss-uspob, "来源对象
wog001 LIKE coss-wog001, "实际金额
wog002 LIKE coss-wog002, "
wog003 LIKE coss-wog003, "
wog004 LIKE coss-wog004, "
wog005 LIKE coss-wog005, "
wog006 LIKE coss-wog006, "
wog007 LIKE coss-wog007, "
wog008 LIKE coss-wog008, "
wog009 LIKE coss-wog009, "
wog010 LIKE coss-wog010, "
wog011 LIKE coss-wog011, "
wog012 LIKE coss-wog012, "
meg001 LIKE coss-meg001, "实际数量
meg002 LIKE coss-meg002,
meg003 LIKE coss-meg003,
meg004 LIKE coss-meg004,
meg005 LIKE coss-meg005,
meg006 LIKE coss-meg006,
meg007 LIKE coss-meg007,
meg008 LIKE coss-meg008,
meg009 LIKE coss-meg009,
meg010 LIKE coss-meg010,
meg011 LIKE coss-meg011,
meg012 LIKE coss-meg012,
wkg001 LIKE coss-wkg001, "集团币别金额
wkg002 LIKE coss-wkg002, "
wkg003 LIKE coss-wkg003, "
wkg004 LIKE coss-wkg004, "
wkg005 LIKE coss-wkg005, "
wkg006 LIKE coss-wkg006, "
wkg007 LIKE coss-wkg007, "
wkg008 LIKE coss-wkg008, "
wkg009 LIKE coss-wkg009, "
wkg010 LIKE coss-wkg010, "
wkg011 LIKE coss-wkg011, "
wkg012 LIKE coss-wkg012, "
lstar LIKE cslt-lstar, "作业类型
END OF zc.
"以下定义用来存放成本要素说明
DATA: BEGIN OF zk OCCURS 10,
kstar LIKE csku-kstar,
ktext LIKE csku-ktext,
END OF zk.
"以下定义用来读取状态表
DATA:BEGIN OF i_jcds OCCURS 50,
aufnr LIKE aufk-aufnr,
objnr LIKE jest-objnr,
udate LIKE aufk-erdat,
stat LIKE jest
