直接调用SAP ATP检查函数来模拟销售订单的ATP检查

直接调用SAP ATP检查函数来模拟销售订单的ATP检查

通过函数AVAILABILITY_CHECK_S4,可以直接模拟类似与销售订单中的ATP检查的效果,该函数不仅能模拟销售订单的创建,配合函数DELTA_MANAGEMENT还能模拟已确认过的数量重确认在这里插入图片描述
*代码如下:
DATA LS_ATPCA TYPE ATPCA.
LS_ATPCA-ANWDG = ‘5’. "SO
LS_ATPCA-ANWDG2 = ‘5’. "SO
LS_ATPCA-AZERG = ‘Z’.
LS_ATPCA-RDMOD = ‘A’. "总计记录
LS_ATPCA-MSGINIT = ‘D’. "未执行初始化
DATA LS_ATPCS TYPE ATPCS.
DATA LT_ATPCS TYPE TABLE OF ATPCS.
LS_ATPCS-MATNR = ‘111111’. "物料
LS_ATPCS-WERKS = ‘PL01’."工厂
LS_ATPCS-BERID = ‘PL01’."MRP范围
LS_ATPCS-PRREG = ‘A’. "可用性检查规则 A - SOLS_ATPCS-CHMOD = ‘011’."table T459-BDART + PLART
LS_ATPCS-DELKZ = ‘VC’. "销售订单
LS_ATPCS-DELNR = ‘0090103810’. "销售订单
LS_ATPCS-DELPS = ‘000010’. "销售订单行项目
LS_ATPCS-DELET = ‘0001’. "销售订单计划行项目
LS_ATPCS-BDART = ‘01’."T459a-bedar+0(2)
LS_ATPCS-PLART = ‘1’. "T459a-bedar+2(1)
LS_ATPCS-VBTYP = ‘C’. "SO
LS_ATPCS-TZONE = ‘UTC+8’. "时区
LS_ATPCS-BDTER = ‘20200526’. "需求日
LS_ATPCS-BDMNG = ‘200’. "需求数量
LS_ATPCS-XLINE = ‘1’. "在ATPCS内表中的索引LS_ATPCS-XLINE = ‘0’.
LS_ATPCS-AUFWG = ‘00’.
LS_ATPCS-AUFST = ‘00’.
LS_ATPCS-ALPRF = ‘00’.
LS_ATPCS-UMREN = ‘1’.
LS_ATPCS-UMREZ = ‘1’.
LS_ATPCS-IDXATP = ‘1’.
LS_ATPCS-IDXPLN = ‘0’.
LS_ATPCS-IDXALL = ‘0’.
LS_ATPCS-MNTGA = ‘0’.
LS_ATPCS-RESMD = ‘X’.
LS_ATPCS-CHKFLG = ‘X’.
LS_ATPCS-ENQFLG = ‘X’.
LS_ATPCS-SUMBD = ‘A’.
LS_ATPCS-MEINS = ‘ST’. "物料基本单位
LS_ATPCS-WETZON = ‘UTC+8’. "时区
LS_ATPCS-LFREL = ‘X’.
LS_ATPCS-GEWEI = ‘KG’.
APPEND LS_ATPCS TO LT_ATPCS.
DATA: L_ATPDT LIKE ATPDT.
L_ATPDT-ATPAP = ‘SO’.
L_ATPDT-ATPTK = ‘VB’.
L_ATPDT-OLDAV = ‘X’.
L_ATPDT-NEWAV = ‘X’.
L_ATPDT-DELST = ‘C’.

DATA P_YVBBE TYPE TABLE OF ATP_VBBE_EXT.

SELECT *
INTO CORRESPONDING FIELDS OF TABLE P_YVBBE FROM VBBE
WHERE VBELN = ‘0090103810’
AND POSNR = ‘000010’."把已确认的销售订单数量还给库存

CALL FUNCTION ‘DELTA_MANAGEMENT’
EXPORTING
P_ATPDT = L_ATPDT
TABLES
P_VBBEOX = P_YVBBE
P_VBBENX = P_YVBBE
EXCEPTIONS
OTHERS = 0.

DATA P_MDVEX TYPE TABLE OF MDVE.

CALL FUNCTION ‘AVAILABILITY_CHECK_S4’
TABLES
P_ATPCSX = LT_ATPCS
P_MDVEX = P_MDVEX "ATP的结果信息存在该表中* CHANGING
P_ATPCA = LS_ATPCA
EXCEPTIONS
ERROR = 1
OTHERS = 2.
IF SY-SUBRC <> 0.

ENDIF.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值