SAP 实用篇

SAP 批量扩充库位地点(根据物料组)

2018-04-03  本文已影响522人  图逗

程序用处:1)根据物料工厂创建日期,SAP根据自定义物料组库位地点维护表,自动跑物料库位扩充; 2)减少人工维护时间,提高工作效率; 3)使用变式,晚上运行JOB;

程序涉及表:MARA,MARD,MSTA,MARDX;程序涉及函数:BAPI_MATERIAL_SAVEREPLICA;

屏幕界面格式

批量扩充物料库位地点

屏幕界面格式要求:

如上图所示:

1.“运行模式”选框中,“测试运行”默认选中;

2.“运行模式”中,若选中“正式运行”时,则"处理模式”选择框自动显示;

3.“处理模式”选框中,前端处理默认选中;

4.“处理模式”选框中,若选中“后台会话”,则“作业名称”自动显示,否则默认隐藏;

5.作业名称其名称为MMSC_MASS_UF,且不允许修改会话名称;

6.选中条件中,工厂必填,创建日期默认当前日期;

7.点击“物料组库存地点维护”按钮,自动跳转到物料组库存地点维护自定义表;

物料组库存地点维护自定义表:

ZTMMxx-自定义物料组库位扩充表

程序执行结果样式:

扩充物料库位地点程序执行结果样式

程序执行过程中,调用函数: BAPI_MATERIAL_SAVEREPLICA 进行物料主数据扩展;

调用函数 BAPI_MATERIAL_SAVEREPLICA 进行数据处理;

运行基本原理:

调用MARC,MARA,MSTA,获取需要扩充的物料,工厂,库位地点;

1)当MARC-WERKS=='所选工厂',MARC-MATNR='所选物料',MSTA-ERSDA =='所选创建日期',且MARC-WERKS==MSTA-WERKS,MARC-MATNR==MSTA-MATNR,MARC-=='L',读取需扩充的物料,工厂;

2)根据上述(1)获取到的物料、工厂,结合MARA和自定义表ZTMMXX(物料组库位地点扩充),当MARA-MATNR='上述获取到的物料',MARA-MATKL==ZTMMXX-MATKL,ZTMMXX-WERKS=='上述获取到的工厂',获取需扩充的物料、工厂、库位地点;

3)根据上述(2)获取到的物料,工厂,库位地点,读取MARD,将已扩充的物料、工厂、库位地点排除掉,需扩充的物料、工厂、库位地点;

4)根据上述(3)获取到的物料,调用函数 BAPI_MATERIAL_SAVEREPLICA 进行MARD,MARDX进行扩展;扩展成功,则维护状态为绿灯,并获取消息;扩展失败,则维护状态为红灯,并获取消息;

      若“运行模式”单选为“测试运行”则进行测试扩充;

      若“运行模式”单选为“正式运行”则进行正式扩充;

      若“处理模式”单选为“前台设置”则进行前台处理;

      若“处理模式”单选为“后台会话"则进行后台处理;

上一篇下一篇

猜你喜欢

热点阅读