In this blog I will try to explain some simple steps on how to adjust enhancements using SPAU_ENH transaction. This is normally a post upgrade activity we do after the upgrade of the system.
- Use transaction SPAU_ENH to view the objects that has to be adjusted.
- You will see a screen similar to below snapshot. You have 2 sections in this. Composite Enhancement Impl and Non Composite Enhancement Impl. You may have to expand both these list to see the list of enhancements that needs to be adjusted.
Here we further drill down through these Nodes and eventually you will see all the list of enhancements that has to be adjusted.
- Once the list is expanded, you should be able to see all Custom Enhancement implementations marked with four different color codes. We mostly are interested in RED and YELLOW, because these are the once which will cause issues in future if not adjusted. Preferably it would be good if we can adjust all the implementations.
- For all these enhancements irrespective of the color, You might have to do impact analysis on custom enhancement implementation due to code changes/adjustments done by SAP . You have to specifically looks for Standard SAP variables used in our custom enhancement and up to what extent they could affect your custom enhancement due to new changes in standard SAP code.
Check the below explanations and actions that has to be taken when you encounter these in SPAU_ENH
SAP might or might not successfully adjust the code,It varies case by case. We might have to manually go through the source code and fix the issue. Usually this happens if there is a syntax error while SAP tried to adjust and activate the code during upgrade. Mostly the issue will be with custom enhancement implemented.Once you fix the syntax issue and validate the code, you can confirm the adjustment.
Below is an example how SAP explains the error:-
SAP did successfully adjust the code but it needs us to take care of additional steps manually to complete this process. This usually happens in case SAP added / removed a new method to a BADI or Enhancement. Here we have to follow the instructions SAP suggests. Once the steps are complete, validate the code and confirm the adjustment
Below is an example how SAP explains the conflict:-
SAP also provides you the possible solutions in this case depending on the type of conflict. Use these options to adjust the enhancement. In this example you have 2 options either implement the new method or Delete the implementation if not needed.
SAP had adjusted the standard code successfully. It expects you to validate your Enhancement and confirm the adjustment.
You see green light when SAP adjusts/changes the code Before an Enhancement Implementation Element.
SAP may or may not have changed any code in this module. It appears in the list because we have a Custom enhancement in standard code. In case if SAP had adjusted/Changed code in this module, Then it should be After an Enhancement Implementation Element.
However in either case we have to review the enhancement, compare the code and confirm the adjustment.
Note: The above definitions and examples provided are based on most probable & general issues found in my experience and these might change depending on the individual system or scenario.
- For adjusting the enhancements. You may follow the below steps.
a) Go to transaction SPAU_ENH and select the enhancement you want to adjust and press the change push button as below.
b) Once you enter change mode click the conflict push button shown below to view the conflict.
c) You can use the below push buttons to compare the code after and before upgrade and do a Syntax check after fixing the code if needed.
You will see split screen editor to validate the differences in the source code.
d) Once we are satisfied with code modifications confirm the adjustments by clicking the below shown button to complete the adjustment.
- Be cautious while adjusting and saving them in a single transport, Make sure not to send any unwanted, test and partially developed enhancements to upper environments. These SPAU transports are sent as post upgrade activity with minimal or no testing to upper environments, unwanted code may cause inconsistent system behavior .