Skip to Content

Reader Note: Below tips are by assuming, reader is aware of substitution/validation concept in SAP.


Substitution and validation is one of the most important function which many functional consultants are not comfortable with.

Substitutions are used to substitute the transaction data based on custom business logic. Data source can be a constant value, field to field assignment or user exit.

Validations are used to do custom business specific validations (Which is not covered by standard SAP).

Both are called during document posting.

There are already couple of articles in SCN explaining the details of substitution and validation. So, I will not go into details on what is the purpose and how to use them.

I would like to stress on points to be considered while transporting the changes related to Substitution/Validation.

During development:

1. Compare the existing steps in production system with development system. This has to be done manually for each step as there is no version comparison option. There is a high risk that someone can do change in development and leave it without reverting. As the change is not automatically recorded in TR, unintentional changes would get moved to production system when a new change is moved.

2. Only one step in validation/substitution can’t be included in TR. When we transport a validation/substitution, all the steps included in a folder would get transported (Even though there are no changes). Due to this, before releasing the TR, we need to make sure that all the steps in validation/substitution in production system and in the development system are in Sync. If this is not done, there is chance that unintentional validation/substitution steps will get transported to production system which may have serious implications as these are called for every FI document creation.

Other alternative could be to delete the entries manually from TR which are not related to our change (Best option I feel). But, this has to be done with utmost care as required entries shouldn’t be deleted.

3. If, any change is being made in user exit (for validation/substitution), make sure that all the related transports move to production system at same time. This avoids any dumps that can occur due to syntax errors.

After transport:

4. When validation/substitution is moved from one system to another system, it is advised to run the program RGUGBR00 (validations/substitutions regeneration). This ensures proper linking of the changes done in customization/user exits.

5. After moving the TR, do monitor the system proactively to see if any dumps are happening because of substitution/validation changes.

Please feel free to comment/add any other suggestions which are missed here

Best Regards,

Vinod Vemuru

To report this post you need to login first.


You must be Logged on to comment or reply to a post.

  1. Ranu Eugene

    Hi Vinod,

    Very good and useful document.

    Frankly speaking I am working on one of the substitution and will keep all the tips given by you in the Mind before moving the TR.

    Thanks again.

    Keep up the good work. 🙂

    Best of Luck. 🙂



  2. Former Member Post author

    Thanks Prasad, Eugene.

    Yes. We prepared this checklist after facing a big issue in production. Thought this information would be helpful for many people and hence shared here 😉

    Sorry Eugene. I didn’t realize your first name is Eugene. Used to address you as Ranu 🙁


    V V

    1. Ranu Eugene

      No issues at all Vinod and as we all know that legend William Shakespeare quoted once that “What’s in a name??””. 😉

      So don’t be sorry and keep smiling. 🙂

      ps:This signature is only for you. 😉

      Best  of Luck. 🙂



  3. Former Member

    Thnx 4 valuable info! ➕

    Wonder why SAP AG after all these years since 1972 still does not publish  their “fancy” documentation in that transparent way 🙂 .

    1. Former Member Post author

      Thank you Vladimir. SAP is keep doing their best in releasing documentation. Things are changing fast, new releases are keep coming. I feel, SAP documentation is still one of the best in industry except few loop holes here and there 🙂

  4. Former Member

    Very nice  document.  Thanks for it.

    One more thing to keep in mind is sets.  If you maintain sets directly in production then you should be very careful while transporting validations. 

    One of our fresh joinee included sets also in transport and all the sets got overwritten in production. ☺


  5. Former Member

    Hi Vinod,

    Thanks for the details! I have a query regarding the inclusion/exclusion of sets. I have created a new substitution and when I am trying to include this substitution in the TR manually through GCT0, there are three check boxes. I removed the check from the middle box ”Set”, as I don’t want any sets to be moved along. Anyways this is a fresh substitution and I have not maintained any set in that,so no question of any Set to be moving. However, my concern was , if the sets maintained for other substitutions are excluded in the TR or not. I don’t want any of the sets to be included in the TR.

    Appreciate a quick response.




Leave a Reply