I've been asked to modify an existing BAdI for infotype 0167. The existing code is in method AFTER_INPUT.
Some of my logic depends on what the user is doing, i.e., inserting, updating, delimiting or deleting a record. I was testing different scenarios in PA30 to see what the value of IPSPA-ACTIO would be and got some puzzling results.
For example, I used the Edit->Copy feature in PA30 to copy and then delimit an existing record and was expecting an ACTIO of "LIS9" (Delimit) but it was "MOD". Similarly, I used the trashcan to remove an existing record and got a "MOD" operation. Finally, I deleted another record the same way (trashcan icon) and this time it was "LIS1" which I found stupefying since that's not even a valid value according to the DDIC for data element ACTIO.
I can't seem to get a consistent way to determine what the user is doing. What is the best practice?