SAPFree referencePDF, Excel, Word exportSAP NetWeaver / BasisAll SAP HANA and Basis tools

How to Transport Variants, SO10 Texts, Table Entries and Other Manual Objects in SAP

Many SAP objects are not recorded on a transport request automatically: report variants, SO10 standard texts, rows of a custom table, number range intervals, queries and roles. This reference shows how to add each one to a request, the E071 entry it creates and the gotcha that usually bites in QA or production.

Download:
ObjectHow to add to a requestE071 entryRequest typeGotcha
Report variants
SE38 > program > Goto > Variants > Utilities > Transport request, or program RSTRANSP for several programs and variants
LIMU VARX (program + variant name)
Workbench
Variants are client-dependent; they arrive in the target client of the request. System variants (CUS& / SAP&) behave differently from user variants.
SO10 standard texts
Program RSTXTRAN: select text object TEXT, ID ST, name and language, then transfer to a request
R3TR TEXT TEXT,<name>,ST,<lang>
Either
One entry per language; translations need their own lines. Texts are client-dependent.
Custom table entries (maintenance view)
SM30 > Table view > Transport, or SM30 change mode then Include in request for selected rows
R3TR TABU <table> with keys in E071K
Customizing
Delivery class must allow transport; the table definition itself must already exist in the target or the import ends RC 8.
Custom table entries (no maintenance view)
SE10 > request > object list > add R3TR TABU <table> and maintain keys (generic * allowed)
R3TR TABU with E071K TABKEY
Either
A generic * key moves every row and overwrites the target content for that key range.
Customizing view data
SM30 or SPRO maintenance view > Transport
R3TR VDAT (view), R3TR CDAT (view cluster)
Customizing
Usually recorded automatically when client recording (SCC4) is on; manual when it is off.
Variable table entries (TVARVC)
STVARV > Transport
R3TR TABU TVARVC
Customizing
Values that should differ per system (dates, plants) get overwritten in the target.
Number range intervals
SNRO or the application transaction > Intervals > Interval > Transport
Interval table entries (NRIV) via TABU
Customizing
Importing intervals overwrites the target intervals including the current number status. Most teams maintain intervals per system instead.
SAP Query (SQ01, SQ02, SQ03)
Program RSAQR3TR: export queries, InfoSets and user groups to a request
Entries created by RSAQR3TR
Workbench
Run RSAQR3TR again in the target to import from the transport dataset; the import step alone does not activate the queries.
LSMW projects
LSMW > Extras > Create Change Request, or Extras > Export Projects to a file
Created by LSMW
Workbench
File export and import is often simpler for one-off migration projects that should not live in production.
PFCG roles
PFCG > role > Role > Transport (optionally with user assignments)
R3TR ACGR <role>
Customizing
Generate profiles in the target (PFCG or SUPC) after import; do not transport user assignments into production by default.
Smart Forms and styles
SMARTFORMS: recorded on save; add manually in SE10 if missed
R3TR SSFO (form), R3TR SSST (style)
Workbench
The generated function module is regenerated in the target, not transported.
Adobe forms (SFP)
SFP: recorded on save; add manually if needed
R3TR SFPF (form), R3TR SFPI (interface)
Workbench
Transport the interface with or before the form.
SAPscript forms
SE71: recorded on save; RSTXSCRP for file export and import between unconnected systems
R3TR FORM
Workbench
Forms are maintained in the original language; check translations separately.
Program text elements
SE38 > Goto > Text elements: recorded with the program
LIMU REPT
Workbench
Translated text elements are separate language entries; check SE63 translations are on a request.
ALV layouts
In the ALV list: layout management > select global layouts > Transport
Created by layout management
Either
Only global (user-independent) layouts can be transported; user-specific layouts stay with the user.
Transport of copies
SE01 > Create > Transport of copies, include objects or another request's object list, set target, release
Request type T
Workbench
Moves a copy to QA for testing without releasing the original request; the original still has to go through the normal route.
Customizing into another client of the same system
SCC1: copy a request's content from one client to another
No new request
Customizing
Only for clients in the same system; does not move anything to the next system.

Client-dependent objects (variants, SO10 texts, table entries of client-dependent tables, roles) land in the target client defined by the request and transport route. Cross-client objects (programs, DDIC, forms) are system-wide. Always check the object list in SE10 before release: the E071 entry shown here is what the import will actually move.

Planning a cutover with manual objects?

Send us the list of variants, texts and table entries you need to move and we will return a reviewed transport plan.

Optional. The tool and every export work without this. No spam.

Was this tool useful?

How to use this table

Search for the object you need to move. The second column is the menu path or program that puts it on a request; the third shows the PGMID and object type you should then see in the request object list in SE10. If the object list does not show that entry, the object is not on the request, whatever the screen said. The request type column tells you whether the object belongs on a workbench request (cross-client repository objects) or a customizing request (client-dependent settings). The gotcha column is the problem that most often appears after import.

Client-dependent versus cross-client

Programs, function modules, classes, DDIC objects and forms are cross-client: one import affects every client. Variants, SO10 texts, table entries of client-dependent tables, roles and number ranges are client-dependent: they are imported into the target client of the request. If a variant or text is missing after import, check that the import went to the right client (STMS import queue, target client column) and that the source was the client you created it in. Customizing that must move between two clients of the same system goes with SCC1, not with a new transport.

Worked example: moving a background job variant and its texts

A job in production runs program ZMM_REORDER with variant WEEKLY_1001 and prints an SO10 header text Z_REORDER_HDR. In development client 100: run RSTRANSP, enter program ZMM_REORDER and variant WEEKLY_1001, and choose a workbench request; the object list now shows LIMU VARX. Run RSTXTRAN with text object TEXT, ID ST, name Z_REORDER_HDR, language E, and transfer it to a request; the list shows R3TR TEXT. Release, import into QA client 200, then check the variant in SE38 and the text in SO10. Schedule the job in SM36 only after both are present.

Transport of copies for testing in QA

When you need to test in QA without releasing your real request, create a transport of copies in SE01 (type T), include the objects of the open request, set the QA system as target and release it. QA gets a copy; the original request stays open and later follows the normal route to production. Transports of copies are not routed to production automatically. This is useful for variants and table entries too, but remember that the final request must also contain them, or production will miss them.

Frequently Asked Questions

Which SAP program transports variants?

RSTRANSP transports report variants for one or more programs into a request you choose, creating LIMU VARX entries. For a single program you can also use SE38 > Goto > Variants > Utilities > Transport request. Variants are client-dependent, so check the target client after import.

How do I transport an SO10 standard text?

Run program RSTXTRAN, select text object TEXT, text ID ST, the text name and language, and transfer the text to a request. The object list then contains R3TR TEXT with the text key. Add one line per language you need, then release and import.

How do I transport entries of a custom table?

If the table has a maintenance view, use SM30 > Table view > Transport or include selected rows in a request. Otherwise add R3TR TABU <table> to the request in SE10 and maintain the keys. The table definition must already exist in the target system.

How do I transport an LSMW project?

In LSMW use Extras > Create Change Request to put the project, subproject and object on a request, or Extras > Export Projects to write it to a file and import it in the other system. File export avoids leaving migration objects in production.

If you want an assistant that can check a request's object list against what a change actually needs, running privately next to your SAP system, we can build that.