2023 Jan 25 8:10 AM
Hi ABAP guru.
I apologize in advance if my English is not perfect, but I am in need of some assistance with a problem that I have been facing in the enhancement section of the standard program.
The standard program for crud maintenance order has an enhancement, so that it will assign asset number and equipment number when creating new maintenance order. The problem is, when I fill asset number and equipment number, only asset number is inserted, and equipment number is not inserted. But when I didn't fill the asset number, the equipment number is inserted correctly.
I have debugged the program and find nothing weird about the flow of the program, since the program goes to many function (for example RULE_GET, RULE_PRE_READ, EXPORT_IMPORT, and BAPI_COMMIT), I can't really track where the data didn't inserted correctly. I'm new to ABAP, and I'm not sure how much detail I can provide.
Can you tell me what should I do to track where the data is not inserted correctly?
2023 Jan 25 8:17 AM
Hi
Looks like a customizing setting, did you try to put a Notification point ? (to trace when a field has this value changed) ?
Or do you try to put a SQL trace with buffered table to find table T* corresponding to custoizing table ?
2023 Jan 25 8:44 AM
Hi Frederic
I change the maintenance order and the message showing "Order [order_number] saved with notification [notification_number]".
I also set several session breakpoints in the function builder source code before saving the maintenance order.
2023 Jan 25 11:02 AM
Hi Frederic,
You can debug the FM CO_ZV_ORDER_POST, this FM gets called during MO save. Here, inside this FM lot of checks and validation happens. You can debug the code and check the logic around the field EQUNR.
Many Thanks / Himanshu Gupta
2023 Jan 25 11:12 AM
2023 Jan 25 12:42 PM
I love it: I would also like to suggest SAP to rename "enhancement" to "enchantment" 😄
2023 Jan 26 1:17 AM
Hi Himanshu,
Thanks for the advice! I will try it today!
And yes it works like magic to me 😂