Production Confirmation cancel fails due to negative qty
[confirmation] [confirmation code] [order confirma] [sales confirmation]
Related:
- Confirmation date & quantity status determined wrongSymptom BYD_HF: Confirmation date & quantity status determined wrong Other...
- Wrong sort order in confirmation update runSymptom Within the confirmation update run a sort order of...
- DFV PVPO/PO – Confirmation status code issueSymptom DFV PVPO/PO – Confirmation status code issue. Follow up...
Symptom
When trying to cancel one of the production confirmations via the action ‘Reverse Confirmation’, the following error message is raised: “Total Confirmed Quantity must not be negative” and Save is rejected.
Other terms
‘Reverse Confirmation’, ‘Production Lot’, ‘Production Order’
Reason and Prerequisites
The error occurs due to incorrect calculation of the Plan Reduction Cancel Quantity and Plan Reduction Cancel Activity Duration in the Production Lot. The quantity is calculated when the ‘Reverse Confirmation’ is called, at modify phase.
The correction should be applied in the following SPS:
ByD 1.00 (FP1.x) SPS11, ByD 1.00(FP1.x) SPS12,
ByD 1.01(FP2.0) SPS0, ByD 1.01(FP2.0)SPS1, ByD 2.00(FP2.5) SPS0
Solution
In order to correct the calculation of the Plan Reduction Cancel quantity and duration the following coding has been adjusted:
In the (FP1.x) SPS11, (FP1.x) SPS12:
Package: APPEL_BO
Function Group: APPEL_BO_CP_SYSTEM
Local Class: LCL_BO_ADAPTER_CONF_GROUP_A
Include: IAPPEL_BO_IMP08
Method: DO_ACTION_APPLY_CONF_CANCEL
and
Class: CL_APPEC_APPLY_LOT_CHANGES
Method: BUILD_ACT_DURATION
the following lines have been added (line 81):
READ TABLE it_changed_lot_nodes INTO ls_changed_lot_nodes
WITH TABLE KEY bo_node_name = if_aplel_bo_service_provider=>co_bo_node-op_act_duration
bo_node_id = ls_lot_act_dur-node_id.
lv_source_key = ls_changed_lot_nodes-cfm_root_node_id.
In (FP2.0) SPS0, (FP2.0)SPS1, (FP2.5) SPS0:
Package: APPEL_BO
Function Group: APPEL_BO_UTIL
Local Class: LCL_RT_ACTION_CANCEL_CONF
Include: IAPPEl_BO_UTIL_IMP33
Method: DO_EXECUTE
Transport requests:
(FP1.x) SPS11: HKEK004531
(FP1.x) SPS12: HLEK000741
(FP2.0) SPS0: H0EK002441
(FP2.0) SPS1: MGGK018085
(FP2.5) SPS0: AGPK014536