程序说明书配套发料.docx
- 文档编号:30157241
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:20
- 大小:159.31KB
程序说明书配套发料.docx
《程序说明书配套发料.docx》由会员分享,可在线阅读,更多相关《程序说明书配套发料.docx(20页珍藏版)》请在冰豆网上搜索。
程序说明书配套发料
配套发料
程序名:
ZMMR0011_PTFL,ZMMR0012_FHGZ,ZMMR0013_PTFLCD
事务代码:
ZMM011,ZMM012,ZMM013
版本:
1.0
第一部分:
版本控制
版本号
日期
作者
注释
1.0
2009-05-10
初始草稿
第二部分:
审批签署
项目职位
审批签署
日期
项目经理
业务部门用户
部咨询/开发人员
第三部分:
背景
第四部分:
概览
部门名称
仓库
流程名称
GL_MM_090
系统名称
功能定义
本程序将实现以下功能:
•生成、打印配套发料单
•配套发料单过帐
•配套发料单重打印
辅助功能:
•供应商-零件关系表维护
假设前提
考虑到系统性能的影响,建议对ZMMT003,ZMMT004,ZMMT005三个自定义表进行定期的数据备份:
•ZMMT003:
按需求日期选择数据备份
•ZMMT004:
按输入日期选择数据备份
•ZMMT005:
按发料单号选择数据备份
权限控制
SAP事务代码控制运行
程序执行频率/效率
按需
第五部分:
程序逻辑
配套发料单生成及打印:
配套发料单过帐:
供应商-零件关系维护:
配套发料单重打印:
第六部分:
输入部分
配套发料单生成及打印:
输入检查:
•工厂:
必输
配套发料单过帐:
输入检查:
•工厂:
必输
•过帐日期:
必输,缺省为系统当天
•发料单号:
必输
供应商-零件关系维护:
屏幕:
工厂
物料号
供应商代码
配套发料单重打印:
输入检查:
•工厂:
必输
•发料单号:
必输
第七部分:
操作
配套发料单生成及打印:
1.用户按F8执行后,根据输入的工厂、出库地点、入库地点、物料号、生产订单号、计划订单号、需求日期,读表RESB、MARC:
SELECTRSNUM,RSPOS,BDART,XLOEK,MATNR,WERKS,LGORT,BDTER,BDMNG-ENMNG,MEINS,PLNUM,AUFNR,LGFSB
FROMRESB,MARC
WHERE根据WERKS和MATNR连接RESB、MARC表AND
WERKS=输入工厂AND
LGORTIN输入的入库地点围AND
MATNRIN输入的物料号围AND
MATNR物料主数据中MARC-LGFSBIN输入的地点AND
BDTERIN输入的需求日期围AND
((PLNUMIN输入的计划订单围ANDBDART=’SB’)OR(AUFNRIN输入的生产订单围ANDBDART=’AR’))
其中:
BDMNG–ENMNG为预留总数减去已提货数
2.将上步得到的结果写入临时表ZMMT003_TMP:
字段名称
写入容
计算方法
WERKS
步骤1中数据
RSNUM
步骤1中数据
RSPOS
步骤1中数据
ZFRMSLOC
步骤1中数据,LGFSB
ZTOSLOC
步骤1中数据,LGORT
MATNR
步骤1中数据
BDMNG
步骤1中数据
BDTER
步骤1中数据,BDTER
ZREQQTY
净需求
按WERKS,RSNUM,RSPOS汇总ZMMT004,计算该RSNUM/RSPOS组合的累计发货数(∑ZISSUEQTY),计算BDMNG-ENMNG–累计发货数。
如差值大于0,写入差值,否则不写入ZMMT003_TMP
ZFLDNO
发料单号,置空
ZFLDPOS
发料单行项目号,置空
3.计算发料汇总表临时表ZMMT005_TMP:
将ZMMT003_TMP中的数据按WERKS,MATNR,ZFRMSLOC,ZTOSLOC汇总,并写入临时表ZMMT005_TMP
字段名称
写入容
计算方法
WERKS
工厂
ZFLDNO
发料单号,置空
ZFLDPOS
发料单行项目号
从1开始递增,并根据WERKS,MATNR,ZFRMSLOC,ZTOSLOC写回ZMMT003_TMP-ZFLDPOS
ZSPLIT
供应商分割号
写入初始值1
ZFRMSLOC
出库地点
ZTOSLOC
入库地点
MATNR
物料号
BDMNG
汇总ZMMT003_TMP-BDMNG
ZREQQTY
汇总ZMMT003_TMP-ZREQQTY
ZPLANQTY
计划数量
在LIFNR计算完成后,根据得到的结果(LIFNR)判断库存数是否够,ZPLANQTY=MIN(库存数,ZREQQTY)
LIFNR
供应商
根据WERKS,MATNR在表ZMMT001中查询,如查询结果不空,将查询结果写入本字段,否则置空
ZSTATUS
初始状态:
空
4.在屏幕上显示ZMMT005_TMP,其中ZPLANQTY,LIFNR字段可供用户修改
提供2个操作功能:
•保存
1)将ZMMT005_TMP写入ZMMT005,其中ZFLDNO自动产生(可以考虑建立自定义numberrange),ZFLDPOS为每个ZFLDNO从1开始递增,
2)写入同时根据ZMM005T更新ZMMT001,根据WERKS,MATNR,LIFNR更新ZMMT001,如存在WERKS,ZFRMSLOC,ZTOSLOC,MATNR,LIFNR的多条记录,则任意选择一个更新ZMMT001
3)将ZMMT003_TMP写入ZMMT003,其中ZFLDNO与步骤1)中的相同
•打印
1)根据ZMMT005中的容打印发料单
配套发料单过帐:
1.用户按F8执行后,根据输入的工厂、发料单号,读表ZMMT005:
SELECT*FROMZMMT005
WHEREWERKS=输入的工厂ANDZFLDNO=输入的发料单号ANDZSTATUS=空
2.显示步骤1读取结果,其中ZPLANQTY,LIFNR字段可供用户修改
提供功能:
•新增行:
用户在显示屏幕上选择新增一个行项目,新增行项目时必须事先选定需要拷贝的ZFLDNO/ZFLDPOS,新增行项目的ZSPLIT=被拷贝行的ZSPLIT+1。
用户确认之后更新ZMMT005
3.提供功能:
•保存
1)选择过帐记录:
对步骤2中的结果,用户可以选择其中全部或者部分记录
2)点击“保存”,对步骤1)中的选择记录进行过帐(BAPI函数BAPI_GOODSMVT_CREATE)
a)过帐日期为屏幕输入的过帐日期
b)对LIFNR不空的记录,移动类型=411K;LIFNR为空的记录,移动类型=411
c)工厂=WERKS,出库地点=ZFRMSLOC,入库地点=ZTOSLOC
d)过帐数量为ZPLANQTY
3)对步骤2)中过帐成功的每一个记录,按ZFLDNO/ZFLDPOS汇总(即:
如有多个ZSPLIT,需要合并在一起统计):
WERKS,ZFRMSLOC,ZTOSLOC,MATNR,LIFNR,ZPLANNQTY
a)更新ZMMT005:
根据WERKS,ZFLDNO,ZFLDPOS修改ZSTATUS=X
b)更新ZMMT001:
根据WERKS,MATNR,LIFNR更新ZMMT001
c)更新ZMMT004
i.根据WERKS,ZFLDNO,ZFLDPOS,查询ZMMT003,得到多条记录:
WERKS,RSNUM,RSPOS,ZFRMSLOC,ZTOSLOC,MATNR,BDMNG,ZREQQTY,ZFLDNO,ZFLDPOS
ii.上步i)中得到的多条记录,按WERKS,RSNUM,RSPOS由小到大排序,并按排序次序依次用ZREQQTY扣减步骤2)中的过帐数量ZPLANQTY,直到ZPLANQTY为负值,并逐条写入表ZMMT004:
字段名称
写入容
计算方法
WERKS
步骤3)中的WERKS
ZLOGNO
唯一的发货日志号,可考虑自定义的numberrange
RSNUM
步骤3)中的RSNUM
RSPOS
步骤3)中的RSPOS
ZFRMSLOC
步骤3)中的ZFRMSLOC
ZTOSLOC
步骤3)中的ZTOSLOC
MATNR
步骤3)中的MATNR
ZISSUEQTY
IFZPLANQTY>0THEN
IFZPLANQTY>=ZREQQTYTHENZISSUEQTY=ZREQQTY
ZPLANQTY=ZPLANQTY-ZREQQTY
ELSE
ZISSUEQTY=ZPLANQTY
ENDIF
ELSE
结束本次ZFLDNO/ZFLDPOS处理,回到步骤3)处理下一个ZFLDNO/ZFLDPOS
ENDIF
LIFNR
步骤3)中的LIFNR
因ZSPLIT的关系,可能有多个供应商,此处只能写1个
ZFLDNO
步骤3)中的ZFLDNO
ZFLDPOS
步骤3)中的ZFLDPOS
ZDATE
当前日期
ZTIME
当前时间
ZUSNAM
当前用户
MBLNR
步骤2)产生的物料凭证号
4)步骤3)处理完毕后,自动刷新屏幕,显示ZMMT005中ZSTATUS为空的记录
•刷新:
刷新屏幕,显示ZMMT005中ZSTATUS为空的记录
供应商-零件关系维护:
1.参照SM30建立表维护屏幕,供用户直接维护ZMMT001
配套发料单重打印:
1.用户按F8执行后,根据输入的工厂、发料单号,读表ZMMT005:
SELECT*FROMZMMT005
WHEREWERKS=输入的工厂ANDZFLDNO=输入的发料单号ANDZSTATUS=空
2.打印输出
第八部分:
输出
配套发料单生成及打印:
配套发料单过帐:
供应商-零件关系维护:
配套发料单重打印:
第九部分:
自定义数据表
ZMMT001:
供应商-零件对应关系表
字段名称
数据元素
字段类型
字段长度
小数点位数
检查表
文本
注释
WERKS
WERKS_D
PK
MATNR
MATNR
PK
LIFNR
LIFNR
ZMMT003:
发料单详细记录表
字段名称
数据元素
字段类型
字段长度
小数点位数
检查表
文本
注释
WERKS
WERKS_D
PK
RSNUM
RSNUM
PK,预留/相关需求的编号
RSPOS
RSPOS
PK,预留/相关需求的项目编号
ZFRMSLOC
LGORT_D
出库地点
ZTOSLOC
LGORT_D
入库地点
MATNR
MATNR
BDMNG
BDMNG
预留需求数
BDTER
BDTER
需求日期
ZREQQTY
BDMNG
净需求数
ZFLDNO
CHAR
7
唯一的发料单号,1000000-9999999
ZFLDPOS
RSPOS
发料单行项目号
ZMMT004:
实际发货记录表
字段名称
数据元素
字段类型
字段长度
小数点位数
检查表
文本
注释
WERKS
WERKS_D
PK
ZLOGNO
CHAR
10
PK,发货记录号
RSNUM
RSNUM
预留/相关需求的编号
RSPOS
RSPOS
预留/相关需求的项目编号
ZFRMSLOC
LGORT_D
出库地点
ZTOSLOC
LGORT_D
入库地点
MATNR
MATNR
ZISSUEQTY
BDMNG
计划发货数
LIFNR
LIFNR
供应商
ZFLDNO
CHAR
7
唯一的发料单号
ZFLDPOS
RSPOS
发料单行项目号
ZDATE
DATE
记帐日期
ZTIME
TIME
记帐时间
ZUSNAM
USNAM
记帐用户
MBLNR
MBLNR
物料凭证号
ZMMT005:
发料单详细汇总表
字段名称
数据元素
字段类型
字段长度
小数点位数
检查表
文本
注释
WERKS
WERKS_D
PK
ZFLDNO
CHAR
7
PK,唯一的发料单号
ZFLDPOS
RSPOS
PK,发料单行项目号
ZSPLIT
INTEGER
供应商分割号,每个ZFLDNO/ZFLDPOS开始计数,从1开始递增
ZFRMSLOC
LGORT_D
出库地点
ZTOSLOC
LGORT_D
入库地点
MATNR
MATNR
BDMNG
BDMNG
汇总的预留需求数
ZREQQTY
BDMNG
汇总的净需求数
ZPLANQTY
BDMNG
计划发货数
LIFNR
LIFNR
供应商
ZSTATUS
CHAR
1
发料单行项目状态
第十部分:
技术实现
第十一部分:
其它
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序 说明书 配套