Profile parameter categories in SAP

Some important categories of SAP system parameters.

You can view parameters using RZ11 and change them using RZ10.
or use report RSPFPAR through SA38.
* ES/* : Related to extended memory settings
* INSTANCE* : Identify an instance or server
* ABAP/* : Related to program execution, including heap settings
* AUTH/* : Related to authorization
* DBS/<DB Type/* : Database specific parameters
* EM/* : General system related settings
* ENQUE/* : Settings for the enqueue WP (or standalone ENQ server)
* GW/* : SAP Gateway related settings
* ICF/* & ICM/* : Settings for the Internet control framework and ICM
* LOGIN/* : Controls the logon environment (such a multiple sessions etc)
* MS/* : Message server related settings
* RDISP/* : Controls the dispatcher & dispatcher controlled processes
* STAT/* : Statistics collector related parameters
* SCSA/* : Shared common system area parameters
* ZTTA/* : Extended memory related parameters

More System Monitoring

The Following are the transaction codes used for the System Monitoring:
This Traction is used for Check for Lock Entries. There may be old locks still in place from transactions that did not release, or from when the user was cut off from the Network. If any lock entries are exist then we have to check since how long this lock existing. If, this lock existing from more than one day then we should check that particular User is available or not (By using the Transaction Code AL08). If he is not available then Delete that lock. Otherwise we should wait 1 or 2 Days.

SM13 :
This Transaction is used for Check for any Errors in Update Records. A failed or “Update Terminate” is an update to the failed database. These failed Updates occurs when a user entry or transaction is not entered or Updated in database. And we should check Whether Update is ACTIVE or not. And also we should check any Update Records are terminated.

SM21 :
This Transaction is used to check System Logs. After hitting the traction we should goto System log–> Chooseà All Remote System logs, and set Date and time to before the Last log review. And we should check whether any Errors, Warnings, Security Messages, Database, Abends, Any other different Events are there.The log is important because unexpected or unknown warnings and errors could indicate a serious problem.

SM51 :
This Transaction is used to check that all Application Servers are UP. And also This transaction is a central transaction from which you can select the instance to be monitor.

SM50 :
This Transaction is used to check Work Process Overview and for Systems with out Servers. Here all work processes with a “Running” or “Waiting” State. If Batch Jobs are not Running, If all the work processes are in use, this transaction provide a hint of this problem.

ST01 :
This Transaction is used for System Trace. By this transaction we can trace that what are the operations performed on particular file by particular user on which dates.

ST02 :
This transaction is used for Buffer tuning or Buffer Statistics. And it is used to tune Buffer perameters of R/3. The Buffer is important because significant buffer swaping reduces performance. Look under “Swaps” for Red Entries. Regularly check these entries to establish trends and get a feel of the Buffer behaviour. And in this transaction we should Maintain “Hit Ratio” is in between 90 – 100% for all , and “Heap Memory” allocated should be “0” , and “Swaps” is 0.

ST03 :
This Transaction is used to Check Work Load Analysis of . Workload Analysis is used to determine System performance. Check Statistics and Record Trends to get a feel for the System’s Behaviour and Performance. Understanding the System when it is running well helps us to determine what changes may need to be made when it is not.

ST04 :
This Transaction is used for Database Performance Analysis. This transaction provides the ability to Monitor the Database in related to 1) In Shared Pool “SQL Area Get Ratio” should be 90 – 95% 2) In Log Buffer Allocation Retries / Entries <1% 3) In Data Buffer “Quality” should be in 90 – 95% 4) In Sorts Disk / Memory <1% 5) In Table Scan & Fetches “Long Table Scans” should maintain as minimum as possible. And we should check Detailed Analysis then we should hit “Detailed Analysis menu” Button in this screen. In that we can check Database Overview like “Exclusive Lock Waits” , “Wait Events”, “Buffer Busy Waits”, “ File System Request”, “ Database Message logs”, “ SQL Requests”, Summery Report for all activities, etc

ST22 :
This Transaction is used to Analyse ABAP Dumps or Short Dumps. This transaction is also used for Analyse and Determine why the error occurred and take corrective action. It looks for an excessive number of dumps, and also dumps of an unusual nature. A ABAP dump is generated when a report or transaction terminates as a result of a serious error. The system records in the System Log(SM21) and writes a snapshot of the program terminate to a special table.

DB02 :
This transaction is used to check all table Spaces and Indexes. Here we should check table spaces sizes. If any table used space is =>99 then we should increase add the space for particular table space. And this transaction is provides a way to examine database allocation. And this transaction is allows us to monitor items such as: a) DB Space History b) DB Analysis By this transaction we can view Database history by Dates and Times.

DB12 :
This Transaction is used to check database Backups. And in this we should we see successful Backups and Unsuccessful Backups list

AL08 :
This transaction is used to Check the users on the System. This transaction displays User Ids and Terminal Names who are currently logged on the system.

SM37 :
This transaction is used for Monitoring Background Jobs. Background are batch jobs scheduled to run at specific time during the day. Here we should check for cancelled jobs. Here If we want to check particular job then,we should enter the Job Name and enter User name in User name field or ‘*’ and hit execute Button. And verify that all critical jobs are successful.

SAP Daily System Monitoring

If you haven’t got SAP Solution Manager installed and configured yet, give me a buzz, if you haven’t got the money, use the guide below 😉 cheap and cheerful and will keep you busy for a few hours every day.

Daily System Monitoring:

SM51 SAP Servers :
1- Check Availability of All Servers
2- Check Process Lists for All Servers for Unusual Processes or Activities (e.g. Extra-long execution times, too many errored processes, too many sequential reports)

SM66 Global Process Monitor:
1- Check for over-all system process utilization
2- Are Batch id’s taking up too many DIA processes
3- Is one user running too many BGD jobs for the same report
4- Is one server being used heavily compared to others

SM21 System Logs:
1- Is there any repetitive errors in the system log
2- Any unusual repetitive failed login attempts

ST22 Short Dumps:
1- Except ‘Time-Out’ errors, is there any short dumps.

SMLG Logon Groups:
1- Check load distribution (Menu: Goto–>Load Distribution)
2- Are server response times acceptable? (< 2 sec)
3- Is user distribution even among active servers

ST03N Workload Analysis:
1- Check is daily, weekly and monthly totals are being calculated for each server
2- Check for Avg. Dialog Response Times. Is it below 2 secs

SM12 Lock Overview:
1- Check for outdated lock records
2- Verify that these lock records are not actively being used and delete these lock records if they are obsolete

SM13 Update Records:
1- Check if the ‘Update System’ is active.
2- If not active, investigate what happened
3- Activate ‘Update System’ after fixing the problem
4- Review update records of past two days and delete if errored or obsolete

SM37 Background Job log:
1- Check if the are any critical jobs that were canceled
2- Identify/Fix the problem
3- Contact canceled job user for details
4- Reschedule if needed

SP01 Spool Request overview:
1- Check if there unusual number of errors in spool (>100)
2- Check if there are spool request with more then 200 pages
3- Should not be a need to delete any as the daily job should handle, unless too many spools are old.

ST04 Database Activity Monitor:
1- Check ‘Data Buffer’ and ‘Shared Pool Cache’ quality
2- Investigate and make suggestions to the team to improve quality of these buffers

DB02 Database Performance:
1- Check ‘Current Sizes’ to see if any tablespace is above %90
2- Add new datafile to the tablespace if needed
3- Check if there is space-critical objects
4- Check if there is any missing objects in DB or R/3 Data Dictionary

DB16 Database Check, Overview of message:
1- Check if there is any messages
2- Take immediate action to fix the problem
3- Notify the team if there is any parameter changes or assistance needed for Production Systems

DB24 Database Operations Logs:
1- Check if all DB Operations are executed
2- Check if any of the operations generated any errors
3- Fix the problem. Notify team if needed

DB12 Database confirm backup success:
1- Check to see that the previous backup was successful
2- If a backup is currently running check its status
3- If the last backup failed , check the reason correct and resubmit.

ST06 OS Monitor:
1- Click on ‘Detailed Analysis menu’
2- Click on ‘CPU’ in ‘Previous Hours’ Group
3- Check if at any past hours is > %80
4- Notify Team if there is any such case

SAP Memory Buffers

Types of Buffers

NTAB buffer:

The name table (nametab) contains the table and field definitions that are activated in the SAP System. An entry is made in the Repository buffer when a mass activator or a user (using the ABAP Dictionary, Transaction SE11) requests to activate a table. The corresponding name table is then generated from the information that is managed in the Repository.

The Repository buffer is mainly known as the nametab buffer (NTAB), but it is also known as the ABAP Dictionary buffer.

Table definitions: TTAB

Field descriptions: FTAB

Initial record layouts: IREC Buffer (Contains the record layout initialized depending on the field type)

Short Nametab: SNTAB Buffer (A short summary of TTAB and FTAB buffers)

The description of a table in the Repository is distributed among several tables (for field definition, data element definition and domain definition). This information is summarized in the name table. The name table is saved in the following database tables:

DDNTT (table definitions)
DDNTF (field descriptions)

The Repository buffer consists of four buffers in shared memory, one for each of the following
The Short nametab and Initial record layouts are not saved in the database. Instead, they are derived from the contents of tables DDNTT and DDNTF.

When access to a table is requested, the database access agent embedded in each work process first reads the Short nametab buffer for information about the table. If the information is insufficient (for example, the SELECT statement uses a non-primary key) it accesses the Table definitions buffer and then the Field descriptions buffer.

By reading the Repository buffers, the database access agent knows whether the table is buffered or not. Using this information, it accesses the table buffers (partial buffer or generic buffer) or the database

Program buffer: Also called as
SAP executable buffer
ABAP buffer
PXA (Program Execution Area)

Stores the compiled executable versions of ABAP programs (loads).

The contents of this buffer are stored in tables D010L (ABAP loads), D010T (texts) and D010Y (symbol table)

Calender Buffer:
The SAP calendar buffer stores all defined factory and public holiday calendars.
Calendars are stored in the database tables TFACS and THOCS.

There are two kinds of SAPgui buffers
Presentation buffers
Menu buffers
The following table shows the SAPgui buffers and their functions:

The buffer has a directory structure. This means that if the shared memory is configured too small, only the required data is loaded; there is no LRU displacement of the contents of the buffer.
Presentation buffer (Screen Buffer): Stores the generated screens (DYNPRO loads)
Menu buffer (CUA Buffer): Stores objects from the SAPgui.

For example, menus, pushbutton definitions.
The buffer has directory structure and supports LRU displacement.
The menu buffer is adjusted by amending its instance profile parameters

The CUA buffer holds objects from the GUI interface, such as menus, pushbuttons, and so on. In the database, these objects are held in tables D342L and D345T. Its size is expressed in KB. The standard SAP recommendation is: Up to 2500 KB for small systems, up to 3000 KB for medium systems and up to 6000 KB for large systems.

SAP Background Jobs

Background Jobs:

Background processing is used to: Reduce the load on the dialog processor, as the dialog wp duration is limited.

You can define and schedule background jobs in two ways from the Job Overview:

  • Directly from Transaction SM36.
  • The Job Wizard : To use the Job Wizard, start from Transaction SM36, there you’ll find Job Wizard


  1. Call Transaction SM36.
  2. Assign a job name. Decide on a name for the job you are defining and enter it in the Job Name field.
  3. Set the job’s Priority or Job Class

  • High priority: Class A
  • Medium Priority: Class B
  • Low priority: Class C

Target server field, indicate whether to use system load balancing.

  • For the system to use system load balancing to automatically select the most efficient application server to use at the moment, leave this field empty.
  • To use a particular application server to run the job, enter a specific target server.

  1. If spool requests generated by this job are to be sent to someone as email, specify the email address. Choose the Spool list recipient button.
  2. Define when the job is to start by choosing Start Condition and completing the appropriate selections. If the job is to repeat, or be periodic, check the box at the bottom of this screen.
  3. Define the by choosing Step, then specify the ABAP program,external command or external programe to be used for each step.
  4. Save the fully defined job to submit it to the background processing system.

Status of Background Job:

Scheduled: Job created but start condition not defined.
Released: Job completely defined and is waiting for selection
Ready: Job has been selected for execution
Active: Job is being executed by a Background processor
Finished: Job successfully completed.
Canceled: Job terminated.

Start Condition:
Time Based : Immediate, At a date or time, On a chosen workday
Event Based: After an event, After a Job, After an operation mode switch.

Using SM37 you can monitor the Background Jobs.

SAP BASIS Transaction Codes


AL11 Display SAP Directories
OSS1 Logon to Online Service System
SARA Archive Management
SCC3 Copy Analysis Log
SCC4 Client Administration
SCC5 Client Delete
SCC7 Client Import Post-Processing
SCC8 Client Export
SCC9 Remote client copy
SCCL Local Client Copy
SICK Installation Check
SM01 Lock Transactions
SM02 System Messages
SM04 User Overview
SM12 Display and Delete Locks
SM13 Display Update Records
SM14 Update Program Administration
SM21 System Log
SM35 Batch Input Monitoring
SM50 Work Process Overview
SM51 List of SAP Servers
SM56 Number Range Buffer
SM58 Asynchronous RFC Error Log
SM59 RFC Destinations (Display/Maintain)
SM66 System Wide Work Process Overview
SAINT SAP Add-on Installation Tool
SPAM SAP Patch Manager (SPAM)
SPAU Display modified DE objects
SPDD Display modified DDIC objects
ST11 Display Developer Traces
ST22 ABAP/4 Runtime Error Analysis
SU56 Analyze User Buffer

Alert Monitoring

AL01 SAP Alert Monitor
AL02 Database alert monitor
AL04 Monitor call distribution
AL05 Monitor current workload
AL16 Local Alert Monitor for Operat.Syst.
AL18 Local File System Monitor
RZ20 CCMS Monitoring


FILE Cross-Client File Names/Paths
RZ04 Maintain Operation Modes and Instances
RZ10 Maintenance of Profile Parameters
RZ11 Profile parameter maintenance
SE93 Maintain Transaction Codes
SM63 Display/Maintain Operating Mode Sets
SPRO Customizing: Initial Screen

Database Administration

DB01 Analyze exclusive lockwaits
DB02 Analyze tables and indexes
DB12 DB Backup Monitor
DB13 DBA Planning Calendar
DB15 Data Archiving: Database Tables


SM36 Define Background Job
SM37 Background Job Overview
SM39 Job Analysis
SM49 Execute External OS commands
SM62 Maintain Events
SM64 Release of an Event
SM65 Background Processing Analysis Tool
SM69 Maintain External OS Commands


AL08 Current Active Users
OS01 LAN check with ping
RZ01 Job Scheduling Monitor
RZ03 Presentation, Control SAP Instances
ST01 System Trace
ST02 Setups/Tune Buffers
ST04 Select DB activities
ST05 Performance trace
ST06 Operating System Monitor
ST10 Table call statistics
ST03 Performance, SAP Statistics, Workload
ST07 Application monitor
STAT Local transaction statistics
STUN Performance Monitoring (not available in R/3 4.6x)


SP01 Output Controller
SP11 TemSe directory
SP12 TemSe Administration
SPAD Spool Administration


SCC1 Client Copy – Special Selections
SE01 Transport Organizer
SE06 Set Up Workbench Organizer
SE07 CTS Status Display
SE09 Workbench Organizer
SE10 Customizing Organizer
SE11 ABAP/4 Dictionary Maintenance
SE16 Data Browser
SE80 Repository Browser
SM30 Call View Maintenance
SM31 Table Maintenance
STMS Transport Management System

User Administration

PFCG Profile Generator (Activity Group Maintenance)
PFUD User Master Data Reconciliation
SU01 User Maintenance
SU01D User Display
SU02 Maintain Authorization Profiles
SU03 Maintain Authorizations
SU05 Maintain Internet users
SU10 User Mass Maintenance
SMLG Maintain Logon Group
SUPC Profiles for activity groups
SUIM Infosystem Authorizations

What are ABAP Dumps


An error in an ABAP program that is running in a background generally causes an immediate termination of the background job. If an ABAP program terminates, an ABAP dump is usually generated. This dump contains a description of the precise cause of the error.

You can use transaction code: ST22 to look at the dumps generated.

SAP BASIS Interview Questions

Some more info, I was forwarded these in an email and thought it might be useful for the readers here:

1.)We are running SAP release 4.0B using the 620 GUI. By default, my list, save, local file, directory is C:SapWorkDir. How do I change this to something else? If I click on Options there is a directory for the local data area, which looks like the place to change the directory, but that does nothing. There must be a way to change this.

Use transaction SO21 to maintain the PC local directory. Or, run the ABAP program (via SA38 or SE38) RSSOPCDR.

2.)I would like to know which users have access to particular transactions. Is this possible?

Yes. There are several ways.

I think the easiest one is for you to run transaction /nSUIM. In this transaction (User Information System), drill down to:

Infosystem authorization -User -Users by complex selection criteria -By transaction authorizations

Finally, enter the transaction in question and execute.

If you are running R/3 4.7, you can also run transaction /nPFCG.

3.)I want to install SAPGUI into 50 machines. Can I do it from the server by installing the SAP installation server? If so, how?

Go to the “Knowledge Corner” section and look for it under “SAPGUI 6.20 for Windows”. The steps are basically the same for SAPGUI 6.40 –if you are installing that version.

Once you have set up the server you can use SAPadmin to create custom packages and install the client software remotely.

4.)I’d like to know if we make client copy today, will the data will be copied to another client today as well? Suppose after one week I want to copy the rest of the data to the same client. Will I have to copy all the client data and overwrite it, or do I have an option to copy only one week’s worth of data and update it?

A client copy overwrites the target client. The only exception is the user master records (SAP_USER copy profile). But, you cannot just copy a week’s worth data using SAP standard tools. You need to use ALE to transfer the data you want or use third-party tools for that.

5.)I have a problem with my server. When I start the server the dispatcher (disp+work.exe) is getting started, but then it’s stopping. I am using R/3 4.6B. Its sysid = DEV and the OS = 2003server.

This could be due to a number of reasons. My best recommendation at this time is to examine the developer tracer.

Within the SAP MMC, right-mouse click on the instance name and choose developer traces from the drop-down menu. There, choose to examine the file dev_disp, dev_ms and see if there are any dev_wpX files exist.

Also, make sure that the system profiles exists under usrsapsysprofile. Check that the services file contains the appropriate entries (example: sapMS xx).

6.)Can we make the WPs changes in operation mode effective immediately by force? One of our consultants said that it is possible through a transaction.

Yes. It’s possible via transaction RZ03.

Choose the instance and use Control -> Switch Operation Mode.

7.)Users are complaining that the SAP system shows a hour glass for a long time at the time of logon and they aren’t able to log on to the system. How can I troubleshoot this problem?

This is a symptom of busy dialog processes. Use one of these tools to find out the status of the work processes: dpmon.exe at the OS level (part of the R/3 kernel), MMC and SM50 (Work Process Overview).

Also, check the CPU and other system resources via ST06 and using Performance Monitor at the OS level.

8.)I have a stand-alone computer for which I forgot the user and password for log in.

Is there anyway I can log in to it?

Yes. This requires you to go to the database level, though. I don’t know what RDBMS you have (MSSQL, Oracle, MaxDB, etc.). But, really all you have to do is to delete the SAP record in table USR02 for client 100. After that, SAP will let you log in as SAP with password PASS.

9.)Our SAP file system is filling up because initially it was defied too small. What are the non-required files that can be deleted from the SAP system? We are using HP-UX NetWeaver2004s on an Oracle database.

The files that can be deleted are mentioned below.

1. Offline Redo log files

Backup them and then delete

2. Old spool and log files

They are not necessary for R/3 functions and should be deleted regularly by scheduling a periodic batch job.

3. File name “CORE” (Unix only)

The R/3 System work directory (e.g. /usr/sap/c11/D00/work ) often contains a file called ‘core’ from previous program terminations. This file may be deleted at any time.

4. Old ABAP/4 trace files.

Use Transaction SE30 to delete the files

5. Old output requests

They are stored on the data directory as files SP*.

Remember that deleting these files is not a permanent solution. You should increase the file system sizes.

10.)It is a very common misconception that “sequential reads in SM50 means that a full table scan is executed and an index is not used”. The correct definition/concept is:

Direct read

The term “Direct read” refers to accesses in which a maximum of one line is returned by the database. This includes summarization queries such as SELECT COUNT and fully-qualified primary key accesses.

Sequential Read

A “Sequential Read” refers to all other read database accesses, in which there may be more than one line returned. It is true that the term “Sequential read” is a little deceptive since it implies that blocks are always read sequentially (as in a full table scan). In reality, however, when you perform a trace on these queries you will see that index is used in most cases.

So, “Direct read” and “Sequential read” in SM50 are worthless for a performance analysis. It only shows that the processes are running and processing one of the queries directed at the database interface.

For expensive SQL statements analysis, “Reads/User Calls” value (TCODE BACOCKPIT or ST04OLD) is an indication. If this value is above 15, the SQL statements should be checked in detail.

11.)My admin user ID has been locked out. Is there a table I can update in Oracle to reset the flag and enable myself to log in?

Select all entries of table USR02 where ‘UFLAG’=128. These users are locked by reason of incorrect logons. ‘UFLAG’=64 will give you the users that are blocked by Administrator. Set ‘UFLAG’ to 0, to unlock your account.

12.)Why are transport requests classified into workbench and customizing? What does this classification indicate?

All customizing changes (changes to SAP functionality) are collected in customizing requests. Changes to the SAP repository and data dictionary (customers development or changes to SAP standard objects) are collected in workbench requests.


All you  need to know about SAP Notes:

SAP Notes give you instructions on how to remove known errors from SAP Systems. They include a description of the symptoms, the cause of the error, and the SAP Release and Support Package level in which the error occurs.

Depending on the type of error, an SAP Note may also include:

· Workarounds

· Descriptions of how to correct repository objects in the ABAP workbench, known as correction instructions

· Links to Support Packages that solve the problem

You can access SAP Notes both from the SAP Service Marketplace and SAPNet – R/3 Frontend.

Caution: The Note Assistant can automatically implement only SAP Notes that have correction instructions.
Read the SAP Note carefully before you use the Note Assistant to implement it. The SAP Note can contain prerequisites, interactions, and references to postprocessing activities (making changes to a table, for example) that you must take into consideration when you implement it.
Technical Details on Correction Instructions Locate the document in its SAP Library structure

You can find information about the following topics here:

The format of correction instructions

The validity of correction instructions

Prerequisites for correction instructions

Objects that can be changed using correction instructions.

Correction instructions describe the changes that must be made to repository objects in the ABAP Workbench and particularly the source code of ABAP programs to correct errors.

Changes to the Source Code

Each change specifies the object (include, function module, and so on) and the modularization unit (FORM routine, for example). To identify the code that needs to be changed, a unique number of preceding unchanged lines is specified (context block). These are followed by the lines that need to be deleted (delete block) and then the new lines (insert block).

Correction instructions can consist of multiple context, delete and insert blocks.

When the system implements correction instructions automatically, it searches for the context blocks in the function module or include, checks whether the delete blocks follow and then replaces them with the insert block.

If the function module or include has been modified by the customer, the system sometimes cannot find the context blocks or delete blocks specified in the correction instructions, and it cannot implement all the corrections. If this is the case, you can use the split-screen editor to adjust the corrections from the SAP Note to your modifications.

Changes to Other Repository Objects

Repository objects or parts of them that are not of the source code type are stored in database tables. A correction instruction contains information about which table entries have to be deleted, inserted or changed to correct an error. The system displays this information in the form of contents of a correction instruction. However, this display is primarily designed with experts in mind, for the purpose of problem analysis. We recommend that you do not implement correction instructions manually using this information. Use the automatic implementation only.


All correction instructions specify the releases and Support Package levels in which you can implement them. These release and Support Package levels are known as the validity range of the correction instructions.

For example, if Support Package 5 corrects and error in Release 4.6C, the validity range of the correction instructions is 4.6C Support Packages 1 -4.

An SAP Note can also determine that correction instructions are not allowed to be implemented if a certain software component (an add-on, for example) exists in the system. This is the case, for example, when a correction changes a program part that is required by another software component in an unaltered form.

If an exception such as this was defined, it is displayed in the header area of the correction instructions, under Invalid for .

The Note Assistant automatically checks the validity and only implements a correction instruction if the system status is within the validity range specified.


In some cases, you can only implement correction instructions if certain other correction instructions have already been implemented. This is due to related changes made to the same part of the source code, or semantic dependencies.

These dependencies are described in the header area of the correction instructions. These dependencies (prerequisites) mean that you need to implement a sequence of SAP Notes, and not just one SAP Note.

Objects that can be changed using correction instructions.

SAP startup errors

Troubleshooting SAP startup problems:

SAP System startup Problems:

On Windows, Two places you need to check are: EventViewer (Application and System logs) and the SAP Management Console (MMC).
Event Viewer can provide useful information and it may help you pinpoint where the problem resides. The SAP MMC gives you the ability to visually see the system status (green, yellow or red lights), view the work processes status and view the developer traces, which are stored in the “work” directory. Example: /usr/sap/TST/DVEBMGS00/work.

For a central SAP instance to start successfully, both the message server and the dispatcher need to start. If one of them or both fail to start, users cannot log in to the system. The following scenarios will illustrate possible causes of why an SAP instance might not start and the reason of the message:

Developer Traces:
dev_disp Dispatcher developer trace
dev_ms Message Server developer trace
dev_wp0 Work process 0 developer trace

The “services” file, which contains TCP and UDP services and their respective port numbers. This plain-text configuration file is located under winnt/system32/drivers/etc.

Windows Task Manager (TASKMGR.exe), Event Viewer (EVENTVWR.exe).

Dispatcher Monitor (DPMON.exe), which is located under /usr/sap//sys/exe/run. Database logs.

1. Dispatcher does not start due to a port conflict

No work processes (disp+work.exe) exist in Task Manager.

Dispatcher shows status “stopped” in the SAP MMC.

Errors found in “dev_disp”:

LOG Q0I=> NiPBind: bind (10048: WSAEADDRINUSE: Address already in use) [ninti.c 1488]
*** ERROR => NiIBind: service sapdp00 in use [nixxi.c 3936]
*** ERROR => NiIDgBind: NiBind (rc=-4) [nixxi.c 3505]
*** ERROR => DpCommInit: NiDgBind [dpxxdisp.c 7326]
*** DP_FATAL_ERROR => DpSapEnvInit: DpCommInit

Problem Analysis
I highlighted the keywords in the error messages above: Address already in use Service sapdp00 in use The TCP port number assigned in the “services” file is being occupied by another application. Due to the conflict, the dispatcher shuts down.

If your server has a firewall client, disable it and attempt to start the SAP instance again.
If the instance starts successfully you can enable the client firewall back again.
If there is no firewall client at all, or if disabling it did not resolve the problem, edit the “services” file and check what port the appropriate “sapdp” is using.
If the instance number is 00, look for sapdp00. If the instance number is 01 look for sapdp01 and so on. You can use the following OS command to help you resolve port conflicts:
netstat -p TCP There are also utilities on the Internet that can help you list all the TCP and UDP ports a system is using.

2: Dispatcher dies due to a database connection problem

No database connections.

No work processes

SAP MMC -> WP Table shows all processes as “ended”.

Errors found in “dev_disp”:
C setuser ‘tst’ failed — connect terminated
C failed to establish conn. 0
M ***LOG R19=> tskh_init, db_connect (DB-Connect 000256) [thxxhead.c 1102]
M in_ThErrHandle: 1
M *** ERROR => tskh_init: db_connect (step 1, th_errno 13, action 3, level 1) [thxxhead.c 8437]
*** ERROR => W0 (pid 2460) died [dpxxdisp.c 11651]
*** ERROR => W1 (pid 2468) died [dpxxdisp.c 11651]
*** ERROR => W2 (pid 2476) died [dpxxdisp.c 11651]. . .
*** ERROR => W11 (pid 2552) died [dpxxdisp.c 11651]
*** ERROR => W12 (pid 2592) died [dpxxdisp.c 11651]
my types changed after wp death/restart 0xbf –> 0x80
*** DP_FATAL_ERROR => DpEnvCheck: no more work processes
DpModState: change server state from STARTING to SHUTDOWN

Problem Analysis
A connection to the database could not be established because either the SQL login specified in parameter “dbs/mss/schema” is set incorrectly or the SQL login was deleted from the database server. This parameter needs to be set in the DEFAULT.pfl system profile (under /usr/sap//sys/profile). In the messages above, we see that the SQL login ‘tst’ is expected but it does not exist at the database level.

Set the entry to the appropriate database owner. If the system is based on Basis <= 4.6 or if the system was upgraded from 4.x to 4.7 the database owner should be “dbo”. But, if the system was installed from scratch and it’s based on the Web AS 6.x the database owner should match the SID name in lower case. Example: if the SID is TST then the database owner should be “tst”. If the parameter is set correctly in the DEFAULT.pfl profile check at the database level if the SQL login exists. If it doesn’t, create it and give it database ownership to the .

3: SAP does not start at all: no message server and no dispatcher

The message server and the dispatcher do not start at all in the SAP MMC. The following error when trying to view the developer traces within the SAP MMC: The network path was not found. No new developer traces written to disk (under the “work” directory.)

Problem Analysis
The network shares “saploc” and “sapmnt” do not exist. That explains the “network path not found” message when attempting to view the developer traces within the SAP MMC.

Re-create the “saploc” and “sapmnt” network shares. Both need to be created on the /usr/sap directory

4: Users get “No logon possible” messages

Work processes start but no logins are possible.

Users get the login screen but the system does not log them in. Instead, they get this error: No logon possible (no hw ID received by mssg server).

In the SAP MMC, the message server (msg_server.exe) shows status “stopped”.

The dev_ms file reports these errors:
[Thr 2548] *** ERROR => MsCommInit: NiBufListen(sapmsTST) (rc=NIESERV_UNKNOWN) [msxxserv.c 8163]
[Thr 2548] *** ERROR => MsSInit: MsSCommInit [msxxserv.c 1561]
[Thr 2548] *** ERROR => main: MsSInit [msxxserv.c 5023]
[Thr 2548] ***LOG Q02=> MsSHalt, MSStop (Msg Server 2900) [msxxserv.c 5078]

Problem Analysis
Work processes were able to start but the message server was not. The reason is because the “services” file is missing the SAP System Message Port entry. Example: SAPmsTST 3600/tcp

Edit the “services” file and add the entry. Then, re-start the instance. Make sure you specify the appropriate TCP port (e.g. 3600) for the message server.

5: The message server starts but the dispatcher doesn’t

The dispatcher shows status “stopped” in the SAP MMC.

The “dev_disp” file shows these errors:
***LOG Q0A=> NiIServToNo, service_unknown (sapdp00) [nixxi.c 2580]
*** ERROR => DpCommInit: NiDgBind [dpxxdisp.c 7326]
*** DP_FATAL_ERROR => DpSapEnvInit: DpCommInit

Problem Analysis
The keyword in the messages above is “service unknown” followed by the entry name “sapdp00”. The dispatcher entry “sapdp00” is missing in the “services” file. Example: sapdp00 3200/tcp

Add the necessary entry in the “services” file. Example: sapdp00 3200/tcp Then, re-start the instance.

6: Work processes die soon after they start

All work processes die right after the instance is started.

The SAP MMC shows work processes with status “ended”.

Only one work process shows status “wait”.

An ABAP dump saying “PXA_NO_SHARED_MEMORY” is generated as soon as a user logs in.

The SAP MMC Syslog shows the following error multiple times: “SAP-Basis System: Shared Memory for PXA buffer not available”.

Problem Analysis
The instance profile contains misconfigured memory-related parameters. Most likely the “abap/buffersize” instance profile parameter is set to high.

Edit the instance system profile at the OS level under /usr/sap//sys/profile and lower the value assigned to “abap/buffersize”. Then, restart the instance. Also, it’s important to find out if any other memory parameter were changed. If not, the system should start once the adequate memory allocation has been set to the the “abap/buffersize” parameter.