Overview
Begin the implementation of SAP by defining all R/3 Systems and clients necessary for your production environment. Depending on the size of your R/3 installation and the projects planned, you may require several R/3 Systems that serve different purposes in your system group. These systems form the system landscape, and clients are distributed within this landscape. Once the system landscape is defined, an implementation strategy is needed to setup and maintain the systems and clients.
System Landscapes
In general, there are three kinds of system landscapes: One-system Two-system Three-system
The following sections describe these different types and the advantages and disadvantages of each.
151
A client is a commercially and organizationally independent unit in the R/3 System, which means that it has its own data environment. In general, four different types of clients exist, and each type has a different functionality, as illustrated below: CUST Customizing and development client TEST Unit test client QTST - Quality assurance testing PROD - Production client
Because all clients in a one-system landscape reside in the same R/3 System but are used for different purposes (development, testing, master copy, and production), SAP strongly recommends that customers do not use this configuration. The obvious advantage to this landscape is that there is less hardware to purchase and maintain for a single R/3 System. In the long run, however, the initial savings do not pay off because of the problems and limitations associated with this configuration. Another notable disadvantage is that it is not possible to test a R/3 upgrade in a single-system landscape. Please see the following list for additional advantages and disadvantages. Advantages Minimal hardware resources Fewer administrative requirements Development immediately effects production environment Global customizing will immediately affect production Other clients can impact production performance Upgrades of production without suitable testing Not possible to test a R/3 upgrade in a one-system landscape
Disadvantages
152
As a consequence of these limitations, no further development is possible after production work has started. Changes to repository objects can only be made when production operations are stopped for development and testing. If the system is stopped, the production downtime could adversely affect your company.
Development
Production
A two-system landscape allows development and production to be performed in two separate systems. Development and testing must still take place in the same system, which means that development and testing activities could interrupt each other. Normally, SAP recommends using a three-system landscape, but the minimum requirement for most needs is a two-system landscape. The limitations of the two-system landscape arise because development and quality assurance testing must both take place in the development system. Since no separate quality assurance system is available, all objects transported to the production system immediately become active. Complicated development projects often involve transporting partial functionality, without always taking dependencies into account. This step can cause inconsistencies in the production system and affect the production process. The following list provides additional advantages and disadvantages. Advantages Production data secure Production performance not affected by other clients Development efforts separate from production Development and quality assurance testing within the same system Transport of changes from the development system immediately become active in production Inability to verify the transport contents
Disadvantages
153
Development
Quality Assurance
Production
The recommended three-system landscape is the one most commonly used, and can meet the needs of most customers. In a three-system landscape, new developments can be tested without affecting the production environment, and upgrades can be performed without limitations. The quality assurance system integrates development efforts and allows you to check the validity and consistency of transported objects before moving them into production. Ideally, client roles should be distributed across three different R/3 Systems. Advantages Production data secure Production performance not affected by other clients Independent test environment Transports are verified before delivery to production An increase in hardware requirements
Disadvantages
Client Definition
A client represents a commercially and organizationally independent unit in the R/3 System with its own separate data environment, including: Customizing Master and transaction data User master records
The client can be formed under legal, economic, or administrative perspectives. All business data is protected against access by other clients. The client is characterized by a three-digit client number.
154
The following clients can exist in a R/3 System: Customizing client Test client Quality Assurance client Production client Used for customizing the R/3 System Enables you to unit test Customizing Checks the validity and consistency of transported objects before moving them into production. Used for production work
Use the following tools to setup a system landscape: Change request: Client copy: All newly created or changed Repository objects are collected in change requests. The contents of these change requests can be transported together to another R/3 System. The client copy tool copies all client dependent customizing applications and user data to another client in the same R/3 System. The tool depends on profiles, allowing for variations in which data is actually included in a client copy. The client transport tool can transport most of the customizing settings (both clientindependent and client-dependent), application data, and user master data to another R/3 System. Like the client copy tool, client transport requires a profile for definition of inclusion.
Client transport:
To establish a three-system landscape, you will need to use the transport tools: Use the client copy tools to setup additional clients in the same system. Use client transports to copy a client from one system to another.
155
Overviewing R/3 System and Roles Client Copy versus Client Transport
Use change requests to allow new or modified Repository objects and customizing to be imported into other systems.
To transport a client to another system: With a profile select the data to be copied Export the data to a transport file Import the data into the target system Adapt the runtime environment to the current state of the data (if client validation exits)
During a client transport, the client is exported out of one R/3 System and imported to a different R/3 System. During a client copy, a client is replicated within the same R/3 System to make a new client. The diagram below illustrates the two processes:
Client Transport
R/3 Sys. 1
R/3 Sys. 2
Client 1
Client 2
Client Copy
Transporting Clients
The client copy and client transport tools are necessary to actual setup various systems. Client copies provide a mechanism to duplicate a client in the same R/3 System. Client transport allows the movement of a client from one R/3 System to another. There are two types of client transportsa client export (also refer as client transport) and a remote client copy. We will discuss client export in chapter 17 of this guidebook. A client transport involves extracting client-dependent information from the database to a file on the hard drive. This file can then be later imported into any number of R/3 Systems.
156
When a client is copied to another system, by default, the client-independent tables are not copied. However, when you setup a new system, ensure that all customized tables are transported. Select the option for client-independent tables when performing client-transport.
Copying Clients
The Client Copy tool allows you to copy the customizing environment of a source client to a target client. To setup the new client: Prior to client copy, delete the target client Copy the data from the source client to the target client. Schedule subsequent processing activities to regenerate the runtime environment (client validation exits). Reports, screens and name ranges have to be adapted to the current state of the data.
Significant time is required to copy the data because all the client-specific data in the R/3 system has to be replicated. When copying just the customizing data, up to 150 MB is involved, so the process only requires a few hours (depending on the hardware and system load). Because of time considerations, we recommend that you execute the client copy program in the background. You can view the status of an online copying process on the monitor. The status of a background process can be requested with transaction SCC3 at any time. Due to its long runtime, the client copy program, if processing is aborted, allows you to restart at any point.
Deleting a Client
Two different methods exist to delete a client. You can perform the deletion either at the operating system level or from within the R/3 System. The following chapters detail both methods.
157
158
Overview
When a separate client is needed to test, customize, or train, you can create this client by copying an existing one. During the client copy, ensure that: The tables copied are not changed in the source client No one is working in the target client
The following example will show you how to copy client 000 to client 100. Client 100 is used later as a development/customizing client.
161
Copying a Client within a R/3 System Creating a New Target Client within the Source Client
7. Click Enter.
162
Copying a Client within a R/3 System Creating a New Target Client within the Source Client
9. Enter the new target client number (any new three digit number, for example, 100).
9 11
16 17
10
Do not use client numbers 000, 001, or 066 for your new clients because they are reserved by SAP. 10. Enter the new client name. 11. Enter the City in which the client is located. The Logical System field applies only to the ALE application. 12. Enter a currency code in the Std currency field (enter usd for U.S. dollars). 13. Enter a category (in this example, Customizing). 14. Because this client will be used for development/customization, select Automatic Recording of Changes 15. Click the possible entries button to select Changes to Repository and client-ind. customizing allowed. 16. Click the Save icon to proceed to the next screen. 17. Click the Back icon to return to previous screen.
14
12
13
15
For more information about the Clientindependent object changes field, position the cursor in this field and press F1.
163
Copying a Client within a R/3 System Creating a New Target Client within the Source Client
The chart below defines when certain change options can be used. It can serve as a helpful reference and provide examples of the change options for both clients and systems. The X indicates for which clients or systems the attribute may be used. Notice that multiple attributes may apply to some clients or systems. In such a situation, the most appropriate attribute depends on the landscape structure.
Clients: DEV Client-dependent change options Changes w/o automatic recording Automatic recording of changes No changes allowed No transports allowed Client-independent change options Changes to Repository and clientind. customizing allowed No changes to client-independent customizing objects No changes to Repository objects No changes to Repository and client-independent custom obj. X X
TEST
QTST
PRD
TRAIN
SANDBOX
X X X
X X X X X X
X X X
Development client (development/customizing) Unit test client Quality Assurance or Test client (to test the customization or new development) Production Client (used as daily production) Training Client (used to train end users in the use of the customer-specific developed/customized functions) Playground client (test other advanced R/3 function, self-train, etc.)
164
Copying a Client within a R/3 System Creating a New Target Client within the Source Client
18. You should see the new target client in the list. 19. Enter the transaction /nEND to exit the system.
19
18
20
Before you begin the actual copy process, do the following: Turn Archiving off in the database by using sapdba (see chapter 109, Changing the Archive Mode). Check your available tablespace allocation with transaction code DB02 (see chapter 92, Analyzing Current Tablespaces Sizes. You may need to expand these tablespaces by adding a datafile using sapdba. When finished, refresh the statistics to get an accurate result. We recommend that you first perform a test run: 1. Go to transaction code SCCL 2. Check the test box 3. Run the copy 4. Ensure a successful run Remember, a client copy test run can take just as long as the actual client copy. Since the operation is computationally intensive, client copies should be run when users are not on the system.
165
Copying a Client within a R/3 System Performing the Client Copy in the New Target Client
5. Choose Tools Administration Administration Client admin. Client copy Local client copy. Alternative:
6. In the Selected profile field, enter SAP_ALL to copy data from the source client (in this example, SAP_USR). 7. Enter the Source client number (in this example, 000). 8. Click the Execute in backgrd. button to run the client copy as a background job.
8 6 7
166
Copying a Client within a R/3 System Performing the Client Copy in the New Target Client
The following profiles are delivered from SAP: PROFILE SAP_ALL SAP_APPL SAP_CUST SAP_UAPP SAP_UCUS SAP_USR DESCRIPTION All data of a client. All Customizing data and application data, incl. the user profiles are copied. All Customizing tables, incl. the user profiles are copied. All Customizing data and application data, incl. the user profiles and user data are copied. All Customizing tables, incl. user master data and user profiles are copied. Authorization and user masters.
10
167
11. To schedule the job to run immediately, click the Immediate button. Otherwise, select Date/Time to choose an appropriate start time (in this example, click Immediate). 12. Click the Save icon.
11
12
13. Enter an Output device (in this example, LP01). 14. Click the Save button. The message The background job was successfully scheduled; result displayed in SCC3 appears.
13
14
Depending on the size of the R/3 client and profile that you selected, client copy could take from five minutes (if copying authorization and user masters only) up to a few hours.
168
Copying a Client within a R/3 System Viewing the Client Copy Activities
2. To see the client copy activity detail, first select the desired target client (in this example, 100) by positioning the cursor on its line. 3. Click Choose. After the client copy is completed, the Status text should read Successfully completed.
4. After the process is completed, position the cursor on the line item containing your source client. 5. Click Choose.
169
Copying a Client within a R/3 System Viewing the Client Copy Activities
1610
Copying a Client within a R/3 System Viewing the Client Copy Activities
1611
Copying a Client within a R/3 System Viewing the Client Copy Activities
This screen shows the most detailed log (level 4) of the client copy.
If your client copy fails: 1. Examine your tablespaces with DB02, and then refresh the statistics to get current information. Refer to chapter 92, Analyzing Current Tablespaces Sizes. 2. Check your archive directory <drive>:\oracle\saparch. If it is full, you have an archive stuck condition. Using sapdba, backup the saparch directory and rerun the client copy with archive mode set to off.
1612
Basis Courses Workbench Organizer, Transport System & Upgrade (BC325) Technical Core Competence (BC310/BC314/BC360/BC361/BC362/BC370)
1613
Overview
This chapter describes the first part of the export process, creating a transport request with transaction SCC8. The process is completed when the client is imported to the target R/3 System (see chapter 18, Importing a Client from another R/3 System). Transporting a R/3 client from one R/3 System to another involves the following steps: The export described in this chapter The creation of the client entry described in Creating the Target Client (chapter 18) The import described in Importing the Data into the Target R/3 System (chapter 18) The post-processing activities described in Performing Post Import Activities (chapter 18)
When you export from a R/3 client, transport client data from one R/3 System to another. This process is different from a client copy were a duplicate client is made within the same System. Exported files are found in the <drive>:\usr\sap\trans\data and <drive>:\usr\sap\trans\cofiles directories. The following step-by-step procedure shows how to export a R/3 client.
171
Transporting a R/3 Client to another R/3 System Creating the Transport Request
5. Choose Tools Administration Administration Client admin. Client transport Client export. Alternative:
SCC8 is the preferred transaction instead of SCC2. 6. From the Selected profile field, click the possible entries button to list the default profiles.
7. Based on the Description, click the Profile name containing the elements you want to transport (for example, SAP_CUST). 8. Click Choose.
7
172
Transporting a R/3 Client to another R/3 System Creating the Transport Request
9. From the Target system field, click the possible entries button to list the choices.
10. Select the target system identification, <SAPSID> (in this example, PRD). 11. Click Choose.
10
11
173
Transporting a R/3 Client to another R/3 System Scheduling the Client Transport Background Job
3. Click Schedule Job to schedule the background job to transport client 001.
3
174
Transporting a R/3 Client to another R/3 System Scheduling the Client Transport Background Job
An INFO client export screen appears. 5. After reading the instructions, click Enter.
175
Transporting a R/3 Client to another R/3 System Scheduling the Client Transport Background Job
176
Transporting a R/3 Client to another R/3 System Scheduling the Client Transport Background Job
8. From the Output device field, click the possible entries button to list the choices.
9. Click Save. The messages Format set to X_65_132 and The background job was successfully scheduled; result displayed in SCC3 appears.
10. Do not panic if you see this screen. It means that the client copy has already started and is preventing two client copies from running together. When you see this screen, simply click OK.
10
177
Transporting a R/3 Client to another R/3 System Checking the Transport Log
2. In the beginning the Status text should display Initializing 3. To refresh the status, enter the transaction /nSCC3.
3
178
Transporting a R/3 Client to another R/3 System Checking the Transport Log
While you wait for the export process, invoke Qslice.exe (a program that is included in the Microsoft Resource Kit) to monitor the progress of the process online. The graphics at the right-hand side shows you that Oracle73.exe and r3trans.exe are currently active. The bar shows you the CPU usage by the programs.
The Client Copy Log Analysis screen appears. Ensure that the Status text says Successfully completed for the Target Client EXP. 4. Click once on the log entry of the EXP client transport that just completed. 5. Click Choose.
179
To view the complete technical information on the export process, click the Log button.
1710
1711
Overview
The goal of performing a client export and import is to move a client between two R/3 Systems. Importing of a client from another system depends upon the exporting process explained in chapter 17, Transporting a R/3 Client to another R/3 System, which describes how to export a client with transaction SCC8. The end of the export process results in files created in the source systems directories. <drive>:\usr\sap\trans\cofiles <drive>:\usr\sap\trans\data
The target R/3 System shares these files so that a transport can be performed. In the following example, certain assumptions are made: Source R/3 System: Source <SAPSID>: Source Client: Target R/3 System: Target <SAPSID>: Target Client: PNSFO36 DEV 001 DODGERS PRD 100
181
Importing a R/3 Client from another R/3 System Creating the Target Client
You cannot reverse or undo a transport! SAP does provide such a function in the transport system. The R3trans function SAFETYEXPORT will not provide this functionality because: The order of transport requests being reloaded would have to be the exact opposite of the import sequence. This reason alone makes reversing individual transports impossible. The transport process includes actions that are irreversable, especially (but not limited to): - Executing XPRAs (eXecute PRogram After import) - Structure changes in the database (new tables, fields, indices) - Mixed transport of INSERTs and DELETEs
If an error occurs, the alternatives are to restore a data backup or continue onwards. If you regularly perform large or critical transports, it makes sense to first import to a test system.
2. Click the Display/Change button. The message Warning: the table is client-independent (see Help for further Info) appears.
182
Importing a R/3 Client from another R/3 System Creating the Target Client
4. Enter the new target client number (any new three digit number, for example, 100).
4 5
10
Do not use 000, 001, or 066 for your new clients because they are reserved by SAP. 5. Enter the City where the client is located. The Logical System field applies only to the ALE application. 6. Enter a currency code in the Std currency field (enter usd for U.S. dollars). 7. Because this client will be used for development/customization, select Automatic Recording of Changes 8. Click the possible entries button to select Changes to Repository and client-ind. customizing allowed. 9. Click the Save icon to proceed to the next screen. 10. Click the Back icon to return to the previous screen.
183
Importing a R/3 Client from another R/3 System Creating the Target Client
For more information about the client-independent object changes field, position the cursor in this field and press F1. 11. Double-click the desired client category type to select it (in this example, Test is selected.
11
Do not select the Productive category. If you do, the post-import process can not be performed. 12. In the Client-independent object changes field, click the possible entries button.
12
184
Importing a R/3 Client from another R/3 System Creating the Target Client
13
15
185
Importing a R/3 Client from another R/3 System Sharing the Transport Directory of the Source R/3 System in the Target R/3 System
16
Sharing the Transport Directory of the Source R/3 System in the Target R/3 System
The following three data files result from creating the export process: <drive>\usr\sap\trans\data\KT<transport number>.<SAPSID> (such as KT00010.DEV) as data file for client-independent tables <drive>\usr\sap\trans\data\KO<transport number>.<SAPSID> (such as RT00010.DEV) as data file for client-specific tables <drive>\usr\sap\trans\data\SX<transport number>.<SAPSID> (such as SX00010.DEV) as data file for texts <drive>\usr\sap\trans\cofiles\KT<transport number>.<SAPSID> (such as KT00010.DEV) as cofile for client-independent tables <drive>\usr\sap\trans\cofiles\KO<transport number>.<SAPSID> (such as KT00010.DEV) as cofile for client-dependent tables
The following two data files result from the creation of the export process:
The target R/3 System shares these two files so that transport can be performed. The following procedure assumes that a network connection exists between the source and target systems. If this is not the case, then this step should be performed with the help of some form of magnetic media. 1. Right-click the Windows NT Start button and choose Explore.
1
186
Importing a R/3 Client from another R/3 System Sharing the Transport Directory of the Source R/3 System in the Target R/3 System
3. Select the drive that you wish to declare as the shared drive (in this example, drive T). 4. Enter the shared drive name of the source R/3 server (in this example, \\pnsfo36\sapmnt.) 5. Click OK.
3 4
187
Importing a R/3 Client from another R/3 System Importing the Data into the Target R/3 System
To obtain the proper transport request number, change to directory trans\cofiles and execute dir to view the KO and KT transport request file names. The highest number is the most recent transport request number. 2. Change the directory to the shared transport directory (in this example, T). 3. To change to the proper directory, enter cd trans\bin at the command prompt. 4. To ensure the buffers have been added by the R/3 Transport System, enter tp showbuffer <Target SAPSID> (in this example, tp showbuffer prd).
4
2 3
188
Importing a R/3 Client from another R/3 System Performing Post-Import Activities
First import client-independent data, then client-dependent data. 5. To import client-independent data, enter tp import <Source SAPSID>KO<Nr.> client<Target Client Nr.> <Target SAPSID> (in this example, tp import DEVKO00010 client100 PRD). 6. To import client-dependent data, enter tp import <Source SAPSID>KT<Nr.> client<Target Client Nr.> <Target SAPSID> (in this example, tp import DEVKT00010 client100 PRD).
189
Importing a R/3 Client from another R/3 System Performing Post-Import Activities
5. Choose Tools Administration Administration Client admin. Client Transport Client Import. Alternative:
1810
10. Enter the proper Output device. 11. Click Save. The messages Format set to X_65_132 and The background job was successfully scheduled; result displayed in SCC3 appears.
10
11
1811
Importing a R/3 Client from another R/3 System Checking the Import Logs
2. The status of the post import process appears. Click on the line item that displays Processing 3. Click Choose.
3
4. Click the line item that displays Processing again. 5. Click Choose.
5
1812
Importing a R/3 Client from another R/3 System Checking the Import Logs
Another way to view the post import process is to review background job status. 6. To monitor the post-import process, enter the transaction /nSMX.
1813
Importing a R/3 Client from another R/3 System Checking the Import Logs
The screen informs you that the CLIENTEXPORT/IMPORT 100 job is running. 7. Click Job overview to review detailed information.
7
1814
Depending on the amount of data you have, the process may take a while. You may use any OS activity monitoring tool (for example, QSLICE.EXE) to see the activities of the processes (for example, oracle73.exe and disp+work.exe).
1815
Importing a R/3 Client from another R/3 System Useful OSS Notes
1816
Overview
Deleting a client will permanently remove it from a R/3 System. This step is the reverse of creating a client (via Client Copy, Client Transport, etc.). Before deleting, consult with all R/3 users to ensure that the client should be deleted. Deleting a client is permanent and unrecoverable. Ensure that the client is not in use. SAP recommends using chapter 20, Deleting a Client Using R/3 Functionality.
Deleting a client using R/3 transaction code SCC5 that is mentioned in chapter 20, Deleting a Client Using R/3 Functionality will clean up the SAPSCRIPT and Batch-input data. SCC5 requires much smaller rollback-segments than R3TRANS that is mentioned in this chapter. R3TRANS runs faster than SCC5.
Heres How
In this chapter, we start with the MS-DOS prompt and use a R/3 executable command to delete the client. 1. Click the Windows NT Start button and choose Programs Command Prompt.
1
2. Enter edit file.tmp to create a temporary file. You can also use other editors to create this temporary file (such as Edit or Notepad).
191
this example). 4. To save the temporary file, follow the path File Save. 5. Then chose File Exit to leave the text editor.
4
In QuickSlice you will notice a high activity rate for oracle71.exe and r3trans.exe. Depending on the data size, removing a client should take approximately 30 minutes. Remember that a client delete can in some cases take longer than a client copy.
192
193
Overview
Deleting a client permanently removes the client from a R/3 System. Essentially, this process is the reverse process of creating a client (Client Copy, Client Transport, etc.). Before deleting any client, consult with all R/3 users to ensure that the client should indeed be deleted. (It is recommended that clients be deleted using SCC5.) In this chapter, we perform the deletion from within the client.
Deleting a client is permanent and unrecoverable. Ensure that the client is not in use!
Deleting a client using the R/3 transaction code SCC5 mentioned in this chapter will clean up the SAPSCRIPT and Batch-input data. SCC5 requires much smaller rollback-segments than using R3TRANS to delete a client that is mentioned in chapter 19, Deleting a SAP Client Using a R/3 Executable. R3TRANS runs faster than SCC5. SAP recommends using the method discussed in this chapter.
Heres How
Logon to the client that you would like to delete: 1. Enter the client number in the Client field (in this example, 100). 2. Enter sap* in the username field. 3. Enter the password for sap*. 4. Press Enter to accept the user default language or enter a language code (e for English.)
1 2 3
201
7. Click the Background button to delete the client in background. There are two options that you may choose: Test run allows you to simulate client delete and obtain a report for the process. Delete entry from T000 cleans up the client information in table T000 that stores the client information. To use the default/current R/3 server, you do not need to provide any server name into Background servers field. To choose a different server, just enter the servers name.
7
202
9. Click Yes.
11
203
Deleting a Client Using R/3 Functionality Monitoring the Delete Client Background Job
12. Enter a printer name in the Output Device field. 13. Click the Save button. The message The background job was successfully scheduled; result displayed in SCC3 appears.
12
13
204
Deleting a Client Using R/3 Functionality Monitoring the Delete Client Background Job
2. Select the line item that indicates the target client we want to delete (in this example, 100). 3. Click Choose.
3
4. Select the line item that indicates the target client we want to delete (in this example, 100).
205
Deleting a Client Using R/3 Functionality Monitoring the Delete Client Background Job
The client deletion is still running. 5. Click Refresh to view the latest status. 6. To view the status online, click Monitor.
6 5
206
Deleting a Client Using R/3 Functionality Monitoring the Delete Client Background Job
7. Using QuickSlice, we can see that oracle73.exe, the tenth disp+work.exe are running. This view tells you that the Oracle database is busy deleting client dependent data (client 100). Meanwhile, the Background Work Processes are busy communicating with the database.
207
208
209