Skip to end of metadata
Go to start of metadata

Author: Ashim Chowdhury
Submitted: April 30, 2008
Related Links:


Transaction variant is a very efficient method to create some tailored version of standard SAP transaction without any actual modification. This article explains in a stepwise manner how to do that. The transaction chosen is CO01 - Create Production order.


Transaction variants are created to personalize any standard SAP transaction. A transaction variant simplifies the usage of a transaction by tailoring some of the features as per the business need. It can be used to hide fields, menu functions, screens, to supply individual fields with default values or to change the ready for input status of one or more fields. 
This document describes the step by step process to create a transaction variant for standard SAP transaction CO01 - create production order. The transaction variant should have the following restriction:

  • Order type is not visible in the initial screen.
  • Menu path Order -> Create from Planned Order is deactivated

There are two steps, first create the transaction variant and then attach the transaction variant to a transaction.

Creation of Transaction Variant

Transaction variant can be created by through transaction code SHD0. The steps to create a transaction variant as follows:

1. Go to transaction SHD0. In the initial screen enter the transaction code (in this case CO01) for which we are going to create the transaction variant. Enter the name of the transaction variant (say YCO01) in the "Transaction Variant" field and then click the "Create" button.

2. In the next screen transaction CO01 will be opened in recording mode. As we are going to hide the field "Order type", enter some default value (say PP01) in that field. For others we may or may not enter values. Click "Enter". A pop-up screen will appear.

3. In the "Confirm Screen Entries" pop-up screen we can customize the fields. Enter the screen variant name (say YCO01_0100) and short text (Test screen variant) here.  Also for the field "Order type" check the Invisible checkbox to hide this field from the screen.

4. To deactivate some of the menu function click the button "Menu functions".  A pop-up screen will appear. In the pop-up select the menu item "Order-> Create from planned order" and click the deactivate button.

5. The menu item will be deactivated (it will be highlighted in yellow). Click "Enter" to come back to the original screen entries pop-up.

6. Click "Exit and Save" button to save the Transaction variant. System will pop-up for a transport request. We can save it as a local transport or save it in some transport request.

7. We can test the transaction variant by clicking the "Test" button in the initial screen.

Assigning Transaction Variant to Transaction Code

After creating the transaction variant we need to assign it to a transaction. The transaction can be used by the user to get the required tailored version of the original transaction. The steps are as follows:

1. Go to transaction SE93. Enter the name of the transaction code (say YCO01_TCODE ) to be created and click the button "Create".

2. In the next pop-up screen enter the short text, select the radio button variant transaction and click enter.

3. In the next screen enter the transaction (CO01) and transaction variant (YCO01) created in the previous step. Click the "save" button to save the variant transaction.

The variant transaction (YCO01_TCODE) is now ready and it can be used to get the tailored version of the original production order creation (CO01) transaction code.


Initial Screen: Field "Order type" is not visible

Menu: Menu item "Create from planned order" is disabled

Related Content


  1. Unknown User (as08au9)

    Good explanation

  2. Unknown User (102feb2tx)

    it's very clear steps thanks Ashim

  3. Unknown User (u9g6mmj)

    good it

  4. Unknown User (zi6h99v)

    Good article...its give clear picture on concept..

  5. Thanks!  Haven't done one in 8 years so I googled SAP transaction variant.  This looks the best!



  6. Former Member

    Thanks for the Nice document...


  7. Former Member

    Thank you very much

    You done a good job


    Thanks! This is very helpful.

    Is there a way to transport such changes from development to QA to production?

  9. Former Member

    This explanation is easy to understand.

    I appreciate this author.

  10. Good Explanation, it helped me a lot I know its created long back but i am using it now. 

  11. Thank you very much.

  12. Former Member


    Thanks for sharing.




  13. Thank you for sharing.

    Is it possible for a field to have variable values depending the user in a transaction variant?

    e.g. in your example the "planning plant" to be different depending on the user.


    Kind Regards,

    Elly Leondi