SAP_BASIS fundamentals

14
Three-Tiered Architecture SAP based the architecture of R/3 on a three-tier client/server model. Presentation Server Application Server Database Server Presentation Server The presentation server is actually a program named sapgui.exe. It is usually installed on a user’s workstation. To start it, the user double-clicks on an icon on the desktop or chooses a menu path. When started, the presentation server displays the R/3 menus within a window. This window is commonly known as the SAPGUI, or the user interface (or simply, the interface). The interface accepts input from the user in the form of keystrokes, mouse-clicks, and function keys, and sends these requests to the application server to be processed. The application server sends the results back to the SAPGUI which then formats the output for display to the user. Application Server An application server is a set of executables that collectively interpret the ABAP/4 programs and manage the input and output for them. When an application server is started, these executables all start at the same time. When an application server is stopped, they all shut down together. The number of processes that start up when you bring up the application server is defined in a single configuration file called the application server profile. Each application server has a profile that specifies its characteristics when it starts up and while it is running. For example, an application sever profile specifies: Number of processes and their types Understanding the Types of Work Processes in Application Server There are seven types of work processes. Each handles a specific type of request. The type of work processes and the types of requests that they handle are shown in Table 1.2. Table 1.2 Types of Work Processes and the Types of Requests they Handle WP Type Request Type D (Dialog) Dialog requests V (Update) Requests to update data in the database B (Background) Background jobs S (Spool) Print spool requests E (Enqueue) Logical lock requests M (Message) Routes messages between application servers within an R/3 system G (Gateway) Funnels messages into and out

description

SAP_BASIS fundamentals

Transcript of SAP_BASIS fundamentals

Page 1: SAP_BASIS fundamentals

Three-Tiered Architecture

SAP based the architecture of R/3 on a three-tier client/server model.

Presentation Server

Application Server

Database Server

Presentation Server

The presentation server is actually a program named sapgui.exe. It is usually installed on a user’s workstation. To start it, the user

double-clicks on an icon on the desktop or chooses a menu path. When started, the presentation server displays the R/3 menus

within a window. This window is commonly known as the SAPGUI, or the user interface (or simply, the interface). The interface

accepts input from the user in the form of keystrokes, mouse-clicks, and function keys, and sends these requests to the application

server to be processed. The application server sends the results back to the SAPGUI which then formats the output for display to

the user.

Application Server

An application server is a set of executables that collectively interpret the ABAP/4 programs and manage the input and output for

them. When an application server is started, these executables all start at the same time. When an application server is stopped,

they all shut down together. The number of processes that start up when you bring up the application server is defined in a single

configuration file called the application server profile.

Each application server has a profile that specifies its characteristics when it starts up and while it is running. For example, an

application sever profile specifies:

Number of processes and their types

Understanding the Types of Work Processes in Application Server There are seven types of work processes. Each handles a specific type of request. The type of work processes and the types of

requests that they handle are shown in Table 1.2.

Table 1.2  Types of Work Processes and the Types of Requests they Handle

WP Type Request Type

D (Dialog) Dialog requests

V (Update) Requests to update data in the

database

B (Background) Background jobs

S (Spool) Print spool requests

E (Enqueue) Logical lock requests

M (Message) Routes messages between application

servers within an R/3 system

G (Gateway) Funnels messages into and out of the

R/3 system

Page 2: SAP_BASIS fundamentals

Amount of memory each process may use

Length of time a user is inactive before being automatically logged off

The application server exists to interpret ABAP/4 programs, and they only run there-the programs do not run on the presentation

server. An ABAP/4 program can start an executable on the presentation server, but an ABAP/4 program cannot execute there.

If your ABAP/4 program requests information from the database, the application server will format the request and send it to the

database server.

Discovering the Database Server

The database server is a set of executables that accept database requests from the application server. These requests are passed

on to the RDBMS (Relation Database Management System). The RDBMS sends the data back to the database server, which then

passes the information back to the application server. The application server in turn passes that information to your ABAP/4

program.

There is usually a separate computer dedicated to house the database server, and the RDBMS may run on that computer also, or

may be installed on its own computer.

Clients in SAP R3 – Concept of Client in SAP R/3One of the most basic concepts in SAP is that of “Client”. A client is defined as a legally and organizationally independent unit within SAP

R/3. For purposes of SAP R/3, a client can be company, corporation or even a business unit. One of the first things SAP asks for at the time

of first logon is the client number.

SAP R/3 comes inbuilt with three standard clients viz. 000, 001 and 066. Let us see all the three different client’s in SAP R/3 in detail.

SAP Clients

Client 000 – Client 000 is a special client in SAP since it has client independent settings. Client 000 in SAP R/3 comes with a simple

organizational structure. It is a sort of test company. Client 000 contains all standard configurations, parameters, standard transactions, etc

that are normally used in the SAP R/3 business environment.

Client 001 – Client 001 is a copy of client 000. Client 001 also includes a test company. Client 001 can be customized to prepare it to move it

into the production environment. However, once client 001 is customized, it does not behave like client 000.

Client 066 – Client 066 is used to perform “Early Watch” service for customer systems. One important thing to remember is that during SAP

R/3 implementation, once SAP is installed, the first thing to be done is copy a standard client included in SAP R/3 package. With the help of

this, SAP users can start using SAP for creating tests, training, or even start using it for customization.

The SAP System LandscapeEvery SAP implementation project goes through deployment phases of some sort. There

are several types of systems used to implement a project. These should at least be dedicated software deployment layers, if not on

physically separate servers:

• Training, Evaluation, and Sandbox Systems—used for user training, gaining experience in

mySAP.com and playground for feasibility studies for customer-specific requirements; usually small systems with small databases.

• Development System (DEV)—for customization of the mySAP.com systems and development of new components and functionality; usually

small systems with small databases. It

can be on different OS and HW platform, however, similar OS ease the management.

• Test and Quality Assurance System (Test /QA)—enables extended testing of upgrades/

Page 3: SAP_BASIS fundamentals

transports prior to implementation in the production system. These tests can cover OS upgrades, SAP upgrades and patches, new system

drivers, interface setups, and so on. These

are smaller than the production system but in a ratio that allows forecasting the performance impact. The data used is a copy of the

production system to run tests with real, large

quantities of data.

• Production System (PROD)—system with live data for production use.

The Change and Transport System (CTS) transports configuration changes as well as upgrades, patches, and newly developed components in a controlled manner between the layers of

the system landscape (i.e., from DEV to Test /QA to PROD). This requires a file share available

to all of the systems within the SAP landscape.

Figure 1-9 shows the typical SAP system landscape. The normal SAP project starts with a

development system to set up,configure,and sometimes customize SAP software for a particular

company’s business processes. A test system is used to verify the development code before going

into production. In some cases, a separate integration system is used to consolidate the changes

of multiple development teams. Most of the mySAP.com application components (SAP BW, SAP

APO, etc.) use development, test, and production systems in the complete landscape

The status of a background job can signify six different conditions, as explained in the table below.

Job Status ExplanationPlanned Steps that make up the job have already been defined, but the start

condition has not yet been defined.Released The job has been fully defined, including a start condition. Without a start

condition, a job cannot be released.

Only an administrator or a user with appropriate authorizations for background processing can release a job, preventing unauthorized users from running jobs without approval.

Ready The start condition of a released job has been met. A job scheduler has put the job in line to wait for an available background work process.

Active The job is currently running. Active jobs can no longer be modified or deleted.Finished All steps that make up this job have completed successfully.

Page 4: SAP_BASIS fundamentals

Canceled The job has terminated abnormally. This can happen in two ways:

An administrator intentionally terminates a job with Transaction SM37, Job → Cancel active job

A job step contains a program that produces an error, such as:

an E or A error message in an ABAP program a failure return code from an external SAPXPG

program

Only jobs with status Planned, Released, or Ready can still be modified, unreleased, deleted, or prevented from running.

SAP MEMORY

SAP Roll AreaThe roll area is a memory area with a set (configurable) size that belongs to a work process. It is

located in the heap of the virtual address space of the work process. When the context of a work

process changes, the data is copied from the roll area to a common resource called the roll file.

To prevent repeated copying, another roll buffer is located in between that is part of the shared

memory. The roll area consists of 2 segments. The first segment, which can be set with the

parameter ztta/roll_first, is assigned to the work process first as memory. If this is used up, the

work process has more memory assigned to it. The amount of memory is determined by the

difference between the parameters ztta/roll_area and ztta/roll_first.

SAP Extended MemorySAP extended memory is the core of the SAP memory management system. Each SAP work

process has a part reserved in its virtual address space for extended memory (see Virtual Address

Space in a Work Process). You can set the size of extended memory using the profile parameter

em/initial_size_MB: Extended Memory Pool Size. Under Windows NT, further memory is

assigned dynamically as needed, and you can also set this amount. You can map the extended

memory from the common resource onto any work process, and after onto another process (see

graphic) on the same address in the virtual address space. This is important if you work with

pointers in the ABAP program. Depending on the operating system, how you implement the

extended memory is different. The SAP system builds a layer on to the operating system

functions for the page management of this memory. This extended memory is implemented as an

Page 5: SAP_BASIS fundamentals

unnamed mapped file. This means the address space uses the paging file or uses the swap space

of the operating system as background memory.

Private MemoryOther processes cannot use private (heap) memory. After releasing the assigned memory, the

operating system still considers the (virtual) memory as being occupied by the allocating process.

These characteristics of heap memory require that:

1. The work process can be run in PRIV mode (private) when the local memory is assigned.

This means that the work process is reserved for processing the current user context until

the context releases the work process again when the request has ended.

2. The work process, if it has used a lot of private memory, is restarted when the user

context is terminated and the local memory is returned. The restart makes the local

memory available again for other processes. A restart occurs if a work process uses more

local memory than is defined in the parameter abap/heaplimit. The mechanism is

displayed again there.

If a dialog work process has used up the roll area assigned to it and the extended memory,

private memory is assigned to the work process. The work process goes into PRIV mode

(private). In the parameter settings, ensure that not too many dialog work processes are

simultaneously in the PRIV mode, since this lowers system performance. The other Work

Process types (background, update, enqueue and spool work processes) are assigned heap

memory after the roll area is used up. Allocating Extended Memory is not useful since no

context change occurs for these processes.

B.3 Memory Management

source: http://help.sap.com

Page 6: SAP_BASIS fundamentals

Memory management determines for a particular system activity when, and what type

and size of memory is allocated. Figure B.4 shows the components involved in SAP

memory management.

Figure B.4. SAP MEMORY MANAGEMENT

In the figure, Shared Memory represents memory space accessible by all work

processes. Roll Buffer memory is used to queue user dialog requests. When the Roll

Buffer becomes full, user dialog requests are swapped to the Roll File. Extended

Memory stores user context (i.e., user data), such as the authorization and session

context for each SAP session. Page Buffer memory holds large lists and long internal

tables. When the Page Buffer becomes full, data are swapped to the Page File. Shared

Buffer memory stores business objects and data. A dialog work process checks the

Shared Buffer first for required business objects and data before searching the BW

database. We will discuss the Shared Buffer later.

When a dialog work process becomes available to process the first user dialog request

in Roll Buffer, it allocates memory in the following order:

Page 7: SAP_BASIS fundamentals

1. The user dialog request, including the initial user context, is moved from the Roll

Buffer into Roll Area 1. There the dialog work process can access the required

data directly.

2. If Roll Area 1 is insufficient, more memory is allocated from the Extended

Memory.

3. If the Extended Memory is also insufficient, more memory is allocated from Roll

Area 2.

4. If Roll Area 2 is still insufficient, more memory is allocated from the Private

Memory. Once this allocation takes place, the current dialog work process will no

longer be available to process other user dialog requests.

To make Private Memory available again to process other user dialog requests,

the operating system must restart the dialog work process.

5. If the Private Memory is still insufficient, the dialog work process is restarted, and

the user dialog request is terminated.

After the user dialog request has been processed, the user context rolls into the

Extended Memory and is ready for use by the next dialog request. In addition, the Roll

Area and Private Memory allocated for the current dialog work process are released.

This procedure is repeated for each user dialog request in an SAP transaction. At the end of the SAP transaction, the last dialog work process copies the modified user dialog request back to the Roll Area, and eventually back to the end user

B.3.1 SAP Buffer

The SAP Buffer stores frequently used business objects and data. With the SAP Buffer,

work processes don't need to access the database if the buffer already contains the

required information. This strategy helps to reduce database access, the load on the

database server, and network traffic, thereby improving overall system performance. If

the required information is not available in the buffer, it must be paged into the buffer

before it can be used, resulting in slower performance.

Page 8: SAP_BASIS fundamentals

If the SAP Buffer is too small, it cannot hold all of the required information. This

shortage of space results in the information being swapped out of the buffers.

If the SAP Buffer is too large, the native operating system will start paging because too

much memory is taken away and given to SAP, database, or other applications.

Two types of memoryes are there

1. SAP Memory

2. ABAP Memory

 

SAP Memory : It is global memory, means it is available for all the sessions which are in active status

 

ABAP Memory : It is local memory, It is available only for that particular session

Page 9: SAP_BASIS fundamentals

Client administration in sap ecc 6.0 – steps included

Client: Client in SAP environment is the area in the system with data on which a user works. Client is a logical entity through which a user can access the data in the database tables.

Data: The information residing in the database tables is nothing but data. There are many type of data in sap system. Out of them most important are 3 types they are 1. client dependent data 2. client independent data 3. client repository data

Client dependent data: The data which is accessible through a particular client is called as cleint specific or dependant data. Ex: User data

Cleint independent data: The data which is common for all the clients in the system is called as client independent or crossed client data. Ex: Transaction code data or t-code data

Client repository data: Application programs which makes SAP to run is called as client repository data.

Also, there are other types of data in SAP system like customizing data, application data, transactional data etc…

Standard clients of SAP System:

Master client(000): Master client is defined by SAP which comes along with the default installation. We can access the entire standard data in SAP system with this particular client. We should never do any changes to the data via mater client. The default users of this client are sap* and ddic as dialog users. The passwords are set at the time of installation.

Support client(001): This client is best example for customizing or development client. We can access the entire customizing data through this client. The default users of this client are sap* and ddic as dialog users. The passwords are 06071992 and 19920706 respectively.

Early-watch client(066): Early-watch client is used by SAP only to generate the performance report of the system which is called early watch report. The default users of this client are sap* and earlywatch. The passwords are 06071992 and support.

Client number can be anything between 000 to 999

Client administration:

The tasks involved in client administration are listed as follows…

1. Create/ Change / Display / Edit clients - T-Code (scc4)2. Local client copy – T-Code (sccl)3. Log of client copy – T-Code (scc3)4. Delete a client copy – T-Code (scc5)5. Remote Cleint copy – T-Code (scc9)6. Client Export – T-Code (scc8)7. Post client import – T-Code (scc7)

I will explain about first 5  transaction codes in this article. Remaining can be learned after completion of TMS article.

Steps to create a client:

Page 10: SAP_BASIS fundamentals

1. Login to the SAP system using SAP Logon 710 (In my case) using client 000, user: sap* and password: created by you while installation of ECC. Better to use your own user. You can create your own user using transaction code su01.

2. Type the transaction code scc4 in the command box and hit enter. You will ge the list of clients already existing in the SAP system.

3. Click on Display -> Change (Ctrl+F1) button which is located in the ‘Display View “Clients”: Overview’ screen

4. Click continue (Enter) in the information message (Caution: The table is cross client) The meaning of this message is that this table is related to all the clients and it is client independent table. So we should be very careful in modifying this table.

5. Now the same table is available for editing. We can change any client from this table. But for now we have to create a new client. so click the button ‘New Entries’ or F5 on the key board.

6. New Entries screen will be displayed7. Just fill the client number which is not there already in the existing clients list and type the name as

Cust_Raj, Type the city name Hyderabad, Standard Currency INR, Select the client role from drop down as Customizingand click SAVE button or Ctrl+S. You can use your own names and selections as per your requirement.

8. Data will be saved and will stay in the same screen. You can view the created client by going back to the previous screen. Click Back button (F3)

9. You can view and change the settings of a particular client by clicking on Display -> Change (Ctrl+F1) button any time

Steps to do local client copy:

1. Login to the SAP system using previously created client. There is no user to login to this client initially after creating a fresh client. But, we can login to the system using new client with the help of sap* which is virtual. The password of this user is pass

2. Type the t-code sccl to start local client copy3. Select the profiles SAP_ALL (All Client-Specific Data w/o Change Documents)4. Select the source client as 000. You also can select any other client which is already available for logging

in to the system5. Select the source client user masters as 0006. Click schedule as Background Job (F8). This job will take more than 1/2 an hour to finish, so that we

should run this job in background. The background work process will do this job.7. Hit enter in the information box (Profile SAP_CUST recommended for copying from client 000)8. Select the background server which is optional and select the check box immediately9. Click Schedule Job (F6)10. Click continue in the verification screen11. Hit enter in the message screen “Background job was successfully scheduled, log is displayed in scc3″

The log of this background activity of a local client copy can be viewed by using the transaction scc3. The details of this log contains Source and Target client numbers, Copy Type, Profile information, Status information, User who started this and tables statistics …etc

Above Local client copy took 1 hour 35 minutes in my machine ( Core 2 Duo E4500 @ 2.2 GHz processor, 3 GB RAM, 500 GB HDD). It was successfully completed and copied lines are  4962335.  Total tables are  52203.

Deleting client:

1. Deleting a client is very dangerous task. We should be very careful in deleting a client.2. Login to the client which you want to delete.3. Type the transaction code scc54. Tick the delete entry from T000 and click delete in Background button (F8).5. Click the background server and select the check box Immediately and click Schedule job.

Page 11: SAP_BASIS fundamentals

6. Click continue in verification screen.7. Hit Enter in the information message screen.8. This background job can be viewed by using t-code scc39. Do not delete any sap standard clients.

SAP Basis Daily Monitoring Tcodeshttp://sapbasisdurgaprasad.blogspot.in/2011/05/sap-basis-administration-made-easy.html