Manual Sap EPM

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 76

ABAP Stack Checks :

SM50: (Process Overview)

This transaction code will be useful to view the processes that are running currently in an
sap insance. In this view you can check whether there are free workprocesses to execute
the processes. If all the workprocesses are in running state and no work process is idle it
means that wait times will increase for the processes that are waiting in the dispatcher
queue leading to performance degradation. If you find that there are no free
workprocceses for maximum times that you may consider, increasing the number of
workprocesses.

SM66: (Global process overview)

This transaction code will be useful to view the processes that are running across all
instances/application servers of a SAP system. Similar to SM50 checks can be done in
this transaction as well.

SM51: (Application servers status)

This transaction code will be useful to view all the hostnames and application servers
status. If any application server is down, the same can be identified using status of the
server column. We can also figure out different Message types (Dialog, Batch, Update,
Upd2, Spool, ICM etc) configured for the respective servers.

SM12: (Lock entry list)

This transaction code will be useful to view all the sap locks that are present in the system.
As part of monitoring, we need to look for any old sap locks that are more than 1 day. If
any such locks, we need to analyse the reason for that lock for such longer duration and
take actions accordingly. A lock can be set for such a long duration due to a long running
background job or a lock is not released due to an application error or a program
terminated abruptly but lock not released etc.

ST22: (ABAP Dumps)

This transaction code will be useful to view all the abap dumps that have occured in the
system on a given day. As part of daily monitoring, it is the responsibility of the basis
administrator to analyse the dumps and take necessary actions to avoid issues.

Some of the examples of abap dumps are timeout issue, database space issue, spool
overflow issue etc

SM21: (System log)

This transaction is useful to view the log of the sap system for various operations. This log
will be very useful to identify various issue in advance and to take necessary measures.
System log is the place to check out for any timeout, network issues, database space
issues, message server issues, spool overflow, locktable overflow etc issues.
ST22: (ABAP Dumps)

This transaction code will be useful to view all the abap dumps that have occured in the
system on a given day. As part of daily monitoring, it is the responsibility of the basis
administrator to analyse the dumps and take necessary actions to avoid issues.

Some of the examples of abap dumps are timeout issue, database space issue, spool
overflow issue etc

SM21: (System log)

This transaction is useful to view the log of the sap system for various operations. This log
will be very useful to identify various issue in advance and to take necessary measures.
System log is the place to check out for any timeout, network issues, database space
issues, message server issues, spool overflow, locktable overflow etc issues.

SM13: (Update Requests overview)

This transaction is useful to figure the status of update system. Incase an update is
inactive we can figure out the same from this transaction and necessary action can be
taken and update can be activated again.

SM14 transaction can be called internally from SM13. These both transactions are useful
for update administration.
In SM13, you can select status (canceled, to be updated, v1 executed, v2 executed, all)
and time interval during which you would like to view the status execute to check the
overview of updates as per the status and time interval selected.

In case of canceled updates, analysis to be done whether to repeat update.

ST02: (Tune summary)

This transaction will be used to monitor:


 Buffer statistics like hitratio, swaps, db access details, size of buffer and free size of
buffer etc
 Important statistics related to  Roll area, Page area, Extended memory and heap
memory
 Call statistics like select, insert, update and delete
As a basis administrator, it is our responsibility to ensure there is more hit ratio for the
buffers and less swaps to ensure efficient performance of the sap system. In case you see
there are more swaps and less hit ratios for most of the buffers, then tuning buffers to be
carried out to ensure optimal performance.
 
DB12: (Backup logs)

This transaction is useful to check the details of


 
 last successful backup
 overview of database backups ( Success / failure of backup with log details)
 Archiving directory status (Free space of oraarch )
 Overview of redolog files ( Number of redologs that are not yet backed up)
 overview of redolog backups (Success / failure of backup with log details)
 
DB13: (DBA Planning calender)

This transaction will be useful to schedule various database backups & clean up jobs like
(whole database backup offline/online, Full backup online/offline, incremental backup
offline/online, redolog backup, update statistics, check db, cleanup logs, compress
database, verify database, initialize tape and validate structure jobs).

In this transaction, you can also check the status of every job that was scheduled and can
reschedule in case of failures.

DB14: (DBA operations log)

This transaction will be useful to check the status of following:

 Database backup
 Redolog backup
 BRSPACE log (extend tablespace issues etc)
 BRCONNECT operations (Update optimiser statistics , database check etc)

As an sap basis administrator it is our responsibility to check and ensure backups and
other cleanup jobs are successful everyday. Incase of failures, should figure out root
cause and take actions like rescheduling and ensure these jobs are successful.

SM37: (Job status overview)

This transaction will be useful to have an overview of jobs with different statuses.
As part of daily monitoring, SAP basis administrator should use this transaction to findout
canceled jobs and active jobs (for eg: long running - more than 24hrs etc).

Incase of canceled jobs, root cause for the failure to be figured out from the logs of the
respective job and to be actioned by rescheduling etc.
Incase of long running jobs, we need to figure out the reason for long running and action
them accordingly.

In SM37, using extended job selection option, we can even select the jobs based on start
condition, steps (like abap program, external command or external program), period etc

ST04: (Database alert logs and performance)

This transaction will be useful for (oracle) database administration. In this screen, goto
Alerts and drill down further. Click on "Database Check" to find out any errors or warnings
related to database like MISSING_STATISTICS, STATS_TOO_OLD,
LAST_BACKUP_FAILED, LAST_ARCHIVE_FAILED etc. After going through the error or
warning in details take necessary corrective actions based on the error like running update
stats again, re-triggering backup etc
Under Alerts, you can view Alert monitor which will summarize status of the database
under different heads like

 Space Management
 Performance
 Backup/restore
 SAP Consistency
 Health

Drill down on each of these to find out potential problems. These are color coded for ease
of administrator (Red for errors, yellow for Warnings and Green for OK status)

For Eg: If PSAPSR3 tablespace is >90%, you can see Space management in red color.
Then it is the responsibility of Basis administrator to take necessary actions on the same.

SP01: (Check Spool status)

This transaction is useful to find out the status of spool request and output request. In
SP01 transcation, you can list the spool requests or output requests between a given
interval.

In the list generated, you can check out the status of spool requests and findout any errors
by drilling down further.

For eg: if so many spools are in waiting status, find out whether output device is available
or not.

If many spool are in error status, figure out if there is any network issue and take
necessary actions.

What are the different Spool statuses and their significance?

If  customers complain that they are not able print anything from SAP, check out whether
there is any spool overflow.

What is spool overflow ? How to troubleshoot spool overflow issue ?

SXI_Cache: This Tcode is specific to XI or PI system. This Tcode is used to findout


whether cache refresh is happening or not. Incase if cache refresh is happening
successfully, it will indicate the same in green color. Otherwise it will be in red indicating a
problem with cache refresh.

If there is a problem with cache refresh then basis administrator has to troubleshoot the
same.

SLDCHECK: This Tcode will be useful to figure out whether connection to the SLD system
from the system on which you are testing is fine or not. In case the connection is fine, all
checks will appear in green. Incase of any issues, it will appear in red or yellow and then
basis administator has to troubleshoot it and make sure SLDCHECK is working fine.
Ensuring SLDCHECK is working fine is important to keep all systems in the landscape in
sync.

SXI_MONITOR: This TCode is specific to XI or PI system. This transaction will be useful


to figure out any errors or warnings in the processing of XI or PI messages. In case of any
issues, this needs to be informed to functional team and should be troubleshooted
accordingly with the functional team inputs.

DBO1: This transaction code is useful to findout the database locks that are present in the
SAP system.

As part of daily monitoring, SAP Basis administrator has to figure out if there are any long
pending locks more than 1 day etc and analyse reasons for the same. Sometimes if
programs/jobs got terminated abruptly without removing the database locks set, this will
lead to performance issues as other programs which needs that lock cannot set etc and
they have to wait indefinitely as these locks won't get released automatically. In case of
any long pending locks, Basis administrators should contact DBA team if any an dfigure
out the reason for these locks and action accordingly

Jack Stack Checks:  Please refer below links to understand Daily Java monitoring of SAP
Landscape:

SAP Java monitoring check list 1

SAP Java monitoring check list 2

To monitor live Cache system, please refer below link:

Live Cache Monitoring in SAP

Please find below table which summarizes daily monitoring tasks that are to be performed
by the SAP Basis Administrator:

Son Task
ABAP Stack Checks
1 Check process overview(SM50)
2 Check overall system process overview(SM66)
3 Check application servers status(SM51)
4 Check for any pending locks (SM12)
5 Check for Dumps in the system(ST22)
6 Check System log for any errors(SM21)
7 Check for any hanged updates or update status(SM13)
8 Check for excessive swapping (ST02)
Check for critical job status like backup,updatestats,checkdb
9
etc(DB13)
10 Check for longrunning/failed jobs status(SM37)
11 Check database alertlogs and performance(ST04)
12 Check spool job status (SP01)
13 Check cache status (sxi_cache) for PI System
14 Check SLD functionality(SLDCHECK)
15 Check SXI_MONITOR for PI system
16 Check for Database locks(DB01)
Java Stack Checks
1 Check java portal accessibility using link
2 Check server0 log for java system for critical errors
3 Check accessibility of management console
4 Check server node status 
5 Check default trace for critical java errors
6 Check java reports for memoryconsumption/swapping
Os level checks
1 Check filesystems usage (shouldb be <80%)
2 Check for swap space using topas etc
3 Check for work directory log files at oslevel for errors

How to schedule Basis standard jobs?


Goto transaction SM36 and click on "standard jobs" pushbutton. This inturn displays
standard jobs screen. Here select all the jobs and click on "default scheduling" push button
to schedule all of them as per their default schedule.
Incase you would like to change the default schedule for each job, it can also be done by
selecting each job and defining its start date/time and periodicity in the same screen.
What is the need of scheduling basis standard jobs?
Standard jobs are the jobs that should run regularly in the SAP system. These jobs will
perform housekeeping like deleting old spool requests (thus avoiding spool overflow),
deleting old background jobs/logs/updates/batch input sessions/ABAP short dumps,
collecting operating system/database level statistics (used for workload reporting) etc
What are the Standard jobs that should run in an SAP system & their significance?
SAP_CCMS_MONI_BATCH_DP: Internally this job runs
RSAL_BATCH_TOOL_DISPATCHING report. This job dispatches monitoring architecture
methods
SAP_COLLECTOR_FOR_JOBSTATISTIC: Internally this job runs RSBPCOLL report.
This job generates run time statistics for background jobs
SAP_COLLECTOR_FOR_PERFMONITOR: Internally this job runs RSCOLL00 report.
This job collects data for the performance monitor
SAP_COLLECTOR_FOR_NONE_R3_STAT: Internally this job runs
RSN3_STAT_COLLECTOR report. This job will collect non-abap statistic data (Distributed
Statistic Records - DSR)
SAP_REORG_ABAP_DUMPS: Internally this job runs RSSNAPDL report. This job cleans
up old abap short dumps
SAP_REORG_BATCH_INPUT: Internally this job runs RSBDCREO report. This job cleans
up old batch input sessions
SAP_REORG_JOBS: Internally this job runs RSBTCDEL report. This job cleans up old
background jobs
SAP_REORG_JOBSTATIC: Internally this job runs RSBPSTDE report. This job cleans up
old data from the run time statistics of the jobs
SAP_REORG_ORPHANED_JOBLOGS: Internally this job runs RSTS0024 report. This job
cleans up orphaned job logs. The logs that cannot be deleted by RSBTCDEL report (i.e
SAP_REORG_JOBS), remains as orphans which will be deleted by this job.
SAP_REORG_SPOOL: This job internally runs RSPO0041 report. This job deletes old
spool data
SAP_REORG_XMILOG: This job internally runs RSXMILOGREORG. This job deletes XMI
logs
SAP_SOAP_RUNTIME_MANAGEMENT: This job internally runs RSWSMANAGEMENT
report. This job does the SOAP runtime monitoring
SAP_REORG_UPDATERECORDS: This job internally runs RSM13002 report and this
deletes old update records
SAP parameter can be set using RZ10 transaction. Go to RZ10, select the respective
instance profile of the application server on which you would like to change the parameter.
From the dropdown of profile, select the instance profile (of the application server) on
which you would like to change the parameter.

After selecting the profile, select extended maintenance button and press change push
button.
It displays a screen with all the parameters as shown below:
You can either search the parameter or create the parameter and then set the value to the
desired and save the same as below.
Set the parameter value in the text box provided and click copy button to copy the same
and then press back button and press copy again in the next screen. After that, press the
back arrow to come to the following screen

Click on Save button to save and activate the profile.

Press no to goto the next screen


Press yes, to activate the profile.

The parameter will take effect after restart of the application server
Change and Transport System (CTS) is the tool provided by SAP for the creation,
documentation and distribution of changes within a system landscape.
CTS comprises of
Change and Transport Organiser (CTO): This provides several functions to facilitate
software development
Transport Management System (TMS): This is used to setup transport routes in the
landscape. This provides functions to perform organize, monitor and perform transports
within the landscape
Transport Tools (R3trans and TP): These are the tools that are used by SAP at operating
system level to communicate with SAP, database and the files generated during the export
process.
The transport control program (TP) is a utility for provided by SAP for managing transports
and to handle release upgrades. This utility is inturn called by other programs like CTS,
TMS and Upgrade control program (R3up)
R3trans is a transport program provided by SAP to handle transports between different
SAP systems and for the release upgrades. R3trans is usually not called directly and it is
called mostly by Transport control program (TP) and Upgrade control program(R3up)
How to import transport into an SAP system?
This article answers the following query:
How to add a transport to the import queue of a SAP system?
How to import transport into an SAP system?
What are the different modes of transport request and their significance?
How to check the transport log of a particular transport request?
Login to the system in which you would like to import a transport request and go to
transaction STMS_IMPORT as shown below:

Press Ctrl + F and search for the transport request to be imported into this system.
If the request is not yet added to the import queue, navigate to Extras -> Other Requests
-> Add (as shown in below screen)
Once you click on add, you will be prompted to enter transport request details as below:

Please enter transport request number and tick Import Again checkbox and press icon.
System then prompts you to confirm to attach transport request to import queue of the
system. Press proceed to confirm the same.
Then transport will get added to the import queue.
Now to import the transport, select the transport and press truck button to import the
request

Then system prompts you to enter following details:

Please provide Target client number and select immediate radio button to import the
request immediately or specify timing or event details in case you would like to carry out
the transport at a later point of time.
In the execution tab, select the mode of import synchronous or asynchronous.
If import is executed synchronously, dialog or background process is blocked until import
has ended. If import is executed asynchronously, dialog or background process will be
released after start of import.
What is the different modes of transport import? What is the significance of them?

Once you provide all these details, press tick mark

Click on Yes to confirm import which triggers import of transport into the system and will
return the return code after completion.
Once import is done, you can check the status of import in the import log by selecting the
request number in the import queue and press logs icon as shown in screen below:
This will display the overview of transport log as shown below. If all steps are successfully
completed then the import is successful. If any of the steps failed, try to identify the reason
for failure, troubleshoot and try to import again.
How to create an RFC destination?
Go to SM59 transaction:

Click on create icon in the above screen, which leads to below screen
Specify RFC Destination name and description and connection Type in the above screen

Please note respective connection type to be selected from dropdown based on the
connection required. Usually 3 is for ABAP system. (Pls find screenshot below)

In the below screen, please select load balancing radio button based on your system setup
(i.e if there is load balancing configured for your system, specify it as yes otherwise no)
Please provide Target host details like hostname or ipaddress and system number as
below:
As shown below, Proceed to Logon & security tab and provide following details:
Select trusted system as no, in case you would like to connect to a system with a user id
and password.
If you don’t want to get authenticated by credentials specify the system as trusted system
which won’t prompt to enter user id/pwd credentials in the below screen.
Please provide Language details like EN (for English), Client details, User id and password
for the system you would like to create a connection.
Please leave default values in other tabs (i.e MDMP & Unicode, Special options,
Administration) and then click on Save to complete the RFC creation.
How to Test RFC connection?

If it functioning well it should show output similar to below screen:

If this is fine, come back to earlier screen and execute Unicode test by clicking the button.
Output similar to below screen, should be displayed if connection is OK
Also you need to perform authorization test to make sure user id / password credentials
provided are correct.
Please navigate as below and perform the test:
Navigate to Utilities -> Test -> Authorisation test and click the same to execute.

If the RFC configuration is fine, screen shot similar above will appear. Otherwise an error
will be displayed based on which you need to troubleshoot to fix the issue.
How to delete an RFC ?
Goto SM59 and select the RFC that is to be deleted as shown below:

And click on delete icon


Click yes to confirm deletion, which deletes the RFC.
Click on Connection test tab to check the connection for the RFC
How to configure a printer in SAP?
Goto SPAD transaction

Click on display button of Output Devices, to display list of output devices as below:
Click on change button to view below screen and click on create button to get below
screen

As shown above, Please specify:

 Output device name


 Short name
 Device type
 Spool server
 Device class details
In the next tab, please specify host spool access method, host printer details

In the other tabs, please leave the default settings and press save which creates an output
device
How to take a print in SAP?
To take the printout, goto any transaction and after listing the contents, click on printer icon
to view the below screen.
In the above screenshot, select the output device (i.e new device that is created now) as
below
After selecting the output device, click on ticket mark to confirm to print.

After this, a spool request will get generated as above.


How to check the spool requests generated in SAP ?
This spool request can be viewed in SP01 transaction as below:
Click on execute to view the bleow list of spool requests

How to check the database size ?


Goto transaction DB02 and navigate to Space -> Space overview to view
Database name
Database system
Size
Free size
Used percentage
Number of database users
Number of tablespaces
Number of tables and size
Number of indexes and size
In DB02, navigate to Space -> Space overview to find all the above mentioned details

How to check the users that are present in database at SAP level ?
In DB02, navigate to Space -> Users -> Overview as below

How to check various tablespaces in SAP and their sizes?

In DB02, navigate to Space -> Table spaces -> Overview to view tablespaces details as
below.
How to view database active parameters at SAP level ?
Goto transaction DB02 and navigate to Additional Functions -> Database parameters as
shown below:
Click on Active parameters tab to view active database parameters

How to view SPFILE parameters at SAP level?


Click on SPFILE tab to view SPFILE parameters

How to view database Parameters history at SAP level?


Click on parameters history tab to view the parameters that are changed in the recent
past.
In the above screen click on Show parameters history. It displays window as below

Provide the date from which you would like to view the database parameter changes.
And then click on tick mark to view the database parameter changes from the selected
date.
How to export the database parameters to an excel sheet?
Click on export button (highlighted below) and select table as the output as shown in below
screen and the parameters can be exported to an excel or word as per the selection by
you.
What are the different types of traces in SAP?
SQL Trace (Trace for SQL statements)
Enqueue Trace (Trace for enqueue/lock requests, waiting etc)
RFC Trace
Table Buffer Trace
How to activate a Trace for a user in SAP system?
Goto transaction ST05 and you will get the below screen:

Select the type of trace you would like to activate and press activate trace to start tracing.
Please find below functionality of various functions in the above screenshot:
Activate Trace: This is used to activate the trace for the same user who is starting the
trace

Activate Trace with Filter: This functionality is used to trace the activity of a different user
(other than the user who is starting the trace) and filter can be done to trace a specific
transaction or program.

Deactivate Trace: This functionality is used to deactivate the trace


Display Trace: This functionality is used to display trace

Click on tick mark to display the trace


Click on Yes to display the trace as below:

Enter SQL Statement: This functionality is used to analyse an SQL statement


Click on this pushbutton to view the below screen:

Trace Status: This area is used to inform about the status of the trace at that point of time
like traces activated, deactivated etc
These TIME_OUT dumps usually occur if the program has exceeded the maximum
permitted runtime without interruption. After this program will get terminated and in ST22 a
dump will get generated.
Usually SAP system will terminate the program after permitted runtime to make the work
area available to other users who may waiting and to prevent a work area being blocked
unnecessarily long time like
Eg: Database accesses without a suitable index (Full table scan)
Database access with a large result set
Endless loops (DO, WHILE) etc
In SAP, there is a parameter rdisp/max_wprun_time which limits the maximum permitted
runtime without interruption. By default this value is set to 600 seconds. However, if you
are frequently encountering more dumps in SAP system due to this, you can consider
increasing this value to 3600 seconds to avoid this issue.
SAP parameter can be set using RZ10 transaction. Go to RZ10, select the respective
instance profile of the application server on which you would like to change the parameter.
From the dropdown of profile, select the instance profile (of the application server) on
which you would like to change the parameter.
After selecting the profile, select extended maintenance button and press change push
button.
It displays a screen with all the parameters as shown below:

You can either search the parameter or create the parameter and then set the value to the
desired and save the same as below.
Set the parameter value in the text box provided and click copy button to copy the same
and then press back button and press copy again in the next screen. After that press the
back arrow to come to the following screen

Click on Save button to save and activate the profile.


Press no to goto the next screen

Press yes, to activate the profile.


The parameter will take effect after restart of the application server

In SAP, there is a parameter login/no_automatic_user_sapstar whose default


value is 1. If the value is set to 1, automatic login of sap* into SAP system
using password PASS won’t be allowed.

In all of the above scenarios,

Pls set the value of parameter login/no_automatic_user_sapstar to 0 in both


the default profile and the instance profile and restart the instance. So
automatic login of sap* with default password will be enabled.

How to change SAP parameters?

SAP parameter can be set using RZ10 transaction. Go to RZ10, select the
respective instance profile of the application server on which you would like to
change the parameter.

From the dropdown of profile, select the instance profile (of the application
server) on which you would like to change the parameter.

After selecting the profile, select extended maintenance button and press
change push button.

It displays a screen with all the parameters as shown below:


You can either search the parameter or create the parameter and then set the
value to the desired and save the same as below.

Set the parameter value in the text box provided and click copy button to copy
the same and then press back button and press copy again in the next screen.
After that press the back arrow to come to the following screen
Click on Save button to save and activate the profile.

Press no to goto the next screen


Press yes, to activate the profile.

The parameter will take effect after restart of the application server
Afterwards, connect to the database and execute the following command:
In the following example am considering, oracle as the database.
sqlplus “/ as sysdba”
SQL > Delete from SAPSR3.USR02 where MANDT=’000’ and BNAME=’SAP*’;
In the above command, SAPSR3 is the schema of the database and USR02 is the table
name and MANDT is the client and BNAME is the user id.
In case you would like to activate sap* in client 500 and your schema name is SAPBPW
then the command would be as below:
SQL > Delete from SAPBPW.USR02 where MANDT=’500’ and BNAME=’SAP*’;
Once you successfully executed this command, you can login to sap system with SAP*
user id and default password PASS.
What is lock table over flow? How to resolve lock table overflow issue?
What is lock table overflow?
SAP manages locks using lock table. The lock table contains all of the informaton related
to locks like who is holding the lock and which locks are currently held etc. The size of the
lock table can be specified by the SAP parameter enque/table_size. The size of the lock
table limits the number of locks, lock owners and lock names. If this size is exceeded, then
the lock table overflow occurs.
How to identify lock table overflow issue?
In SM21 transaction log and ST22 dumps, if you find any error messages like
LOCK_TABLE_OVERFLOW, Lock table overflow, Internal lock administration error it
means there is a lock table overflow issue.
What is the parameter to be changed to increase lock table size in SAP?
Parameter enque/table_size to be changed to increase or decrease lock table size using
RZ10 transaction. Default value of this parameter is 32768. The min value that can be set
is 4096 and max value is 102400. The unit for this parameter is KB.
How to change SAP parameters?
SAP parameter can be set using RZ10 transaction. Go to RZ10, select the respective
instance profile of the application server on which you would like to change the parameter.
From the dropdown of profile, select the instance profile (of the application server) on
which you would like to change the parameter.
After selecting the profile, select extended maintenance button and press change push
button.

It displays a screen with all the parameters as shown below:

You can either search the parameter or create the parameter and then set the value to the
desired and save the same as below.
Set the parameter value in the text box provided and click copy button to copy the same
and then press back button and press copy again in the next screen. After that press the
back arrow to come to the following screen

Click on Save button to save and activate the profile.

Press no to goto the next screen


Press yes, to activate the profile.

The parameter will take effect after restart of the application server
As this is not dynamic parameter, for the new value to take effect, a system restart is
required after modifying the parameter.
What is the reason for lock table overflow?
A lock table overflow can occur due to
The lock table is configured too small (i.e value set to enque/table_size parameter is very
low)
Due to improper design of application which sets a large number of locks
Number of enqueue worprocesses configured in a sap system are less and update is very
slow/hanging due to which lots of locks are accumulated in lock table
Running a custom report with improper selection criteria (like very long time periods data
pull) which sets so many locks & eventually lock table overflow occurs
How to resolve lock table overflow?
Increase the size of lock table i.e increase the parameter enque/table_size value using
RZ10 transaction.
To determine the optimal value for this parameter, you can check the maximum locks set
so far in the history and the current number of locks set from SM12 -> Extras -> Statistics
Increase the number of enqueue workprocesses
How to change the number of workprocesses
A work processes is used to execute a particular type of job in an sap system.
There are different types of workprocesses as mentioned below:
DIA (Dialog workprocess): Used for execution of dialog steps triggered by active users.
For every dispatcher atleast 2 dialog workprocesses to be configured
UPD (Update workprocess): Used for execution of update tasks. Atleast one update
workprocess to be configured per SAP system. Also, more than one UPD can be
configured for a dispatcher
BTC (Background workprocess): Used for executing background jobs. Atleast 2
background workprocesses to be configured for an SAP system
SPO (Spool workprocess): Used for passing sequential data to printers. Atleast one spool
workprocess to be configured for an sap system.
UP2 (Update2 workprocess) : This is similar to UPD workprocess. There is small
difference in functionality based on criticality of the update.
ENQ (Enqueue workprocess) : This is required to administer locktable in the shared
memory. Locktable contains database locks for ABAP stack of an sap system. Only one
enqueue process to be configured for an SAP system.
To increase/decrease the number of workprocesses, value to be changed accordingly for
the following parameters as per workprocess in RZ10 Transaction.
rdisp/wp_no_dia (for dialog workprocess)
rdisp/wp_no_btc ( for background workprocess)
rdisp/wp_no_spo (for spool workprocess)
rdisp/wp_no_enq (for enqueue workprocess)
rdisp/wp_no_vb (for update workprocess)
rdisp/wp_no_vb2 (for update2 workprocess)
In RZ10 transaction, select the profile of the instance, for which workprocess number to be
changed and edit the profile through extended maintenance and save the changes done
and activate the profile.
Please note that as this parameter is not dynamic one, restart of the application server is
required for the changes to become effective.
What is the difference between Config Tool and Visual Administrator tools in SAP?
Config Tool and Visual Administrator(VA) are the administration and configuration tools in
SAP Netweaver AS Java.
What are the prerequisites and uses of config tool ?
The prerequisite for the config tool is database must be running, as this tool is used to
maintain the SAP Netweaver AS Java settings in the database. It is not necessary that
Java should be running to use config tool.
Uses of config tool :
The Java Virtual Memory(JVM) settings can only be maintained with the config tool.
Configuration of services and managers can be done with config tool
Limitations of Config tool :
Remote configuration cannot be done by Config tool
Start or stop of java cannot be done through config tool
Change of parameters at run time is not possible
What are the prerequisites and uses of Visual Administrator?
With visual administrator, we can logon to the P4 port of the AS Java. Hence both
database and java should be running. This is the prerequisite for VA.
Uses of Visual Administrator :
Configuration of services and managers can be done
Remote configuration can be done ( It means VA can be installed and used for
configuration in any host on which SAP Netweaver AS JAVA is not installed
Starting and stopping services can be done
Stopping an SAP NW As java instance can be done
What is the difference between Config Tool and Visual Administrator tools in SAP?
Java Virtual Machine parameter settings can only be done through Config tool. VA cannot
be used for this
To use VA, SAP Netweaver AS Java should be running but for config tool it is not required
Changes to selected parameters can be done at run time through VA, which is not
possible with Config tool.
AS Java can be started/stopped by VA which is not possible by Config tool
Remote configuration can be done by VA but not by config tool.
What is spool overflow ? :

Spool request that got generated are stored in a temporary sequential file called Temse.
Please note that these are stored in Temse because these are not stored permanently.
The size of the Temse is limited by the parameter definition.
The default size of Temse is 32,000 and it can be increased till 2 billion. However, defining
very high value can effect the database performance. Due to limited storage capacity of
Temse, when this file got full, this throws an SAP spool overflow error.

If this happens, customers could not print from SAP. If you check in SM21 and ST22
transactions, you may encounter some error log or dumps like

ERROR IN SPOOL call : SPOOL OVERFLOW


SPOOL_INTERNAL_ERROR
System internal error in the spool system
How to troubleshoot spool overflow ?

To resolve this spool issue, some of the old spools can be deleted from the sap system.
Goto transaction SPAD. From the initial screen, navigate to Administration ->
Clean_up_spool. Once you click this, Spool Administration : Delete old spool requests
screen will be displayed.
In that screen, you will be prompted to choose requests for deletion like

Old spool requests older than the maximum set age


Requests already printed
All spool requests
and enter value for minimum age (in days) text box.
Select the check boxes as per the requirement (eg: delete all requests already printed and
minimum age in days equal to 30 days) and execute to delete old spool requests, which
will clear Temse and will resolve spool over flow issue.
Apart from this there are others ways of resolving spool overflow issue. They are
1) Run the report RSPO0041 from SE38 transaction to delete old spool requests
2) Run the report RSPO0043 from SE38 transaction, which checks the Temse/spool
consistency and reorganizes the spool
How to avoid spool overflow issue ?

These reports RSPO0041 and RSPO0043 should be scheduled as background


jobs with proper variants on a periodic basis which avoids spool overflow issue.

You can try to increase the spool numbers from default 32000 to a bit higher value
but please note donot set this too high as it may impact database performance

Proactive monitoring check can be made in RZ20 transaction to see how much is
the fill level of spool numbers.
How to check spool numbers ?

To check spool numbers : Goto RZ20 transaction, navigate to SAP CCMS


Monitor Templates -> Spool System.
Here you can check the status of spool servers and the used numbers percentage of spool
numbers. If you find that used numbers is greater than 80%, you can manually run above
mentioned reports or delete old spool requests from SPAD tcode as mentioned earlier.
How to set the spool number in SAP ?
Using Transaction SNRO (Number range object maintenance) and object SPO_NUM, you
can set the spool number in an SAP system.
Once you provide object as SPO_NUM, click on change icon. It displays another screen.
In that screen, click on Number Ranges push button. It displays another screen "Number
range for spooler numbers". Click on change icon here and set the value of spooler(from
number and to number). Please note that a change request may be generated here based
on the client settings(if automatic recording of changes is set in SCC4 transaction of the
client)
How to define storage location (Temse) of spool requests ?
Every Temse object contains a header in TST01 table and the actual object. This can be
either stored in table TST03 or in file system. You can set a parameter rspo/store_location
in RZ10 to define whether to store Temse objects TST03 table or in filesystem.
If value G is set to this parameter, it will be stored in filesystem and if it is db it is stored in
TST03 table.
What are the different Spool statuses and their significance?
What does spool request contain ?

Spool request contains detailed information regarding printer model, formatting to be done
on the data to be output.

Where is the spool request stored ?

The spool request that is generated is stored in the Temse( temporary sequential file)

What are different Spool statuses and their significance?

Spool requests will have different statuses like

Completed (The output request printed successfully)


Waiting (Spool request is in waiting status and spool system has not yet processed the
output request and not yet sent to the host system)
Inprocess (The spool workprocess is in the process of formatting output request for
printing)
Printing (The host spool is in the process of printing the output request
Problem (This indicates there are some minor errors. It means output request printed but
contains some errors like incomplete character set etc)
Error (This status indicates some serious issues such as network error. It means the
requests have not printed and they remain in the spool system until they are deleted or
until they reach their expiration date. After expiry date, they are deleted by the
reorganisation jobs.
Archive (This status is set for spool requests that are sent to an archiving device. This
status means that the spool request was already processed by the spool system and it is
now waiting to be archived)
Time (This status means that the user who has created the spool has mentioned some
specific time for output)
- ( This minus status means that the spool request is not yet sent to the host system and
no output request exists)
+ ( This plus status means that the spool request is being generated and it is stored in the
spool system )
Which workprocesses will create spool requests? :

Spool requests will be created by dialog or background workprocesses.


Please note that spool work processes donot create spool requests

What is the difference between spool request and output request ?

Spool request contains detailed information regarding printer model, formatting to be done
on the data to be output. Output request contains all the data in the format that the printer
understands.

A spool workprocess formats the data specified in the spool request and generates the
output request. Output request is also termed as print request.

Which workprocess will create output request ?

Output request will be created by spool workprocesses.


How to add or extend datafiles in sap system based on oracle database ?
What is BRTOOLS?
BRTOOLS is the database administration tool supported by SAP for oracle database.

How to access BRTOOLS ?

BRTOOLS can be accessed by logging into database host as ora<sid> user and calling
brtools at the command prompt.

How to add or extend datafiles in sap system based on oracle database?

Once brtools is called at command prompt, following menu will be displayed

BR*Tools main menu

1 = Instance management
2 - Space management
3 - Segment management
4 - Backup and database copy
5 - Restore and recovery
6 - Check and verification
7 - Database statistics
8 - Additional functions
9 - Exit program
Standard keys: c - cont, b - back, s - stop, r - refr, h - help
======================================
Select option 2 - Space management from the above query and press c to continue.

It displays another screen as below :

Database space management


1 = Extend tablespace
2 - Create tablespace
3 - Drop tablespace
4 - Alter tablespace
5 - Alter data file
6 - Move data file
7 - Additional space functions
8 - Reset program status

Standard keys: c - cont, b - back, s - stop, r - refr, h - help


=============================================
Select Option 1- Extend tablespace and press continue.

In the next screen, you will be prompted to enter tablespace name, size/location of new
datafile to be added, initial filesize, maximum filesize, autoextend (yes/no). Please provide
all the relevant details and you can see an SQL query is being built based on the inputs
given by you.

Once all the inputs are provided, press continue to execute the command and the datafile
will be added.
Update got deactivated. What are the reasons for update deactivation. How to activate the
update?
Update status check :

Update status can be checked in transaction SM13.


Reasons for update deactivation :

Update will get deactivated in cases of serious database problems.

Some of the examples of update deactivation and solutions for those are given below :

1) Update will get deactivated when oraarch is full

Solution : Trigger archivelog backup and ensure sufficient space is left in oraarch and then
activate the update manually

2) When some critical tablespaces are 100% full and database is not able to perform
some operations

Solution : Monitor the database and findout the tablespaces which are 100% full. Add
necessary datafiles and ensure there is enough free space left out in them. Then activate
the update manually
How to activate or deactivate an update in sap ?

Use transaction SM14 and goto update tab. There update status can be viewed with a
push button. If it is in deactivated status, click it to activate and viceversa.

How to troubleshoot, if update got deactivated ?

Please perform the following steps if udpate got deactivated :

Check all the tablespaces and ensure figureout if any tablespace is 100% full. If so, add
necessary space and activate the update as mentioned above

Check if oraarch is full. Trigger archivelog backup and ensure there is enough space and
activate the update again

Check SM21 log and ST22 dumps

Check workprocess trace for any other issues

What happens for the updates that are in progress, if update got deactivated ?
If update got deactivated all the updates that are in progress or waiting to get executed,
won't be cancelled. They will be assigned either init or auto status. Once the database
issue got fixed and update is activated again, all these updates which are in init or auto
status will resume again
How to delete an SAP lock ?
SAP lock is set by the executing workprocess when a user/job wants a change access to
data.

Whenever a lock to be set the respective workprocess checks in the locktable whether a
respective lock conflicts the existing entries in the locktable. If so, a lock is refused. If there
is no conflict, then a lock is set.

There are different types of locks :

Write locks (E) : This is also known as exclusive lock mode as the lock data can be edited
by only one user. Any other requests from workprocesses to set another write lock or read
lock are rejected. A cumulate lock can be applied on the lock data by the same lock owner
again.

Read locks (S) : This is also known as shared lock mode as several users can have read
access to the locked data at the same time. Additional read lock requests are entertained
even if they are from different users. However a write lock is rejected.

Enhanced write locks (X) : This is also known as exclusive non-cumulative lock mode. An
enhanced write lock can be requested only once even if it is by the same transaction.

Difference between write locks(E) and Enhanced write lock(X) is write locks can be set
and released by the same transaction several times but X type locks can also be set once
even by the same transaction.

Optimistic locks (O) : These locks are set up when the users displays the data in change
mode. Several optimistic locks can be setup on the same data. Optimistic locks are read
locks(S) at first and converted to write lock (E) when the users wants to save the data. If
an optimistic locks on a data is changed to write lock(E), all other optimistic locks on that
data will be deleted.
Locks that are set by an application program are released by the program itself or they are
released by the update program once the database has been changed.

Transaction code SM12 can be used to monitor SAP locks.

Here you have option of selecting locks based on following parameters


tablename
lock argument
client
username

In case, as part of monitoring, if you encounter some old sap locks and after thorough
analysis, you would like to delete these, it can be done in the following ways :
Select the locks and delete the lock from SM12
Identify the user who has set the respective lock and end the user session using SM04
transaction code
How to configure Early Watch Alert report
To configure Early watch alert some specific settings to be done at managing system
(Solution manager system) and satellite system( or managed system – for which EWA
report to be generated)
Following are the steps to configure EWA in a satellite system :

1) Check whether latest versions of ST-A, ST-PI, ST-A/PI packages are installed in the
managed/satellite system
(This check can be done going to system->status -> Component information display in any
sap screen)

2) If they are installed, run RTCCTOOL report from SE38 transaction code of satellite
system.

Check the output of the report. If there are some errors or warnings in the output of the
report, please take corrective actions and run the report again and ensure there are no
errors

3) Setup RFC connection between your satellite system and the solution manager system
An RFC connection can be made between 2 systems using Transaction code SM59
4) Setup RFC connection between your solution manager and the SAP service market
place

5) Assign the solution monitoring roles to the users

6) Setup your satellite system in a solution landscape of the solution manager(SMSY)

7) Make sure SLD is configured and working fine for satellite system (using Rz70 and
SLDCHECK transactions)

8) Activation of SDCCN in satellite system (Goto SDCCN transaction. Then click on


Utilities -> Activate) then confirm for SDCC_OSS destination creation
9) In satellite system, goto SDCCN transaction and navigate to Goto -> Settings -> Task
specific.
In the resulted screen, select RFC destination and provide the solution manager RFC from
the satellite system and set solution manager RFC as the master system.

10) Addition of satellite system in solution manager system in SDCCN :

Goto SMSY transaction in solman system and then navigate to Environment -> Solution
Manager Operations -> Adminstration SDCCN to add the new service data control centre
to the solution manager.

Click on add system button to add the new SDCC to the solution manager. When
prompted, please select the respective system and client from the resulting screen and
confirm

11) Early watch service session activation for satellite system:

In the solution manager system, execute transaction code solution_manager and navigate
to operations -> Earlywatch Alert and press create button. This prompts you to confirm the
date and time to run the report. Please provide the details and confirm to trigger the
generation of the report

12) Login to satellite system, goto transaction code SDCCN and press create button which
displays a screen to select a task to be executed. Select request session data task and
click continue. You will be prompted to enter the schedule time to run the report. Click now
to execute it immediately. After that you can see an early watch session running in
SDCCN.

13) After completion of this session run successfully, an Earlywatch Alert will be generated
and this can be viewed in Solution_manager of Solution manager system.
Oracle Background Processes
Background processes are created from the oracle binary when an instance is started. As
the name suggests background processes run in background and they are meant to
perform certain specific activities or to deal with abnormal scenarios that arise during the
runtime of an instance.
From SAP perspective, the following are the 6 most important background processes of
oracle database.

Database Writer (DBWR) :

The database writer writes dirty blocks from the database buffer to the datafiles.

Dirty blocks need to be flushed out to disk to make room for new blocks in the cache.
When a buffer in the database buffer cache is modified it is marked as dirty buffer. A cold
buffer is a buffer that has not been recently used according to the least recently used
(LRU) algorithm. The database writer writes cold, dirty buffers to disk so that new blocks
can be read into the cache.

The initialization parameter DB_WRITER_PROCESSES specifies the number of database


writer processes. The maximum number of database writer processes is 20.

The database writer writes the dirty buffers to disk under the following conditions :

When a checkpoint occurs


Every 3 seconds
When a server process couldn’t find a clean reusable buffer after scanning a threshold
number of buffers

Log Writer (LGWR) :

The log writer process writes data from the redolog buffers to the redolog files on disk.

The redolog buffer is a circular buffer. When LGWR writes redo entries from the redolog
buffer to the redolog file, server processes can overwrite the entries that are already
copied with new entries in redolog buffer. LGWR writes at a faster pace so that space is
always available in the buffer for new entries.

The log writer gets activated under the following conditions :


When a transaction is commited
Every 3 seconds
When the redo-log buffer is 0ne third full
When a database writer writes modified buffers to disk, if necessary
Note : Before database writer can write dirty blocks to disk it should make sure that all
redo entries are written from the redolog buffer to the disk. This is also known as write-
ahead logging. If database writer finds that some redo-records are not written, it signals
LGWR to write to disk and waits for LGWR to complete writing the redolog buffer before it
can write out the databuffers.

Checkpoint (CKPT) :

Checkpoint signals the synchronization of all database files with the check point
information. It ensures data consistency and faster database recovery in case of a crash.

The checkpoint process regularly initiates a checkpoint. Whenever a check point occurs
following things are carried out :

Updating the file headers of the data files with information about the last checkpoint
performed
Update control files about the last checkpoint
Initiates LGWR to flush the redolog buffer entries to redolog files.
Writes the checkpoint record to the redolog file
Initiates DBWR to write all dirty blocks to disk and thus synchronizes database

Archiver Process(ARCH) :

The archiver process copies online redolog files to the designation archive log location
after the occurrence of a log switch. It is an optional process. Archiver is present only
when database is running in archive log mode and automatic archiving is enabled.

You can specify multiple archiver processes with initialization parameter


LOG_ARCHIVE_MAX_PROCESSES. ALTER SYSTEM command can be used to
increase or decrease the number of archiver processes.
However it is not recommended for us to change this value, as Log writer starts a new
archiver process automatically when the current archive processes are insufficient to
handle the workload

Process Monitor (PMON) :

The process monitor performs process recovery when a user process fails. PMON is
responsible for cleaning up the database buffer cache and freeing resources that the user
process was using like releasing locks, removing process ids from active processes list
etc.

PMON checks the running status of dispatcher and server processes periodically and
restarts in case any have stopped. Please note that this won’t start processes that are
intentionally stopped by Oracle.

PMON also registers information about the instance and dispatcher processes with the
network listener.

PMON wakes up every 3 seconds to perform house keeping activities and should be
running always for an instance.

System Monitor (SMON) :

The system monitor performs instance recovery, if necessary, at instance startup. SMON
is also responsible for cleaning up temporary segments that are no longer in use and for
coalescing contiguous free extents within dictionary managed tablespaces.

SMON can be called by other processes in cases of need. SMON wakes up every 5
seconds to perform house keeping activities. SMON must always be running for an
instance.

Query to view background processes of Oracle :


Goto SQL prompt of oracle database system and provide following command to view
background processes.

SQL>

Select * from v$session where type = ‘BACKGROUND’;


How to apply a note in SAP system ?
What is SAP Note ?
SAP releases notes on regular basis to provide the corrections/minor improvements to the
existing bugs/issues/functionalities. Since periodicity of release of Support packages is
very less, to resolve customer issues SAP releases notes to customers on regular basis to
fix bugs.
What is the use of SNOTE transaction code ?
A note can be applied in SAP system using SNOTE transaction.
How to apply a note in SAP System ?
Before applying any note, please download SAP note. Go to SNOTE transaction and
navigate as shown below and download the note that is to be applied

Enter the note number to be downloaded and press execute button to download the note
as shown below
You can view the downloaded note in the “New” section under SAP notes as shown below.
Once the note got downloaded, to implement the note, select the note as shown below
and click on execute button to implement SAP note

After that, system prompts you to confirm that you have read the note. Please make sure
you have read the note thoroughly before you implement the note. Please find out the
applicability of the note to your system by cross-checking with the system SAP
release/version/database etc.
As shown above press Yes button to confirm that you have read the note and proceed
further.

In the information popup window, press continue as shown above.


After that, systems prompts for transportable workbench request. Please click on create
request button as shown in below screen.
In the create request popup screen, please provide request details and save to create
request as shown below screens
After that, list of changes that are being made will be displayed as shown below. Click on
continue button to proceed to apply the changes

Click on continue button in the below screen to proceed further


Once the SAP got implemented successfully, it moves from New section to Processing
section as shown below

You might also like