1、业务实现
工单关闭,事务代码:CO02
点击菜单项-功能-限制处理-技术性完成,即关闭工单,点击保存即可。
2、技术实现
为了实现批量关闭工单的需求,需要调用BAPI进行处理。在处理时,需要对关闭的工单进行检查,确保符合关闭条件,具体需要根据实际项目情况而定。
可使用BAPI:BAPI_PRODORD_COMPLETE_TECH批量处理。
BAPI参数声明:
DATA:gt_order TYPE TABLE OF bapi_order_key WITH HEADER LINE,
gt_detail_return TYPE TABLE OF bapi_order_return WITH HEADER LINE,
gs_return TYPE bapiret2.
DATA:lv_message TYPE char200,
lv_check TYPE char1.
传入订单号:
gt_order-order_number = '001000000768'."工单
APPEND gt_order.
调用BAPI:
CALL FUNCTION 'BAPI_PRODORD_COMPLETE_TECH'
* EXPORTING
* SCOPE_COMPL_TECH = '1'
* WORK_PROCESS_GROUP = 'COWORK_BAPI'
* WORK_PROCESS_MAX = 99
IMPORTING
return = gs_return
TABLES
orders = gt_order
detail_return = gt_detail_return.
lv_check = 'S'.
CLEAR:lv_message.
LOOP AT gt_detail_return WHERE type CA 'EAX'.
lv_message = lv_message && gt_detail_return-message.
lv_check = 'E'.
ENDLOOP.
IF lv_check = 'E'.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
ENDIF.
3、查询结果
点击显示,发现技术性完成已经灰掉,证明关闭工单成功。也可以点击撤销技术性完成,即撤销工单关闭。