批量修改工单日期BAPI(获取订单状态+修改工单日期+转换日期格式)

1、STATUS_READ获取订单状态
通过订单的对象号(OR+4位前导0+订单号)到表JEST中取出字段STAT INACT,再去表TJ02T查看STAT对应的描述
Direction
DATA:objnr TYPE aufk-objnr.
objnr = ‘OR000010104580’.,工单需要补齐前导0
DATA:t_status TYPE TABLE OF jstat WITH HEADER LINE.
结果存放在STATUS表中
CALL FUNCTION ‘STATUS_READ’
EXPORTING
client = sy-mandt
objnr = objnr
TABLES
status = t_status
EXCEPTIONS
object_not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
LOOP AT t_status.
IF t_status = ‘I0046’.
WRITE:‘订单已关闭’.
EXIT.
ENDIF.
ENDLOOP.

在这里插入图片描述
在这里插入图片描述
1.5、STATUS_TEXT_EDIT获取订单状态(需选取多个工单状态建议用此BAPI)
对象号OBJNR = AUFK-OBJNR
语言SPRAS = ‘ZH’ or ‘EN’
LINE即为输出的订单状态
在这里插入图片描述

2、BAPI_PRODORD_CHANGE修改工单日期
Direction
CALL FUNCTION ‘BAPI_PRODORD_CHANGE’ "BAPI: Change Production Order
EXPORTING
number = " bapi_order_key-order_number Production Order Number
orderdata = " bapi_pp_order_change Transfer Structure for Changing Production Orders
orderdatax = " bapi_pp_order_changex Transfer Structure for Changing Production Orders
IMPORTING
return = " bapiret2 Return Parameters
order_type = " bapi_order_copy-order_type Order Type
order_status = " bapi_order_status Order Status Indicator
master_data_read = " bapiflag-bapiflag Indicator: Master Data Read
. " BAPI_PRODORD_CHANGE

在这里插入图片描述
在这里插入图片描述
3、CONVERT_DATE_TO_EXTERNAL数字日期格式转换为系统日期格式

Direction
1 DATA date2(10) TYPE c.
2
3 CALL FUNCTION ‘CONVERT_DATE_TO_EXTERNAL’
4 EXPORTING
5 date_internal = ‘20201029’
6 IMPORTING
7 date_external = date2 "根据用户日期格式参数输出:YYYY.MM.DD
8 EXCEPTIONS
9 date_internal_is_invalid = 1
10 OTHERS = 2.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值