接到一個任務,需要在QP02檢驗計劃中,將多餘的物料指派信息刪除,如下圖
選中某個行,將指派的物料刪除
這個需要轉成BAPI實現,代碼如下
DATA LT_RETURN LIKE TABLE OF BAPIRET2 WITH HEADER LINE.
DATA LT_MAT LIKE TABLE OF BAPI_ES_TASK_MAINT_MTK WITH HEADER LINE.
DATA LT_MATX LIKE TABLE OF BAPI_ES_TASK_MAINT_MTK_X WITH HEADER LINE.
LT_MAT-MATERIAL = 'PG001_QTEST1'.
LT_MAT-PLANT = '1120'.
LT_MAT-MAINTAIN_MODE = 'D'.
APPEND LT_MAT.
* LT_MATX-MATERIAL = 'X'.
* LT_MATX-PLANT = 'X'.
* APPEND LT_MATX.
*CP_TASK_LIST_MAINT_MODE
CALL FUNCTION 'BAPI_INSPECTIONPLAN_CHANGE'
EXPORTING
* CHANGE_NO =
KEY_DATE = SY-DATUM
GROUP = 'QMT00001'
GROUPCOUNTER = '01'
MATERIAL = 'PG001_QTEST1'
PLANT = '1120'
* TASK =
* TASK_X =
* MATERIAL_LONG =
TABLES
MATERIAL_TASK_ALLOCATIONS = LT_MAT
MATERIAL_TASK_ALLOCATIONS_X = LT_MATX
* SEQUENCES =
* SEQUENCES_X =
* OPERATIONS =
* OPERATIONS_X =
* SUBOPERATIONS =
* SUBOPERATIONS_X =
* PRODUCTION_RESOURCES_TOOLS =
* PRODUCTION_RESOURCES_TOOLS_X =
* INSPECTION_CHARACTERISTICS =
* INSPECTION_CHARACTERISTICS_X =
* INSPECTION_VALUES =
* INSPECTION_VALUES_X =
* REFERENCED_OPERATIONS =
* TEXT =
* TEXT_ALLOCATIONS =
RETURN = LT_RETURN[].
READ TABLE LT_RETURN WITH KEY TYPE = 'E'.
IF SY-SUBRC <> 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
MESSAGE 'Success!' TYPE 'S'.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
MESSAGE LT_RETURN-MESSAGE TYPE 'S'.
ENDIF.