Introduction:
Whenever you use a transaction in the SAP system to process specific business transactions, it often makes sense to adjust processing flow to mirror these business activities. This can be done by hiding all information not pertinent to the business. More important information should be placed in a better position creating a transaction variant alters the layout of the screen. Transaction variants are actually made up of a series of screen variants. The field values and settings for each screen in the transaction variant are stored in a screen variant.
Transaction variants used for the below purpose:
- Changing fields to read only(Display)
- Making master data / transaction fields to required/Invisible
- Inserting default values for the fields etc..
Here we will discuss with 2 simple examples:
- Making Cost centre responsible user required while creating/changing master data
- Making FV60/FBV2 (parked invoice) payment method field display only
Configuration:
- Making Cost centre responsible user required: There will be always requirement for the Master data field control. In this example in order to make cost centre user responsible required we are using the transaction variant.
Transaction: | SHD0 |
In the screen you have 3 tabs:
- Standard Variants – used to assign Transaction Variants to standard transaction; create and assign
Variant Groups to specifics users; this tab will be used for activating transaction variants.
- Transaction Variants – create Transaction Variants and assign Screen Variants; while process if creating transaction variants screen variants will assign automatically.
- Screen Variants – create Screen Variants. Screen variants will be created at the time of recording transaction.
Transaction Code | KS01 |
Transaction Variant | ZKS01 |
Press on Create button.
Provide controlling area and other details including screen variant short text as well.
Click on enter and provide cost centre and valid from details
Press on Enter and provide screen variant text and press on enter
Provide some test data and press on enter again. You may get one more screen for screen variant short text here, Please enter short text and press on enter.
Here you will get the screen variant for user responsible. Please select ‘User Responsible’ field required.
Press on Enter till you get main screen and save.
Provide short text and save the variant in Package along with transport which you have created.
Save and press on back arrow.
Here you can see the screen variants created for the transaction variants.
We need to activate above transaction variant by going to ‘Standard variants’ tab from the same transaction.
Press on activate button and ignore warning message. Please note that this step should be performed in each client.
Do the same configuration for the transaction KS02 (Change cost centre) when anyone try to remove user responsible system say that cost centre user responsible is mandatory.
Now go to KS01 and check for new master data creation whether ‘Cost Centre user responsible field is required or not.
2. Making FV60/FBV2 (parked invoice) payment method field display only: Sometimes business may require option that user should not modify some fields from the particular transaction. Posted document field changes can be controlled through standard configuration (document change rules) but parked document is not possible. This can be achieved through transaction variant.
Transaction: | SHD0 |
Create screen variants for the transaction variant same as example1.
Transaction Code | FV60 |
Transaction Variant | ZFV60 |
Record all screen variants till you get for payment method screen and make ‘payment method’ field display (Output Only).
Save screen variant in your package (transport) as mentioned in example1.
Activate created Transaction variant
Do the same config as above for the transaction FBV2 (Change parked document) and activate transaction variant.
Now you go and check for the transactions FV60 and FBV2 for the field ‘payment method’. The field should be in display only.
Note: Transaction variants should be configured in development or Golden client with the package. As a functional consultant if you have any issue in creating package please contact abaper. Transaction variants should be activated manually in each client.
Thanks & Regards,
Prasad