Anda di halaman 1dari 11

How to adjust Variant ?

I had a report with more than 20 variants & was working fine.

Now I have modified its selection-screen as per the requirement.

But after this, all the varaints starts giving error like Variant 'XYZ' of program 'ABC' is not the
current version. To overcome this error, I have tried 'RSVARFIT' report to adjust the varaint, but use .It gave me 'Unable to adjust the following variants' ....'XYZ'.

Ans : standard program RSVARDOC OR RSVARDOC_610.

what is meaning of SE in se38

Usually there is no meaning or full form for SE but here is something interesting to know. The
transaction is linked with specific areas.


The lettes V M D F G fit most of the German Descriptions..



A Anlagenbuchhaltung

Business Information Warehouse


DASS (Leitstand)



General Ledger









QSS (Qualittssicherung)

Unbekannte Anwendung

Basis (System)

UDM (Unternehmensdatenmod

V Vertrieb
W WWS (Warenwirtschaftssyst

Kunde Zentrale

Kunde Filiale



Asset Accounting

Business Information Warehouse


DASS (control station)


Financial accounting

General ledger

Human Resources Planning

Plant maintenance


Cost accounting

Warehouse Management

Materials management


Human resources

QSS (Quality assurance)

Unknown application


Enterprise Data Model


MMS (Merchandise mgt. system)

Customer Head Office

Customer branch


n the transaction SE38 you can create, change or display the ABAP programs (subroutines, reports,
main programs), but not the function modules for which the transaction SE37 is intended.

Directly from the transaction SE38 you can start also reports; for example, SD correction reports or
SD analyting reports (as example, SDRQCR21 for correcting requirements, SDVBUK00 for
correcting the status entries, SDLIPL01 for reconstructing cumulative quantities in scheduling
agreements, SDBANF02 for analyzing inconsistencies in third-party orders etc. etc.). Here you can
start also your own reports.

Also from transaction SE38 you can see the main SD programs like SAPMV45A and their

There is no special relevancy of this transaction to SD. It is a general ABAP transaction.


Even if you run at both Tcodes; you will understand the difference.

In SA38 you can only execute a program ( either in dialog mode or in background )

While in SE38 you can create / change or display the source code/ program. which users are not
supposed to do.

Hence we provide authorization for SA38 and not SE38

SA38 provides the same ability to run programs, but not some of the other abilities of

SE38 vs Se80

SE 38 ->Abap Editor thru which we can create/modify the programs.

SE80 ->Object Navigator thru which we can navigate to many areas like message classes,Function
modules,application areas,transactions, programs etc.

se80 is to navigate to every object .....

but everytime there is no need to navigate to several steps and go to abap editor.
So there certain transactions which takes us to directly to the objects such as SE38 for abapaeditor
SE37 for function module
SE93 for creating transaction codes...etc.

The 2 editors are se38 and se80 both have the abap editor in place. In se38 you can go
create programs and view online reports and basically do all thedevelopmet of objects
in this editor. In se80 ( object navigator) there are additional features such as creating
packages,module pool , function group ,classes, programs ( where you can create ur
programs) and BSP applications .

SA38 VS SE38

SA38 = To execute a program

SE38 = Program editor

SA38 is for ABAP program execution and SE38 is for everything related to an ABAP program creating/editing a program, changing attributes, documentation for the program, etc..

In many of the projects the users are given only SA38 so they can only execute the program and
would not have an idea of the underlying ABAP code.

In the SE38 transaction, the program coding is done....

In the SE80 transaction, other than the program coding, it is used to create packages,
BSP programs, viewing function groups. Etc

SE 38 is the abap editor which is used to create the programs.

SE 80 is the Repository Browser means portion of database that is used to maintain SAP application


users with access to SE38 can run any ABAP program that is not assigned to an
authorization group (and does not have authorization check in the code i guess). My
understanding is that this is a security hole is SAP systems which has always been
highlighted in SAP security literature.

I was raising this issue to our basis administrator and we ran a small test as follows:

We created a test user and gave him only the following access:

activity: Submit
Auth: *

When we tried to execute programs that has no authorization group assigned with this user we were
NOT able to, we got a message saying "You have no authorization to execute the report SE80/SE38"


Trick to adjust the variants

TOPICS: variant correction

Say, your variant was working fine till yesterday and to your surprise, you get message like below
for the same variant.Variant xxxxxxxxx of program xxxxxxx is not the current version.
Cause: SAP has already provided the reason for this issue.After this variant was generated, the report
SELECT-OPTIONS or PARAMETERs were considerably changed, i.e. the type or length no longer
match and PARAMETERs have become SELECT-OPTIONS or vice versa. Or some new fields were
added to the selection screen or deleted from the selection screen. Making the variant obsolete. Your
ABAPer is the culprit

Solution: Adjust or delete the variant.Deleting and recreating the variant would solve the issue. But,
if you have 100s of variant for the same report, it would be tedious to delete and re-create.
Better way is to adjust the variant using program RSVARDOC_610. Go to t-code SE38, enter this
program name and execute (F8). In the selection screen, give the program name and variant you want
to adjust. If you want to adjust all variant then put * in the variant name section. If it is not system
variant then keep the SYSVAR section blank.
If your SAP system does not have this program, then search RSVARDOC* and see if you have any
updated program for the current version of your system. If you do not find any other program other
than RSVARDOC, use this program.


SAP Technical Upgrade from R/3 4.7 to ECC 6.0

Common issues faced during SAP Upgrade

Program Variants
Q : Are variants affected due to upgrade.
A : Yes, variants are affected after upgrade. After Upgrade, run program RSVCHECK
which will list down all the variants which are affected. Run program RSVARDOC_610
with necessary values to adjust those variants. However if a selection screen field has
become mandatory for a tcode due to upgrade it has to be addressed by assigning a
value to it manually.
Screen of RSVARDOC_610. Here we are fixing variant BOM_X of program
ZMM_BOM_REPORT. If you want to fix all the variants of the program, then give * in


Variants allow you to save your selection parameters in the input screen.
It minimizes the need to enter selection parameters each time you run a SAP report.
Variants can be storted for ANY SAP REPORT as long as the
SAP Menu bar for the report.

Save Button is available in the

Note: Many a transactions may be proctected due to security reasons by your administrator and save
button may not be available

Create a Variant
1. Enter the values for selection criteria while you are in any SAP report.
2. Once all selection criteria are populated , Click the Save button

1. Enter a Variant Name

2. Type Meaning (description) of the variant

Click the

Save Button.

Retrieve a Variant
Click the Get Variant Button

1. Highlight the Variant you wish to use

2. Click the Check Mark

The report will be populated with the Selection Criteria.

Delete a Variant
While in ANY SAP Report Select GoTO > Variants > Delete

1. Highlight the Variant you want to delete

2. Click Okay

In the next SAP pop-up

1. Select the "only in current client" radio button. (All Clients option will delete the
variant across ALL clients)
2. Click Continue

Variant is deleted


When you want to execute a transaction in SAP, then there are certain fields present in
the screen that comes after running the transaction. The sample data that you fill in the
screen fields can be saved for future use. The saved data on a screen is called variant.