ZSDR101-跑成品MRP
2015-09-22 17:01
447 查看
*&---------------------------------------------------------------------*
*& Report ZSDR101
*&
*&---------------------------------------------------------------------*
*&跑成品MRP
*&
*&---------------------------------------------------------------------*
REPORT zsdr101.
DATA: i_mrp_plan_param LIKE bapi_mrp_plan_param OCCURS 0 WITH HEADER LINE,
i_mrp_statistic LIKE bapi_mrp_statistic OCCURS 0 WITH HEADER LINE,
i_return LIKE bapiret2 OCCURS 0 WITH HEADER LINE.
DATA:BEGIN OF i_mara OCCURS 0,
matnr LIKE mara-matnr,
werks LIKE marc-werks,
END OF i_mara.
DATA:i_dismm LIKE marc-dismm,
i_mmsta LIKE marc-mmsta.
INITIALIZATION.
START-OF-SELECTION.
PERFORM getdata.
*&---------------------------------------------------------------------*
*& Form getdata
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM getdata.
SELECT * INTO CORRESPONDING FIELDS OF TABLE i_mara
FROM mara AS a JOIN marc AS b
ON a~matnr = b~matnr
WHERE a~mtart ='FERT'
AND a~lvorm = ''
AND b~lvorm = ''
AND ( b~werks = '3110' OR b~werks = '3120' OR b~werks = '3220' OR b~werks = '3130')
AND mstae = ''. "跨工厂物料状态冻结去掉,在物料主档基础数据1视图
REFRESH: i_mrp_plan_param.
i_mrp_plan_param-proc_type = 'NETCH'.
i_mrp_plan_param-create_purreq = '2'.
i_mrp_plan_param-create_sched_lines = '3'.
i_mrp_plan_param-create_mrp_list = '1'.
i_mrp_plan_param-planning_mode = '1'.
APPEND i_mrp_plan_param.
LOOP AT i_mara.
* select single DISMM MMSTA from MARC into (I_DISMM,I_MMSTA)
* where MATNR = I_MARA-MATNR and WERKS = '1000'.
SELECT SINGLE dismm FROM marc INTO (i_dismm)
WHERE matnr = i_mara-matnr AND werks = i_mara-werks.
IF sy-subrc = 4.
CONTINUE.
ELSEIF sy-subrc = 0.
IF i_dismm = 'ND'.
CONTINUE.
ENDIF.
* IF i_MMSTA ne ''. “特定工厂物料状态去掉,在MRP视图
* CONTINUE.
* ENDIF.
ENDIF.
CALL FUNCTION 'BAPI_MATERIAL_PLANNING'
EXPORTING
material = i_mara-matnr
plant = i_mara-werks
* MRP_AREA =
* PLAN_SCENARIO =
mrp_plan_param = i_mrp_plan_param
* MATERIAL_EVG =
IMPORTING
mrp_statistic = i_mrp_statistic
return = i_return.
* TABLES
* MRP_LISTS =
* EXTENSIONOUT =
WRITE AT: /2(18) i_mara-matnr , 22(220) i_return-message.
CLEAR:i_dismm, i_mmsta.
CLEAR:i_mara.
ENDLOOP.
ENDFORM. "getdata
*& Report ZSDR101
*&
*&---------------------------------------------------------------------*
*&跑成品MRP
*&
*&---------------------------------------------------------------------*
REPORT zsdr101.
DATA: i_mrp_plan_param LIKE bapi_mrp_plan_param OCCURS 0 WITH HEADER LINE,
i_mrp_statistic LIKE bapi_mrp_statistic OCCURS 0 WITH HEADER LINE,
i_return LIKE bapiret2 OCCURS 0 WITH HEADER LINE.
DATA:BEGIN OF i_mara OCCURS 0,
matnr LIKE mara-matnr,
werks LIKE marc-werks,
END OF i_mara.
DATA:i_dismm LIKE marc-dismm,
i_mmsta LIKE marc-mmsta.
INITIALIZATION.
START-OF-SELECTION.
PERFORM getdata.
*&---------------------------------------------------------------------*
*& Form getdata
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM getdata.
SELECT * INTO CORRESPONDING FIELDS OF TABLE i_mara
FROM mara AS a JOIN marc AS b
ON a~matnr = b~matnr
WHERE a~mtart ='FERT'
AND a~lvorm = ''
AND b~lvorm = ''
AND ( b~werks = '3110' OR b~werks = '3120' OR b~werks = '3220' OR b~werks = '3130')
AND mstae = ''. "跨工厂物料状态冻结去掉,在物料主档基础数据1视图
REFRESH: i_mrp_plan_param.
i_mrp_plan_param-proc_type = 'NETCH'.
i_mrp_plan_param-create_purreq = '2'.
i_mrp_plan_param-create_sched_lines = '3'.
i_mrp_plan_param-create_mrp_list = '1'.
i_mrp_plan_param-planning_mode = '1'.
APPEND i_mrp_plan_param.
LOOP AT i_mara.
* select single DISMM MMSTA from MARC into (I_DISMM,I_MMSTA)
* where MATNR = I_MARA-MATNR and WERKS = '1000'.
SELECT SINGLE dismm FROM marc INTO (i_dismm)
WHERE matnr = i_mara-matnr AND werks = i_mara-werks.
IF sy-subrc = 4.
CONTINUE.
ELSEIF sy-subrc = 0.
IF i_dismm = 'ND'.
CONTINUE.
ENDIF.
* IF i_MMSTA ne ''. “特定工厂物料状态去掉,在MRP视图
* CONTINUE.
* ENDIF.
ENDIF.
CALL FUNCTION 'BAPI_MATERIAL_PLANNING'
EXPORTING
material = i_mara-matnr
plant = i_mara-werks
* MRP_AREA =
* PLAN_SCENARIO =
mrp_plan_param = i_mrp_plan_param
* MATERIAL_EVG =
IMPORTING
mrp_statistic = i_mrp_statistic
return = i_return.
* TABLES
* MRP_LISTS =
* EXTENSIONOUT =
WRITE AT: /2(18) i_mara-matnr , 22(220) i_return-message.
CLEAR:i_dismm, i_mmsta.
CLEAR:i_mara.
ENDLOOP.
ENDFORM. "getdata
相关文章推荐
- C语言:n=(i=2,++i)什么意思?结果是什么?
- 自定义view引起的错误:No resource identifier found for attribute *in package *
- maven中依赖包的问题
- centos7.0体验与之前版本的不同
- ClassLoader加载指定的类需注意六个细节或报ClassNotFundEception异常总结
- Ubuntu 14.04 安装jdk1.6
- Android 一个Activity里面2个ListView垂直排列,动态设置ListView高度
- 解决Admob Banner首次展示不显示的问题
- ZSDR100 跑原材料MRP
- short,int,float,long,double
- Android基础:数据存储(一):文件存储
- bash: ./arm-linux-gcc : No such file or directory
- Uri详解之二——通过自定义Uri外部启动APP与Notification启动
- java SE复习笔记40
- 【Linux】VMware中Redhat9下安装VMTools
- ZSDRM001-发货清单
- PHP非阻塞模式
- windows下使用git
- pat1001,3n+1猜想
- Android之Android Studio常用插件