参考tcode : ck11n
selections texts
P_LEVEL 显示多层数
R_REP1 PPC1:是核算标准BOM与标准工艺路线
R_REP2 PPC6:是核算标准BOM与生产工艺路线
R_REP3 ZHL1:是核算生产BOM与生产工艺路线
R_REP4 ZHL3:是核算生产BOM与标准工艺路线
S_MATNR 成品号
************************************************************************
* PROGRAM NAME : 成品标准人工工时统计报表 *
* APPLICATION NAME : CO-PC *
* SUBSYSTEM : *
* AUTHOR : kevin *
* TRANSACTION : YCO11 *
* PROGRAM TYPE : Report *
* INPUT FILES : *
* OUTPUT FILES : *
* PROGRAM ID : YCOR0011 *
*&---------------------------------------------------------------------*
*& REVISION LOG *
*& LOG# DATE AUTHOR DESCRIPTION *
*& ---- ---- ------ ----------- *
*& 001 2009/07/02 kevin.zou Created *
************************************************************************
*& 修改日期:2010.07.23
*& 修 改 人:zhouxu V1.0
*& 修改原因:1 工时计算有误差
*& 修改日期:2010.08.12
*& 修 改 人:zhouxu V11
*& 修改原因:1 替代件
*& 修改日期:2010.08.12
*& 修 改 人:zhouxu V12
*& 修改原因:1 替代件
REPORT ycor0011 MESSAGE-ID oo.
TABLES: mara,
makt,stpo,stko,mapl,mast.
TYPE-POOLS: slis, icon.
*&---------------------------------------------------------------------*
*& DECLARE
*&---------------------------------------------------------------------*
*** 通用变量
DATA: v_dbcnt(10) TYPE c,
v_msg TYPE string,
v_check(01) TYPE c,
v_repid LIKE sy-repid,
is_alv_disvariant LIKE disvariant,
is_alv_print TYPE slis_print_alv,
is_alv_layout TYPE slis_layout_alv,
it_alv_events TYPE slis_t_event,
it_alv_sort TYPE slis_t_sortinfo_alv WITH HEADER LINE,
is_alv_fieldcat TYPE slis_fieldcat_alv,
it_alv_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE.
DATA: baseqty LIKE stko-bmeng.
*** 成品变量
DATA: BEGIN OF finish_good OCCURS 0,
matnr LIKE mara-matnr, " 成品名
mtart LIKE mara-mtart, " 物料类型
bmeng LIKE stko-bmeng, "成品基础数量
END OF finish_good.
*** 取数内表
DATA:BEGIN OF l_item,
finish_good LIKE mara-matnr, "成品
matnr LIKE mara-matnr, "直系父件
itemno LIKE mara-matnr, "子件
maktx TYPE maktx,
mtart LIKE mara-mtart, " 物料类型
stufe TYPE histu, "Level
wegxx TYPE cs_e_vwegx, "ID in Level
vwegx TYPE wegxx, "parent ID of parent level
menge TYPE kmpmg, "组件数量
xmeng TYPE cs_e_xbmng, "下一次基数
bmsch TYPE bmsch,"工艺路线基数
workcenter TYPE crhd-arbpl," 工作中心
lob TYPE vgwrt, "产品基础数BMSCH=1 时的标准人工时
plnnr LIKE mapl-plnnr,
ausch TYPE cs_e_ausch, " 组件报废率
disst LIKE stpox-disst , "底层码 v1.0
dumps LIKE stpox-dumps, "虚拟件标志 v1.0
xtlnr LIKE stpox-xtlnr, "子编号 V1.0
stlnr LIKE stpox-stlnr, "当前编号 V1.0
stlkn LIKE stpox-stlkn,"BOM 项目节点号 V1.0
stpoz LIKE stpox-stpoz,"当前所处内部计数器 V1.0
* VWEGX like stpox-VWEGX,"父节点V1.0
* wegxx like stpox-wegxx,"节点号V1.0
* Bicon TYPE C, "指示灯
* Ricon TYPE C, "指示灯
END OF l_item.
DATA: BEGIN OF matcat OCCURS 1000.
INCLUDE STRUCTURE cscmat.
DATA: END OF matcat.
***替代中间半品
DATA: BEGIN OF v_item,
finish_good LIKE mara-matnr, "成品
matnr LIKE mara-matnr, "直系父件
itemno LIKE mara-matnr, "子件
END OF v_item.
DATA: tv_item LIKE TABLE OF l_item WITH HEADER LINE. "存放全部的BOM不可用替代中间半品
DATA: t_item3 LIKE TABLE OF l_item WITH HEADER LINE. "存放虚拟件节点的BOM
DATA: t_item2 LIKE TABLE OF l_item WITH HEADER LINE. "存放全部的BOM
DATA: t_item LIKE TABLE OF l_item WITH HEADER LINE. "存放全部的BOM
***ALV view
DATA: BEGIN OF l_alv OCCURS 0,
finish_good LIKE mara-matnr, "成品
matnr LIKE mara-matnr, "直系父件
itemno LIKE mara-matnr, "子件
maktx LIKE makt-maktx, "描述
mtart LIKE mara-mtart, "物料类型
matkl LIKE mara-matkl, "物料组
ersda LIKE mara-ersda, "创建日期
vpsta LIKE mara-vpsta, "维护全部物料状态
mstae LIKE mara-mstae, "跨工厂物料状态
lvorm LIKE mara-lvorm, "在客户级标记要删除的物料
l001_h TYPE vgwrt,
l002_h TYPE vgwrt,
l003_h TYPE vgwrt,
l005_h TYPE vgwrt,
l006_h TYPE vgwrt,
l008_h TYPE vgwrt,
l009_h TYPE vgwrt,
l011_h TYPE vgwrt,
* l012_h TYPE vgwrt,
l013_h TYPE vgwrt, "V1.0 ADD
* l014_h TYPE vgwrt,
* l015_h TYPE vgwrt,
* l016_h TYPE vgwrt,
* l017_h TYPE vgwrt,
* l018_h TYPE vgwrt,
* l019_h TYPE vgwrt,
* l020_h TYPE vgwrt,
level TYPE histu,
total_h TYPE vgwrt,
xtlnr LIKE stpox-xtlnr, "子编号 V1.0
stlnr LIKE stpox-stlnr, "当前编号 V1.0
stlkn LIKE stpox-stlkn,"BOM 项目节点号 V1.0
stpoz LIKE stpox-stpoz,"当前所处内部计数器 V1.0
vwegx LIKE stpox-vwegx, "父节点V1.0
wegxx LIKE stpox-wegxx, "节点号V1.0
xmeng TYPE cs_e_xbmng, "下一次基数
* Bicon TYPE icon_d, "指示灯
* icon TYPE icon_d, "指示灯
END OF l_alv.
DATA: t_alv LIKE TABLE OF l_alv WITH HEADER LINE. "存放全部的BOM
*临时变量
DATA: bom_usage TYPE c VALUE '6',
valid_from LIKE csap_mbom-datuv.
*&---------------------------------------------------------------------*
*& SELECTION-SCREEN
*&---------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK bl WITH FRAME TITLE text-t01.
SELECT-OPTIONS: s_matnr FOR mara-matnr MODIF ID g1 .
PARAMETERS: p_level TYPE c AS CHECKBOX.
*PARAMETERS: p_kadat LIKE sy-datum OBLIGATORY DEFAULT sy-datum MODIF ID g1.
PARAMETERS: r_rep1 RADIOBUTTON GROUP rad1 DEFAULT 'X' USER-COMMAND dummy,
r_rep2 RADIOBUTTON GROUP rad1,
r_rep3 RADIOBUTTON GROUP rad1,
r_rep4 RADIOBUTTON GROUP rad1.
SELECTION-SCREEN END OF BLOCK bl.
*&---------------------------------------------------------------------*
*& INITIALIZATION
*&---------------------------------------------------------------------*
INITIALIZATION.
*&---------------------------------------------------------------------*
*& Event AT SELECTION-SCREEN OUTPUT 用户事件
*&---------------------------------------------------------------------*
*AT SELECTION-SCREEN OUTPUT.
* PERFORM check_hide.
*&---------------------------------------------------------------------*
*& START-OF-SELECTION
*&---------------------------------------------------------------------*
START-OF-SELECTION.
IF s_matnr IS INITIAL AND s_matnr[] IS INITIAL.
MESSAGE '请输入物料号!' TYPE 'I'.
EXIT.
ENDIF.
PERFORM check_authority_value.
PERFORM get_mm_data.
* PERFORM process_data.
* PERFORM set_vari CHANGING is_alv_disvariant.