Exclusive SAP Basis Training Book | www.sapdocs.info


Published on

Visit http://sapdocs.info/sap/basis/exclusive-sap-basis-training-book-for-beginners/ to download this exclusive SAP Basis Training material..

Published in: Education, Technology
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Exclusive SAP Basis Training Book | www.sapdocs.info

  1. 1. 1 15-jul-11SAP BASIS
  2. 2. 2SAP BASISConsider the following example [EMAIL or RAILWAY]For Email - It requires a PC and an Application installed in it. Yahoo/ Google1. Client requests2. The request is processed by an interface3. The request reaches server4. The server process the request5. Response back to the user either {Ticket/ Email}This environment is called as a Client/ Server Architecture.
  3. 3. 3R/2 Client-Server1. Client provides an interface to communicate with the server.Eg: IE, GUI2. Client uses DB Client software to communicate with server3. Each request is processed by communicating with server onlyI.e. there is no intermediate layer in R/24. Servers are heavily loaded/ traffic, long queues there by reducing the performance of the servers.5. There is no queuing mechanism and only server queues are maintained.6. Server needs to process the request (Understanding the user language). Interpretation takes time.These are the disadvantages of R/2 Systems.Client Server Environment:Client requests and server responds. The major disadvantage of Client Server architecture is1. DB Client is installed on the client2. Processing takes place at client side3. No intermediate buffers for the frequently accessed content4. There is no queue mechanism to handle the requests there by servers are heavily loaded.5. The server side processing consumes resources to process (Interpret the user requests)The need of middle layer/ tier rose to come out of the steps. The result is the Application layer/ ServerApplication server is deployed and it provides the following functionality1. DB Client is installed to free up the clients (i.e. there will be only one DB Client for Applicationserver earlier each client needs DB Client software)2. There is a queue mechanism to handle the request there by reducing the load on the client andserver.3. User requests are served based on the FIFO using dispatcher.4. Work process task handlers are used to interpret and process the request.
  4. 4. 45. Intermediate buffers are available for the frequently accessed content to reduce the load on theDatabase server.6. The server side processing is only takes place for new requests there by server resources areoptimally used.Need for the Middle Layer: R/3 ArchitectureThe advantages of deploying Application Layer: It is the Intermediate layer in between the Client and the Server. It is installed with a databaseclient to communicate with the database server i.e. all the clients are freed with DB Clients.Application server/ layer handle the request and process them based on FIFO (First in and First out). Ithas its own queue mechanism to process the user request. It also contains the task interpreters tointerpret the user request and route it to the server.
  5. 5. 5It is intelligent to store the frequently accessed data thereby reducing the load on the server.R/3 Architecture:SAP uses the industry specific 3-Layer Architecture and named it as R/3 Architecture.It consists of three 3 Layers1. Presentation Server/ Layer/ Tier2. Application Server3. Database Layer1. Presentation Server:It is a client for all the SAP Solutions. It is also referred as SAPGUI. There are three 3 types of SAP GUI 1. SAP GUI for windows (On Windows OS) 2. SAP GUI for JAVA (On all OS where JAVA is supported) 3. SAPGUI for HTML (for web based)SAP provides various versions of GUI (4.6c, 620, 640, 700, 710 and 720)2. Application Server: It is used to handle the user request and process them to the database. It has dispatcherto process and monitor the user request, work process to process and interpret the requests, Bufferareas to store the frequently accessed data. It absorbs the load both from Client and the server.3. Database server/ layer/ tier: It is the area where the complete data resides. It has its own queue, process, buffers, andrequest handling mechanism. Most of the databases are on Oracle. SAP is pushing MAXDB (withoutany license key), Microsoft SQL Server & IBM DB2 with discounted prizes.SAP is focusing SMB (Small Mid-sized Business) and promoting SAP for nearly 1 million/ Rs. 10 Lakhs/per customer.
  6. 6. 6Supporting Platforms: SAP can be installed on Microsoft windows 2000, win2k3 (2008 is under evaluation). Itcan be installed on 32bit or 64bit operating systems. 64 bit means a single process can serve the userwith 4GB RAM/ Memory whereas in 32 bit it is 1.9GB Memory. 264, 232 / 8 bytes.HP UNIX and ORACLE HP UNIX 11.23 ORACLE / and ORACLE IBM Specific operating system with version 5.3 technical (TL) level 7 (TL7)AIX and DB/2 Proprietary of IBM gives more mileage. Both provided by IBMISERIES/ AS400 with DB/2 This is also IBM specific which provides more consistency, reliability, mileage than any other operating system and database.Sun OS (SOLARIS with ORACLE)LINUX (SUSE, RHL (RED HAT LINUX) and ORACLE LINUX)Note: Linux with MaxDB is supported by SAP and provides more leverage (Finance)Microsoft windows and SQL Server This is the best combination for interactive usage
  7. 7. 7Installation of Presentation Server (SAPGUI)Use presentation server DVD and go to the respective OS win32 and run setupall.exe and follow theonscreen instructions.  Saplogon icon is installed on the desktop.  Double click and enter the entries of the application serverLaunch saplogon icon and click on New ItemEnter the Description Application Server SID System No 16-jul-09BASIS1. It provides runtime to SAP Applications2. Basis is a layer where all the applications reside3. Basis provides the infrastructure to manage, monitor, and administer the SAP ApplicationsEg:Basis provides User ManagementBusiness process MonitoringRole based SecurityPerformance Gauge etc.Three 3 Tier/ Layer/ Server Architecture 1. Presentation Server 2. Application Server 3. Database Server1. Presentation Server It is an SAP GUI. It is of 3 types SAPGUI for windows, HTML and JAVA. It is used toestablish connection with SAP Application Server based on the name of the application server,Instance Number, SID etc.
  8. 8. 8Installation of Presentation Server (SAPGUI)Use presentation server DVD and go to the respective OS win32 and run setupall.exe and follow theonscreen instructions.Saplogon icon is installed on the desktop.Double click and enter the entries of the application serverLaunch saplogon icon and click on New ItemEnter the Description Application Server SID System NoClick on logonAdvantages of Presentation Server:1. Single GUI to access all the SAP Applications (ERP, CRM, SCM, XI, BI and SRM)2. We can login with our logon language i.e. specify the language during logon. Same GUI is allowedto login with different languages3. GUI is user friendly to create favorites, startup transactions
  9. 9. 9- To create Favorites Login - From Tools – Administration SU01 - From Menu Favorites > Add- To setup startup transactions From menu Extras - Set startup transaction4. GUI is downward compatible to support all the SAP Applications which are below the gui version.Example: GUI 7.0 cannot support the component that are built on 7.10 but 7.0 can handle 7.00,640, 620, 46D, 45A etc.5. User parameters are defined for the frequently keyed in content. Eg: A user belonging to the salesorganization, division, plant, sales area should get all the values by default while creating sales order(VA01) etc.,To provide default values for a user while creating a Sales order.Steps:I. Execute VA01 (Sales order creation)Select the value for sales organisation by pressing F4Click on sales organisation field and press F1 and click on technical settingsNote the parameter ID
  10. 10. 10Repeat the same for Distribution Channel and Division.2. Execute SU01 - Edit the user - From Parameters Tab - Provide PID and Value VKO 0001Save the data. Now whenever the user executes the transaction VA01 it will be filled with the defaultvalues with 0001 and 01 for Sales organization and Distribution channel respectively there byreducing the user tasks.6. User can be specified with 1. Role based menu or with 2. SAP Easy access Menu to reduce the loadon the request processing (Roll Area)7. SAP GUI is intelligent to determine the least loaded server when more than one instance isconfigured. It gets the information from the Message server.8. It provides access across the low speed connections and displays the screens without graphics/logo which consume more network traffic. (Low Speed/ High Speed)9. It provides command window to navigate to the respective functionality and minimizes dialoguesteps.10. GUI entries are controlled by using saplogon.ini/ sapmsg.ini/ saproute.iniThese files reside in windows directory i.e. we can configure one GUI and copy the files to the othersystems easily. Goto Windows directory Saplogon.ini - Copying provides all the parameters
  11. 11. 1111. SAP Provides ergonomically designed to configure GUI font size, colors and visual design etc.12. SAP Provides various shortcuts window /n to open window from existing window and /o to open anew window /ex to exit the screen.13. GUI provides default menus (System; Help).14. The character set can be changed to suite various languages and printers.2. Application ServerIt is a physical server which is used to handle and process the user request. In SAP naming conventionwe define them as an Instance and it is possible to install more than one instance on a single serverprovided they are differentiated by the instance number.Instance number is a 2 digit number that varies between [00 to 97] 98 and 99 are reserved for routingpurposes.Instances is of various types1. Database Instance . 2. Central Instance. 3. Dialogue Instance.1. Database Instance This is the Instance where database is installed.2. Central Instance This is the Instance where Application Server/ Tier/ Layer are installed. There will be onlyone instance in the entire system.3. Dialogue Instance These are the instances which are used to handle the load on the central instances. Wecan install as many instances as possible assuming that each instance can serve up to 200 - 500 usersdepending upon the type of the users.
  12. 12. 12KernelSet of Executables (OS, DB, Unicode, 32/64 bit dependent)usrsapSIDsysexeStart - Run - sqlplus "/as sysdba"Select username from dba_users; (database users)Select BNAME from SAPSR3.USR02; (Sap Users) SAP K E DB R OSKernel Provides communication between SAP, DB and the OS.Usrsap<SID>sysexeucNT1386Installation LogsSapinst.log - Specifies the installation success / failureSapinst_dev.log - also provides similar log in case of installation is aborted.tsk file specifies the table/ index etc that needs to be created on the DB.Each task is commanded by .cmd file and during the process they writes into .log fileEg: Sasapappl0.tsk.bck Sapappl0.tsk Sapappl0.cmd Sapappl0.log Sapappl0.str - Structure of the DBControl.xmlKeydb.xml -Helps to restart installation from the point where it is failed.
  13. 13. 13WHAT HAPPENS DURING INSTALLATION?1. Extracts the software.2. Sapinst tool is used to install the software if required we need to download it fromservice.sap.com/swdc3. Checks for user <SID>ADM (SAP System Administrator) Who owns SAP System and has all the privileges on SAP (Start/ Stop/ Environment)Domain Admin; AD Admin - Can create the useridNote: The user who initiates the installation should have the privileges as Local administrator to installthe software, create users, create groups, assign groups, create services etc., (This problems occurs ina Domain)If the user does not exist it creates now.On Windows OS <SID>ADM is also responsible for database but on UNIX ORA<SID> is the ownerto work on the database. ORA<SID> provide the runtime environment for Database. Windows App Server Database<SID>ADM <SID>ADM UNIXApp Server Database<SID>ADM ORA<SID>
  14. 14. 14Note: SAPSERVICE<SID> is a service used to start and stop the services (Password never expires) <SID>ADM expires for every 30 days Eg: SAPOSCOL, SAPSID-Instance Number5. It creates local groups and global groups and assigns them to users Global groups - Domain Level Local groups - LocallySAP_LocalAdminSAP_SOL_GlobalAdmin from Computer Management -> LocalSAP_SOL_LocalAdmin Users and Computers we can view this6. It creates Services SAP<SID>_00, SAP<SID>_01, SAPOSCOL, SAPCCMSR are created and Run with user.SAP<SID> is used to start the SAP System; if the service is not started SAP will not start.SAPOSCOL is started first to check whether the resources are available (Operating system collector) Itis used to collect the OS Utilization information and pass into SAP system.SAPCCMSR is an agent to collect JARM (Java Application response time Management) and pass it toABAP CCMS (Computing Center Monitoring System)It is only used in JAVA and ABAP stack.UsersGroupsServicesCreating directoriesExecutables - OS Dependent - DB Dependent
  15. 15. 15Note:- Master password is set accordingly to the company policy- Extract Kernel Executables (OS, DB)- Create MMC for Windows to start/ stop sap system From cmd prompt Startsap name=SID nr=00 SAPDIAHOST=willsys28Sets the user as SAPSR3 for ABAP SAPSR3DB for Java EngineWhere the systems are installed with these schema owners i.e., these users owns the respectivedatabases.Query:Select count(*) from dba_tables where owner = SAPSR3; 29769 ABAP related tables.Select count(*), owner from dba_tables group by owner.7. Creates the Database and runs the scripts8. Creates the tablespaces and datafiles on DDLORA.TPL Tablespaces are just like almirah in a house.9. Now command files are created pointing to .str and data on the exports10. The task files are created to create the tables and load the entries The task files are displayed as process on the installation screen"2 complete 3 running 4 waiting"11. Upon running all the tasks the SAP Database is created and DBStatistics runs.12. DB Users are set with default password and SAP Application open RFC Connection. --- Installation Successful --
  16. 16. 16SAP Installation Steps1. Download the Installation Guide (www.service.sap.com/instguides)2. Check the compatibility of OS and DB (www.service.sap.com/platforms)3. Download the software from (www.service.sap.com/swdc)4. Search for the known problems from (www.service.sap.com/notes)5. Install the OS related patches/ fix packs etc6. Install JRE 1.4.2_127. Set the Java environment JAVA_HOME path8. Set the virtual memory to 20 GB on windows9. Set the hostname not more than 13 characters10. Make an entry of the hostname in Hosts file11. Ensure the installation ports 21212 and 21213 are kept open12. Ensure the ports 3200, 3300, 3600, 4700 are kept open (DVEBMGS uses these ports)13. Dump the software into system without any spaces in the directories14. Verify the software using LABLE.ASC15. Get the Static IP address (192, 172, 10 networks)16. Ensure the internet connection is available with a valid S-USERID17. Execute sapinst.exe18. Select 2004s19. Central instance and Typical Installation20. JAVA Components and JCE Policy21. Provide SID and Inst Directory22. Provide Master Password23. Provide DB SID and DB Host24. Exports path25. Kernel Path26. Oracle Client27. SLD (Local SLD) Provide Object server name: Host name28. Parameter Summary29. Solman Key30. Installation Proceeds.Installation Directories D:usrsapUSR directory is created with a shared folder SAP with shared SAPMNT & SAPLOC Eg: <hostname>sapmnt ~ d:usrsapSAPMNT: Both in Win and UNIXSAPLOC: Only in Windows not in UNIX
  17. 17. 17These are shared between systems and accessed locally and globallyCCMSPRFCLOGPUTSID HOSTSTransCCMS - Used for alert logs that is populated by the service SAPCCMSR(Java Stack Only)PRFCLOG - These are also populated from JAVA Engine (Generic Request Message Generator GRMG)PUT - is used during upgradeSID Hosts - the complete SAP Application Server.Trans - is used to host the DevelopmentsSAPMnt: Is a shared SAP Mount which is used to host the directories related to SAP.(It may be required to create SAPMnt in earlier versions but in the current versions based onNetweaver it is created automatically)SAPLoc in WindowsThis SAPmnt is shared because it needs to share the transports, support packages, profiles,executables etc between systems in the landscape.[Dev] ----------> [Qlty] ----------> [Prod] SAPmntTASKS Installing SAP Component on SOLMAN On Windows/ SQL Server On Windows/ Oracle Windows/ DB2 Linux/ Oracle HPUnix/ Oracle AIXSolution Manager connects all the three systems (ERP i.e., ECC6.0, Netweaver & CRM2007)
  18. 18. 18I. Installation InputsSAPInstSIDInstance Number (Default 00, 01)Mater PasswordJCE PolicyPath for the CDs.II. Installation Logs SignificanceSapinst_dir (Win, Linux, UNIX)Sapinst, sapinst_dev, .cmd, log, .tsk, .tpl, .toc, .str.III. Installation Steps Users,Groups,Services,Directories,SharedMnt,Kernel (Extraction), CreateDB,LoadDB,Updated Stats,RFCsDEFAULT USERS<SID>ADM -- SAP start (OS Level Access Related to SAP)ORA<SID> -- For UNIXSAP SERVICE <SID>Sys Master Databasesystem
  19. 19. 19J2ee_ADMIN Java WebSAP* SAP R/3DDICSAPSR3SAPSR3DBUnicode - Multilanguage Support This requires additional 40% of resources.Earlier case Individual passwords need to be set but now days only one Master password for all theuserids.Multiple Components on a Single DB repositoryA host is either a client or a server. A host has its own address on the network, and is its ownmachine.A server has its own address and sometimes multiple addresses. It provides access to services andinformation.A client accesses the servers. It requires its own address.Interface / ScreenExports/ System CopiesKernel [Dependent]Install Mstr [Dependent]Java Comp [Independent]JRE [Dependent]Exports [Independent of OS, DB]Installation Directories D:usrsapUSR directory is created with a shared folder SAP with shared SAPMNT & SAPLOC Eg: willsyssapmnt ~ d:usrsapSAPMNT: Both in Win and UNIXSAPLOC: Only in Windows not in UNIXThese are shared between systems and accessed locally and globallyCCMSPRFCLOG
  20. 20. 20PUTSID HOSTSTransCCMS - Used for alert logs that is populated by the service SAPCCMSR(Java Stack Only)PRFCLOG - These are also populated from JAVA Engine (Generic Request Message Generator GRMG)PUT - is used during upgradeSID Hosts - the complete SAP Application Server.Trans - is used to host the DevelopmentsCheck the groups SAPLOCAL_ADMIN SAPGLOBAL_ADMIN ORA_SID_DBA ORA_DBA ORA_SID_OPERATORCheck the services and ensure that they are running 1. SAPOSCOL - Used to collect the OS Resources 2. SAP<SID>_00 - Which is mandatory to start SAP3. Listener - Oracle Listener service should be started on the specified Port (1521-1529) 4. Oracle Service<SID> which is required for the Database On UNIX ps - ef | grep ora* On Windows services.mscCheck the USR Directory (SAP Instance files..... App) predefined shared SAP Directory withSharedMnt, (SAPMnt), and SAPLoc on windows Run - Cmd - "WillsysUsr"9. Trans Directory - Used for transporting the ObjectsNote: SID Specifies the Application Server and is possible to have multiple <SIDS> differed by theinstance numberQueries:SQL> Select status from V$Instance; Checks the DB Status
  21. 21. 21SQL> Startup followed by enter keySQL> shutdown immediateNote: Only one SAPOSCOL per system Max of 97 Systems on a single box 98-99 for routingSAPOSCOL_00 - ABAP InstanceSAPOSCOL_01 - JAVA InstanceNote: Each SID uses different PortsNote: In the console tree of SOLMAN if all the three entries (SERVICES, USERS and GROUPS) areavailable then only we can confirm there are 3 Instances in one single system.10. <SID> Directory usrsap<SID>.......... Config..... Usagetypes.properties - used to specify the usage types that are installed on thesystem. usrsap<SID>config on a particular <SID>ERP <SID1> ERP<SID2>EP EPBI BIJAVA JAVAABAP ABAPNote: Now-a-days it’s possible to install different engines as add-ons.11. DVEBMGS <Instance Number> DVEBMGS00 - is a ABAP Engine JC00 - Standalone JAVA Engine SCS01 - SAP Central Instance DVEBMGS00 contains J2ee/ SDM/ JSPM directories then it is Integrated Engine (ABAP + JAVA)Note: Portal is only an application that is not based on ABAP Engine
  22. 22. 22Eg: Consider Hero Honda LandscapeBI - ERP (ECC5.0) - CRM - SRM - PI Suppliers Dealers Enterprise Portal12. SYS DirectoryContains executables and profile parameters to start and stop the systemEXE Directory - hosts all the executables from netweaver exe dir contains UC/ NUC and 32/64, i386/ ia64In 4.7 we can see only exe directory13. Work Directory This stores the startup and error logs 17-jul-09Instance: Logical entity which is installed on a physical entity - which is an Application server.Instance provides runtime services.Instance NameInstance No: 00 - 99 (98, 99 for routing purposes)
  23. 23. 23Structure of INSTANCEInstance contains Dispatcher, Queue Mechanism, and Work process, Task Handler with ABAP,SCREEN, and SQL Interpreters. It also contains buffer areas, DB Client and Roll area.Dispatcher It is used to handle the user requests that are coming from SAP GUI using DIAG(Dynamic Information Action Gateway) protocol on port 3200 + Instance Number.(3201, 3202 etc) Dispatcher manages all the work process and maintains a queue. Once the request issent to dispatcher the dispatcher keeps the request in queue. Based on the availability of workprocess it will assign the process to the user request based on FIFO (First In First Out)User Buffer - Once we logoff everything is rolled off.Public Buffer - Until the instance is restartedWork Process Work process handles the user request using Task Handler. Task Handler contains 3Interpreters ABAP, SCREEN and SQL.
  24. 24. 24ABAP interpreter used to interpret the ABAP code in the user request SCREEN interpreter use to interpret the screen SQL interpreter interprets the SQL statements that are sent by the user.Select statement - from the buffer area.Modify/ Insert - Hits the databaseOpen SQL This is SAP Proprietary language to ensure that the SAP Components are Databaseindependent. Each instance is installed with DB Client software to communicate with Database inNative Language.The SAP Kernel which is O/S and DB Specific helps in the interpretation.The user request is processed and it handovers (handshake) the task to Database process.DBWP (Database work process) process and responds back to the R/3 work process. R/3 work processchecks for frequently accessed content and keeps the copy in R/3 Buffer areas. (Frequently accesseddata). The response rolls out into the user context before it is sent to the user.User Context It is a user specific roll area which is used to keep user authorizations, parameters, screens andearlier accessed content.Process Flow (LOGON)1. User requests2. Dispatcher handles the request3. Keeps in queue and assign WP based on FIFO4. The work process gets the username, password, client, logon language and the task handlerinterprets and hand over the task to the database process.5. The DB process checks the credentials of the user and provides the necessary authorizations to theprocess.6. The entire information is copied into the user context which is referred asROLL OUT. (The information is copied into Roll Area which is subsequently available for all therequests made by the user)
  25. 25. 25Note: The user context remains until the user is logged out. The user context is displayed in thetransaction SU56. If the user accesses other than the transactions in SU56 it is missing authorizationsand displayed from the Tcode SU53 (Missing Authorizations)Process Flow (TRANSACTION)1. User executes a transaction Eg: ME22N - Purchase Order (or) VA01 - Sales order2. The request is handled by dispatcher and hand over to the work process.3. Work process requires information that is not available in the work process. The work processcopies the user related information into the task handler i.e. copy user context into the Task Handler.It is also referred as ROLL IN4. Further processing continuesTypes of Work Processes Even though the processes are unique at OS level SAP differentiated between the workprocesses based on the nature of work. The process are determined by the instance name DVEBMGS<Instance_No> For Dialogue instances the work process will be denoted as D01, D02....D - DialogueV - UpdateE - EnqueueB - Back groundM - MessageG - GatewayS - SpoolDVEBMGS is only available in the Central instance.D01 to DN-1 for Dialogue instances.Central Instance DVEBMGS - 2112111 It hosts all the process and their will be only one central instance in the entire system.1. DIALOGUE D It is only the process which communicates interactively with the users. Thereshould be atleast 2 Dialogue work process per instance. Dialogue work process initiates Update,Background and Spool.2. UPDATE V It is used to update the transactions in the database. It is initiated by Dialogueprocess. There should be atleast 1 Update in the entire system. It is also recommended to have anupdate process for every 5 Dialogue.
  26. 26. 263. ENQUEUE E It is used to provide locks for the records that are going to be updated. It ensuresconsistency for updates. There will be only 1 Enqueue configured in the system during theinstallation. It is possible to have more than one enqueue provided they are installed or configured onthe central instance.4. BACKGROUND B The tasks which are expensive or time consuming are scheduled to run in thebackground mode non-interactively. There should be atleast 2 background work process in thesystem5. MESSAGE M There should be only 1 message server in the entire R/3 system. It is used to manageall the dispatchers. It is used to load balance the requests to identify the least loaded dispatcher. It is also used to provide locks to the request that are coming from Dialogue instances.6. GATEWAY G It is used to provide a means of communication with SAP and NON-SAP systems. Therewill be only 1 gateway for each instance.7. SPOOL S It is used to print the documents to a printer or output to a fax machine etc. Thereshould be atleast 1 Spool process in the entire system. It is also possible to configure more spoolprocess depending on the print/ spool volume. 18-jul-09DVEBMGS00Dialogue - Interactive - 2 per instance - Initiate update, spool and btc (background)Update - Non-Interactive - 1 per system - Initiated by dialogueEnqueue - Provides consistency for updates - 1 per system and can be increased Depending upon the update requests but needs to increase only on the Central instance for optimal performance.
  27. 27. 27Background - Non-Interactive - 2 per system - Initiated by dialogue, Time consuming And long running jobs are scheduled to run in the background mode.Message - Used during load balancing. It also procures lock from enqueue server To serve the requests that is coming from dialogue instances. Only 1 Per system.Gateway - It provides an interface to communicate between SAP and NON-SAP Systems. 1 Gateway per instance.Spool - It is only the process that outputs the documents to printers, fax etc. It is initialized by Dialogue and BTC. Atleast 1 spool per system.INSTALLATION1. Download the installation guide from the Market placewww.service.sap.com/instguides2. Check the compatibility of OS and DBwww.service.sap.com/platforms Windows 2003 - MS SQL Server 2000 Adv. Server Or 2008 - Oracle - MaxDB Linux - Oracle - DB/2 8 - MaxDB3. Download the software from www.service.sap.com/swdc4. Search for the known problems in www.service.sap.com/notes5. Install the OS with relevant support packs/ Fix packs etc.6. Install JRE 1.4.2_12 (Java Run time environment) to run the sap inst screens
  28. 28. 287. Set the JAVA environment variable JAVA_HOME or path Check java -version8. Set the virtual memory to 20GB on windows 20GB swap memory on HP Unix machines.If RAM is more than 20GB then 20GB * 3 = 60GB9. Set the host name which should not be more than 13 characters10. Make an entry in the host file etc/hosts.11. Ensure that the installation ports 21212, 21213 are not blocked (Need to inform Network Admin or Proxy Admin not to block the ports)12. Ensure that 3200, 3300, 3600, 4700, 4800 series ports are not blocked. (DVEBMGS utilises these ports)13. Dump the software into the system. The folders should not contain spaces, Special characters etc (Eg NWDump or Newfolder - all one word), underscores are allowed14. Verify the software using LABEL.ASC15. Get the private static IP address from the Network team (192., 172., 10. networks)16. Ensure that internet connection is available with a valid S-Userid.ERP 2005 - ECC6ERP 2004 - ECC5PRACTICAL SESSIONSwww.service.sap.com/instguideswww.service.sap.com/platformswww.sercvice.sap.com/swdc - My companies Application component - ERP 6.0 Select the DatabaseFrom Downloads Tab - Select the components Exports, Kernels, JAVASR1 - SR2 - SR3 -EHP1 - EHP2
  29. 29. 29Click on download to basketMarket place > Help and Support > Search for NotesJRE is must as the SAP Screens are developed on JAVA PlatformVirtual Memory: [Extended memory towards HDD]Need to set the virtual memory RAM size * 3 + 500MB/ 1GB [32 Bit]Select the drive where SAP is going to be installed.Set the host name Cmd > drivers > etchosts IP Address HostnameT1 Shopper Port scan - To check whether these ports are open or blocked.IDES (International Demo Education System) will have more clients 11-12 Predefined clients and inthe Non-IDES system only 3 Clients (000, 001, 066)In IDES additional clients - 800, 811, 812 clients are available.There will be only 2 exports for Non - IDES systemAnd 6 Exports for IDES system.LABEL.ASC - contains the content and the DVD number from which we can find whether it is an Export1 Or Export 2 etc.Note: Only exports will change for each application like CRM, SCM, SRM etc 20-jul-09INSTALLATION1. Central Instance2. Database Instance3. Dialogue InstanceFrom the dump bring up sapinst.exeFrom Netweaver1. Central system Instance (Which contain both Central + Database instance)Goto Installation Master DVD
  30. 30. 30 - Select the respective inst (sapinst.exe). It is an executable. - On windows sapinst.exe and on Linux/ UNIX use ./sapinst.exe- Select the components that needs to be installed (ERP, CRM, SCM, SRM, EP, XI, BI, MI) and click on next.- select (0) Typical Installation (to install the system with predefined settings i.e. The port numbers, installation file paths, password are automatically taken). If it is a custom installation more inputs are required. - Specify the Master password - Specify the SID and the installation drive. - Specify the JAVA component path, kernel, exports path and JCE policyRequired software 1. Inst Master DVD 2. Kernel DVD 3. JAVA Components 4. ExportsExports depend upon the business component which is going to be installed like ERP, CRM, and SCMetc.JCE Policy JAVA Cryptography which is used to provide the secured encryption & decryption over theweb - because the content transmission over the web is not secure.- The input lists screen is displayed to review before starting the installation.- Continue the installation- Installation depends upon the export content (IDES version may consume 8-12 Hrs) Productionversion ma take 4-6 Hrs. It also depends upon the memory.Components lies in ECC6.0 are (SALES, FINANCE, and PURCHASE... around 35 modules)
  31. 31. 31To display all these over the web then EP (Enterprise portal) is required.Note: All the SAP components will be installed on the Netweaver Platform. It is up to the customer tochoose the Netweaver components and It is mandatory to choose ABAP components. ABAP is theplatform for all the SAP Components.ABAP is a part of the Netweaver.ABAP provides the runtime environment for all the above components i.e. USER Management,Administration, Management of the file system, processes securing the sensitive data, fine tuning theperformance, database administration irrespective of the SAP component and also managing printers.POST INSTALLATION ACTIVITIESSAP is a transaction based. Menu based consumes more dialogue steps than transaction based that iswhy SAP BASIS consultants are more familiar with transactions.
  32. 32. 32Login to the system with SAP*, DDIC and Master password (specified during installation) 1. Execute transaction SM28/ SICK (Installation consistency check). It checks the compatibilitybetween OS, DB and the R/3 kernels. If there is any inconsistency it will recommends us to fix beforeproceeding further. Based on the displayed message we may need to upgrade OS patch levels, DBsupport packs and R/3 Kernels.SM28/ SICK 2. SLICENSE - It is a transaction that is used to apply the license to get the runtime support forthe system even though it is valid for 30 days (4 Weeks i.e. 28 days). It is recommended to applylicense because they are not considered for support. -Goto - Market place www.service.sap.com/licensekey -Click on obtain permanent license key -Select the Installation number based on the component (ERP, NETWEAVER(EP, BI, XI, PI, MI,JDI), SCM, SRM, CRM & Solution Manager). -Specify the system ID(SID), OS, DB, System Type, purpose(DEV, PRD, QAS, TEST etc) -Click on continue to display the hardware key input.The license key is specific to Customer, Installation number, System Number, Hostname and theHardware key. - Hardware key is unique (use command saplicense -key ) - Specify the Hardware key and email-id to generate and send license key to the mail-idspecified, Alternatively select the system and click on display license script and save it to PC in the .txtformat. 3. Execute [Slicense] Tcode Click on > New Licenses Click on > Install license key and it prompts for the path of the license key, provide thedownloaded file path and click on OK to apply the license.4. System Settings SE03Depending upon the type of system we need to set the system to modifiable and not modifiable.
  33. 33. 33 Goto SE03/ SE06 system change options to set to modifiable or not modifiable. This is one ofthe most important security setting which is liable for auditing. Toggling between the changes arerecorded and it is advised to obtain permission from the respective authority to make necessarychanges in the Production System PRD Except DEV and SANDBOX remaining all the systems like QAS, PRD, PRE-PRD are set to not-modifiable i.e. no object can be modified in these systems. The changes are only transported to the not modifiable systems. 21-jul-091. SICK/ SM28 - SAP Initial Consistency Check Checks for the Incompatibility between R/3 Patch Levels, Kernel Levels, OS levels and Databasepatch levels.2. SLICENSE SAP Issues two licenses, one is the permanent key valid upto [31129999]The other one is Maintenance Certificate which is valid upto 3 Months. This Maintenance certificateis introduced from JAN/ 2009 onwards. It locks SPAM so that no upgrades are allowed without a validMaintenance certificate.3. SE03 - System Settings
  34. 34. 34 Db click on Set system change Option4. SE06 - Perform Post Installation ActionSelect either one of the option. 1. Standard Installation 2. Database copy or Database Migration1. Standard Installation : It is used when a fresh system is installed.2. DB copy or DB Migration: It is used when a system is setup as a copy of production or pre-production system.SE06 transaction is used to set the CTS (Change Transport System). It initializes the TransportManagement system. A message will populate to configure TMS in the client 000.
  35. 35. 35TMS: Transport Management System. It is used to setup the systems, their roles, Domain controller,backup domain controller, landscape and their routes.1. Domain Controller: There will be only one Domain Controller in the system landscape. In most ofthe environments [DEV] is treated as DC because, this is the first system in the LandscapeLogin to the system/ Client 000 with the user other than SAP*/ DDICExecute T-Code STMSEg: {from se06 > perform post installation action} > STMS- A pop up window prompts to configure Domain Controller.- Specify the description Transport Domain Name: Domain_<SID> Save the configurationNOTE: If the Domain already exists then we can execute a TCode [DICO] to delete the existing TMSconfiguration. It should be executed in STMS and also the RFC connections.Including the system in the Domain Specify the Domain Controller Target host System Number User: TMSADM (Default User)TMSADM is a communication user created during TMS configuration (Do not delete the user, lockthe user, change password, set to expiry will hault the system transports, support packages andapplicatoins etc)A message SAP system "waiting to be included in the transport domain" is displayed in the externalsystem.Approving the inclusion of Systems Login to the DC Execute STMS From Menu Overview > Systems The system is waiting to be included Select the system and click on approve from Menu SAP System.SALE - Defining a logical SystemCreating Virtual Systems
  36. 36. 36 It is a standard practice in the industry to create virtual systems as the real systems could notbe available during the initial configuration (DEV server is procured during implementation, QAS willbe procured after 3 to 4 months from kickoff date and the PRD is procured before 2 months of Go-Live) Virtual Machines/ Systems can be replaced by real systems and the configuration now pointsto the real system. Goto STMS (Domain Controller) > Menu Overview > Systems > SAP System > Create Virtual SystemFor Eg:System : JOQDescription : Quality SystemTRANSPORT GROUPIt is a naming convention group_<SID> we can configure all the systems to a single transport groupi.e. all the developments which are performed in Development system will be automatically availableto other systems in the landscape. The group of systems which shares the transport directory incommon are said to be in one group but due to sensitivity of PRD it is moved into a separate group.1. Shared Data2.Defining the Landscape
  37. 37. 37 Execute STMS > Click on transport routes From over view menu > click on change > from Menu Configuration > Standard Configuration > Three systems in groupEg: Specify DEV: JOD QAS: JOQ PRD: JOP SAVE Provide Three System Configuration under the Description. 22-jul-09Practicals CONFIGURING STMSPerform DICO to delete the STMS configured earlier if necessary and the RFC connection from theexternal system.POST INSTALLATION ACTIVITIES Continuation ...
  38. 38. 38From 000/ SAP*RZ10 - Initially we have to import profiles from OS Level to SAP level. From menu SYSTEM > Import Profiles of Active ServersSCC4 - Roles are client Specific Logical system <SID> client Cross clients - all the clientsSALE - for assigning the logical system. Click on new entries and provide <SID>Clnt900Default clients : 000, 001, 066We can create upto 1000 Clients 000 to 999For the newly created client say in this case 900 a user will be created SAP* with pass as thepassword.For the first time we cannot login [SAP* / pass]So being from another client perform RZ10 - change the parameter toLogin/no_automatic_user_sapstar to 0 instead 1After creating a client need to perform client copy [SAP_CUST]Always need to copy 000 client because it will have all the customized data.066 is for early watch.Create an new user as SAPUSER copied from SAP*/ DDIC logging in as SAP* user from the newlycreated client.Login to the new client with our userid and password and lock the DDIC and SAP* ----- TASKS -----SETTING UP A LOGOExecute SMW0Select (0) Binary data for WebRFC Click on Find buttonClick on execute
  39. 39. 39Create new Obj name : ZTEST Desc : IMAGE Browse for the PictureFrom settings menu > Click on MIME type Add .jpg format Save.GOTO - SM30 Click on maintain Click on new entries START_IMAGE : ZTESTPrompts for the Change request - proceed and test the logoSETTING UP TEXTExecute - SE61
  40. 40. 40Document class : General textFrom document tab NAME - ZLOGIN_SCREEN_INFO createType the text - WelcomeSAVE. 23-jul-09Roles granted for me in the SAND BOX for CapgeminiPOST INSTALLATION ACTIVITIES1. SICK2. SE063. SE034. STMS 4.1 SALE5. RZ10Used to import the profiles from OS level to DB. The profiles are available inusrsap<sid>sysprofile. These profile requires management for fine tuning, configuring buffers etc From 000 > Goto RZ10 > Utilities > Import profiles of Active servers >SAVE6. SMLT
  41. 41. 41 Perform language transports if any. The system is an unicoded system to support theall available languages but we need to import the additional languages as per the requirements.Download the languages inusrsaptransepsin Directory Goto SMLT > and create a language > specify supplementary language i.e. if the script is notavailable in main language it will display in secondary language. English > Primary German > Secondary Goto I18N (Globalization / Internationalization of Languages) Click on > Current NLS settings Get the parameter zcsa/installed_languages = DEIf we specify any new language it needs to be updated in the above parameter using RZ10 Clink on ADD from NLS settings to include additional languages that are going to beimported using SMLT.Steps:
  42. 42. 421. Execute I18N2. Add language that needs to be imported in I18N3. SMLT create language4. Click on > Import package > specify the path usrsaptransepsin5. Download language from Market place6. Import7. Set the parameter zcsa/installed_languages = AEDZ6. SPAM Apply the patches that are relevant for SAP application component7. SR13 Install SAP Library
  43. 43. 43 SAP Provides screen context help i.e. when a user struck at one screen he can use Menu Help >Application help. SR13 > New EntriesVARIENT PLATFORM AREA PATHSAPHELP WINNT IWBHelp Copy and Paste from Market place.1. Dynamic Help2. Plain Html Help - Html documentation installed on Web Server3. Plain HTML - HTML docu installed on File server4. HTML Help File - It occupies less space, opened by html help viewer. It is in compressed format.For documentation > Market Place > SAP Solutions > SAP ERP >EnglishNote: Need to create a folder in D:SAPHELP...... (sapdocdc.ini) paste the path.8. DB13 - Define Backup schedule - click on date and select backup - type (offline/ online) and save9. SM36 - Define standard background (House keeping jobs)
  44. 44. 44Note: Create users in SU01 and assign SAP_ALL to the functional and technical team as the security isnot implemented. 24-jul-09STRUCTURE OF APPLICATION SERVERDispatcher - DPMONWorkprocess - SM50/ SM66User Context - SU56Task Handler - from Work DirectoryBuffers - ST02 Dispatcher receives the request and processes them according to the queue. The requests areprocessed by using a dialogue process. Dialogue process is the only process that interacts with/communicates interactively with the user. There should be atleast 2 Dialogue process per instance.Each process requires 75MB to 150MB of memory on any average. The memory should be calculated after reserving memory for OS and the Database. Eg: 4GB RAM: 1 GB reserve for OS and DB 3 GB 3000/ 150 = 20 ProcessesMin and Max upto 40 Processes, but depends upon how heavy the processing goes.. If a reportinguser requires 3GB of memory then there will be a memory bottleneck.The maximum number of work process an instance can support is W0 to W99 (100 Work processes).There are cases where more than 100 are configured but it is not recommended. If the systemsupports more than 100 processes then it is better to configure one more instance on the same serverdiffered by the instance number.* The work process are configured by the parameter rdisp/wp_no_dia = XX
  45. 45. 45For an Ideal Instance the sum of the Dialogue processes should more or less equal to non-dialogueprocess (unless a reporting server, which needs only dialogue)The dialogue response time should be around 600 to 1000 Milliseconds (1 Second)Each dialogue process is restricted by using a parameter rdisp/max_wprun_time = 600 s(10 Minutes) after which the process will be timed out. In order to run the activities that consumemore time then the above we need to run in the background mode or increase the parameter valuefrom RZ11 (Dynamic parameter) i.e. during the month end the parameter can be changed to 1800 -10000 from RZ11 for specific period of time. Upon task completion reset the value in RZ11 (Nosystem restart is required)WORK PROCESS MULTIPLEXING(Consider Restaurant Activities).Each user transaction may be served by one or more processes with out restricting to the usersimilarly each work process serve multiple users with out restricting the user. (No dialogue processremains ideal) Each process can serve 5 - 10 users and Each SAP transaction consists of multiple (LUW -Logical unit of work) Each LUW contains task which should be completed/ rollback as a group. EachLUW is a commit or rollback (no intermediate stage ... which makes the system inconsistency)CONSIDER A TRAVEL AGENCY In a travel agency buying the ticket is LUW (Outward/inwards).1. LUW (Outward/ inward) Booking accommodation (LUW for number of days)2. BIND 1 & 2 Tickets to and fro + Accommodation)3. Transportation (LUW for a local tour) BIND 1 & 2 & 34. Appointment (Dates are not available Eg: Darshinam) BIND 1 2 3 4Each of the LUW is performed by a single different work process and is restricted to 600 Seconds andtask has to complete within 600 milliseconds
  46. 46. 46LICENSINGStandard License - till 9999(YYYY)Maintenance License - 3 MonthsEach user license cost - 4000 USDIn India tag is 2000 USD for min number of users Eg: 10 + 1 is minimum - 40000 USD Developers are charged differently - 8000 USD 10 + 1Users Developer 48000 * 50 = 12, 00,000 4% VAT 48,000 17% Maintenance /Year 2, 04,000 ------------------------- 14,04, 000 10.3% Service Tax 2,04, 000 20, 000 + Customs ------ --14, 68, 00022% Maintenance cost across the globe except INDIA5 1 222% 24% 26%Eg: Telco - 5000 Bajaj - 270 ARAMCO -50000
  47. 47. 47One License - SOLMAN, ECC, SRM, BI, EP, PI, MILicense is user basedOnce the license key is received then goto SLICENSE Tcode -> INSTALL And click Install new licenses buttonFrom cmd promptSoladm> saplicense - getIt checks for 1. SID 2. Hostname 3. Hardware Key (Installed by SAP - Its an executable)Note: All the executables resides in - D:USRSAPSOLSYSEXEUCNTI386Note: In Linux SAPDB/ MAXDB will be the cheapestSAPDB/ MAXDB is a DB that comes along with the SAPUSMM - System Measurement for the usersSUSER - Password never expires (Service Userid) 25-jul-09Dialogue handles the requests and process only reports with out any assistance. If the reports arelong running, time consuming, expensive then they can be scheduled to run in the BTC mode.During an update dialogue updates temporary table and update-process updates them later.
  48. 48. 48For print requests Dialogue handles the request and update in Temse. The spool processPrints from Temse (Temporary Sequential file it can be at file/ DB Table)Dialogue communicates with enqueue while updating a transaction and obtains lock so that no usercan update there by assuring data consistency.Dialogue communicates with the message server to obtain locks for a record that is coming fromDialogue instance.Dialogue communicates with the gateway while establishing connection with other SAP systems.Dialogue is monitored by using SM50, SM66, and DPMONDPMON.exe is a dispatcher monitor which can be executed when the user could not login to thesystem (Experience Hour glass). Its not a TCode.Killing the process From Command Prompt > DPMON (Process the list at OS Level) >K > Provide - Serial Number > Provide - PIDPROCESS MANAGEMENT SM50/ SM66 Work process list is displayed in SM50/ SM66. Each process has the following- Serial Number : Starts with 0 (DEV_W0) in work directory- Type of Process : (DVEBS) Message and Gateway are not displayed- Process PID : The identifier at OS level. It is used to kill the process at OS Level. They aredisplayed as [DISP+WORK] on windows in the Task Manager. DW - dispatcher work process in UNIX 0 to 11 [12] And 1 is for dispatcher 13 Total
  49. 49. 49-status : Waiting, Stopper, RunningWaiting : The process is waiting "Available" to serve the user request.Stopped : The process is stopped due to an error.Running : The process is executing the task (SM50 running with our Userid should not be considered)On Hold : The user request is on hold by process for waiting certain Resources on the other systems (RFC, CPIC)Shutdown : The process is killed/ shutdown but restart mode set to NOWaiting forPRIV Mode: The process goes into Heap mode. It will be completed only after the taskcompletion/ timeout.SLEEP MODE: The work process goes into sleep mode waiting for resources (RFCproblem)- Restart YES/ NO : if the process is terminated and it will restart automatically (Yes), not restart(NO)- Error : No of times the process is restarted- Semaphore : The block that hold at OS Level (DISK)- CPU : The amount of time WP spends utilising CPU resources- Runtime : The amount of time the process spends on the user request.- Report : The name of the program/ report the WP is executing- Client : The client number logged in- User name : Name of the user- Action : Select, Update, insert i.e. action on the database.- Table : Name of the table. 26-jul-09SM66 GLOBAL WORK PROCESS OVERVIEWIt displays the processes based on status. It displays the processes belongs to all the instances. From SM66 - Click on SELECT PROCESS
  50. 50. 50The major advantage of this is it displays the memory consumed by work process. Double click onthe WP to display (Extended, Roll and the Heap Memory)On Oracle executePS -ef |grep ora* (lgwr, smon, pmon, dbwr, ckpt, arch)SM04 : is used to display the logged in users along with the sessions. We can terminatethe session or the user completely using End session or logoff user.From User > Logoff User > Local or End the sessionBACKGROUND PROCESS SM36It is used to run the expensive programs, reports that consumes more time in the background mode.i.e. a job is scheduled to run at a specific time or periodically.Example: Daily report, Weekly sales report or expensive to run in the peak hours so they arescheduled to run in the background mode during off peak hours.Process Flow 1. User submits the request via dispatcher to a WP. 2. The Dialogue work process handles the request and updates the tables 3. Tables TBC* are used to store the BTC Jobs 4. A program SAPMSSYS starts in the dialogue mode at frequency that is defined in theparameter rdispbtctime=60SecSAPMSSYS - Checks for every 60 sec into the TBTC* table.* To delay the BTC processing increase the time as much as possible.Example : 100000 seconds 27Hrs RZ11 (rdisp/btctime)Refer - BTCTRNS1 from SE38We can also use BTCTRNS2 to resume the background jobs (Execute the program) 5. BWP looks into the table and identify the jobs which are in the Ready State. 6. BWP runs the job in the Active mode till completion/ Cancelled. BWP are defined by using rdisp/wp_no_btc=2 (Min 2 per system) We can increase as many as possible depending upon the resources.** Note: We can pause jobs by setting the value to 0 zero **BWP jobs are defined in SM36
  51. 51. 51Specify Jobname: Daily report JobClass: C A, B, C (High, Medium, Low Priority)Class A requires a dedicated BTC of class A which are defined in operation modes.Class B has medium priority over class C jobsClass C jobs runs with Normal PriorityJOB STATUS1. Scheduled: The job is defined but time to execute is not specified.2. Released: The time to execute is specified3. Ready: The Time to run the job is reached4. Active: BWP processing the task5. Cancelled: The job is cancelled6. Completed: The job is completed or finishedExecution server - Name of the instance that provides BWP to run the job Exec Target - Willsys_<SID>_00 Click on stepJOB STEPS We need to specify the following for the JOB Execution1. ABAP Program2. External Command3. External Program1. ABAP Program - Is a predefined program that will be run in the background with user inputs asvariants.Variant - Is a predefined value that is populated during the runtime.Eg: consider RSPO1041 from SA38 Goto SA38 and define variant for 7 & 15 days Prog: RSPO1041 Variant: willsys SAVEClick on start condition - IMMEDIATE or DATE....2. External Commands: The job can be executed by external commands which are defined in SM49/SM69. These commands are OS commands that will be executed at command level.Eg: BRBACKUP, BRARCHIEVE, BRRESTORE, BRCONNECT Use DB13 to schedule the jobs. The jobs in DB13 uses OS Commands.
  52. 52. 523. External Programs: NAME: Name of the program Parameter: Target Host:Name : Specify the name of the program and the parameters. Specify the name of the target host. Specify the start conditionImmediate/ Periodic/ Jobstart, Event (SM62)/ Operation. Modes.Job Started: When dependent job started this gets triggered.Event: When an event triggered in SAP it also triggers the job as well.OPERATION MODES RZ04 SM63It is the process of switching DIA to BTC and vice versa during the peak hours as we need moredialogue process and during off peak we need more BWP to run the BTC jobs.RZ04 > Define 1. Instance 2. Operation Modes (Peak and Off Peak) 3. Specify the processes for modesGoto SM63 to define timing for the modesRZ04 > click on Create [Instance Operation Mode] Peak_mode Peak_mode operations Default SAVEOff peakOff peak ModeCreate new Instance willsys28 Start profile Save. 27-jul-09BACKGROUND JOB MONITORING SM37
  53. 53. 53rdisp/wp_no_btc = 2rdisp/btctime = 10Operation modes - to make use of the resources optimallySM37 is used for BTC monitoringExecute SM37 Specify username, date & time, job name, status ----- Execute F81. The jobs with status RELEASED indicate the jobs are released with scheduled time and waiting fortheir turn/ time.2. The jobs with status READY indicates the jobs are ready to pickup by the scheduler Eg: Consider a CAB - might come late No sufficient CABSLong time in ready status indicates 1. The existing jobs are running for a long time i.e. expensive programming or sql statements/fetching huge amount of data. 2. The configured BTC processes are not sufficient to handle the requests in Ready status. 3. May be due to heavy load on the system 4. Also due to passing the jobs by extending scheduler time/ making BTC to 0 by running theprogram BTCTRNS1.Action: 1. Increase BTC work processes based on the available resources by using the parameter rdisp/wp_no_btc = 2 2. Schedule the jobs appropriately during off peak hours.3. ACTIVE BTC in active status (long time recorded)
  54. 54. 54The job is running an expensive activity like client copy, pay roll run.Jobs that fetch information from BW systems, annual reports, dunning reports may take hourstogether or even days to complete successfully.Active indicates the following 1. Jobs are expensive and running to fetch the content. 2. Jobs are waiting to be processed by the target system (RFC, CPIC) 3. Jobs are waiting for the locks to update the records.Reasons and Resolutions ACTION. 1. Some jobs are bound to run for hours and based on history leave them to run. 2. Check the bottle neck on the target system (ERP-BI-EP-SRM-SCM-SRM) 3. Wait until the locks are released/ jobs are completed. Report to SAP in case of dead locks. Select the status - Db click - and click on Job Logs Execute SM37Highlight the jobClick on Job logSap takes at most care to avoid dead locks.4. FINISHED
  55. 55. 55The jobs are completed successfully but check the log for further information/ completion.5. CANCELLEDJob status cancelled/ finished but failed in the log.Reasons for cancellation of Job1. User and password Issues (Authentication/ Authorization) user lock, userid expiry, passwordchange, lack of roles etc.2. File system problems: BTC reads from the file system to update the database. File not opened, orcorrupted, file sharing issues, file came with different characters, file not found as well.3. Variants are not properly defined.4. Dead locks issue (Lock mechanism congested)5. Update mechanism failed6. Table space over flow (ORA-1653; ORA-1654)7. Table space max extent reached (ORA-1631; ORA-1632)8. Archive struck (ORA-255; ORA-272)9. The memory is not sufficient and errors (No Roll Area, PXA (Buffer), Page Errors)10. Problem in the program and inputs (Indefinite loops like 1/0)11. Dependent jobs/ events failure12. Target systems are not available to process the jobs.Standard Background House keeping Jobs1. As a part of the post installation we need to schedule house keeping jobs in SM36 Execute SM36 Click on "Standard Background Jobs"
  56. 56. 56Click on "Default Scheduling"And schedule the BTC jobs with default time.1. RSBTCDEL - Used to delete the background jobs Reporting structure "BTC" "DEL"2. RSSNAPDEL - Delete the old ABAP Dumps3. RSPO1041 - Delete the old spool logs and files4. RSMO13002 - Delete old update requests/ logs5. RSCOLL00 - Collects performance info in transaction ST03.6. RSPO1043 - Spool ReorganizationEg: from SA38 Click on ExecuteAnd Specify the Days ...
  57. 57. 57From GOTO Menu > Variants > SAVE as VariantSM37 - MONITORING BACKGROUND JOBS.1. Used to display the jobs based on job, username, date and status2. It displays the job logs By highlighting a job and click on Job Log
  58. 58. 583. Do not kill the active job unless it is permitted by the owner4. We can repeat the scheduling of the job if required5. Background job out put is a report to a spool (Printer), fax or email or even updating a database(Eg. Client Copy)6. We can move the jobs from one instance to another instance. From Menu Job > Move to different server. (Consider the above screen) Active jobs can be moved. 28-jul-09There are Third Party BTC Job Schedulers 1. CONTROL-M Scheduler 2. RED WOOD Scheduler 3. TIDEL Scheduler 4. SAP Job Scheduler 5. MAESTRO Scheduler / IBMThese Third party schedulers are not specific to SAP but we can customise these to SAPThese job schedulers are intelligent to work based on the status of Predecessors.The tool defines when to trigger, how to handle various statuses and alert users accordingly.Eg. KODAK Runs 14,000 Jobs/ day HP Runs 20,000 Jobs/day
  59. 59. 59BTC - Business CaseSony an electronics company communicates with suppliers for the TV Cabinets/ Circuit boards, Picturetubes, assembling & packing. Vendors instead of communicating in hand documents they are advised to communicate insoft documents. SAP also sends soft documents as well.i.e. the communication is performed electronically.BTC Jobs performs the following:1. Run long running reports for an End User2. Runs payroll for the employees3. Client copy for the technical consultants4. R/3 BIW Replication5. Communication with NON SAP Systems to fetch the data6. Dunning report for Finance team7. Weekly, Monthly and Annual Reports8. Runs standard jobs for House Keeping
  60. 60. 609. To run Database jobs using external commands DB13 (SM49 provides commands)NOTE: In table TSTC, we can get a list of all existing Tcodes and which programs are called by thosetransactions.From SE11 - Provide the table name TSTC and execute providing the T-Code to find the ProgramNo bother of "Schedule/ Released" Will not in our scopeWe need to take care about the Status
  61. 61. 61Ready for longer timeActive for the longer time.BTC logs are deleted by scheduling RSBTCDEL which deletes the log files from TBTC* based on thetime interval in the Variant SA38.UPDATE PROCESSIt is used to update the database from Temporary tables. There are three 3 Types of updatesV1 - Handles High Priority UpdatesV2 - Handles low priority updatesV3 - Reserved by SAP (Currently no use)Updates are defined by the parameter Rdisp/wp_no_vb=1 Rdisp/wp_no_vb2=2 from RZ11Technically for every 5 dialogue work process there should be one update of type V1/ V2Update Flow:1. User submits the request for an update (Let us say a Purchase Order) Eg: Bearers won’t go to the Pantry Similarly All dialogue won’t go to the.... DB2. Dispatcher handles the request and provides a dialogue process to it.3. Dialogue process interprets the request and communicates with enqueue process to provide a lockto update the record consistently.4. Dialogue process updates the temporary tables called as VB* asynchronouslyVBHDR - To store update header informationVBDATA - To store data that needs to be updatedVBMOD - The modules through which the data is updatedVBERR - Update Error Table
  62. 62. 62And gets a transaction ID from Number Range Buffer (Transaction SNRO and Table NRIV NumberRange Interval Table)SNRONRIVEg:
  63. 63. 63Dialogue Updates - Update Releases the lock.5. Update gets initialized and reads from Temp Tables and updates the permanent tablessynchronously. Update inherits the locks and releases them upon updating permanent tables. Updateupdates the record based on transaction-ID using VBMOD Table (Every update is module based inSAP)6. When the Dialogue updates the temp tables the record is displayed in SM13 which will beprocessed by update.UPDATE MONITORING SM13 The record that needs to be updated by update process is displayed in SM13 with status INIT.If the records stays for longer time in INIT status that indicates the updates are busy or there are nosufficient update processes or update mechanism is deactivate from SM14. Update handles the record and change the status to "RUN"If the update stays long time in status RUN1. Longer Update2. Dead Lock (Needs to inform SAP for Program correction)Updates which could not be updated will be thrown into ERR Status.1. Update deactivated in SM142. Programming problems in LUW3. Table Space overflow (ORA-1653; ORA-1654)4. Max Extents reached (ORA-1631; ORA-1632)5. Archive Struck (ORA-255; ORA-272) 29-jul-09BATCH/ BTC/ BACKGROUND
  64. 64. 64 Each SAP transaction is considered as Single LUW (Logical unit of work) which in turncontains multiple LUWs needs to be committed to commit the SAP Transaction. If any one of theLUW is failed the entire transaction is rolled back. That is the reason why dialogue updates TempTable.1. User submits the request.2. Dialogue handles the request.3. Obtains lock from Enqueue so the data consistency is achieved and the records are only for display.4. Updates the request in Temp tables (VBHDR, VBDATA, VBMOD, VBERROR)5. Gets the transaction ID from NRIV (Number Range Interval Table)6. Update gets initiated to update the VB* content permanently into the database.7. Update inherits the locks.8. Updates the database based on transaction ID.9. Update releases the lock from the record.UPDATE Statuses.The following are the statuses displayed in SM13 Transaction.INIT The record is waiting to update by an update process.ERR The record runs in to an Error (Update Error)RUN The update is executing the record into DBAUTO The error records are reprocessed after a system restart/ update activation Automatically.SM13 - Repeat UpdateUsed to repeat the ERR updates. The update are terminated or cancelled due to the following reasons1. Table space overflow2. Max Extents reached3. Archive struck4. Programmatical Error5. Update Deactivation (SM14) Running updates during deactivationDEACTIVATE -----------> THROWS TO ERROR -------------> GOES TO AUTOAt this point of time we need to select the update (put a check mark of the update from SM13) andclick on [Repeat Update]Refer modules from SM13
  65. 65. 65The updates can be repeated with status ERRRdisp/vbmail = 1 to send email to the users if an update is failed.Update mechanism can be deactivated by setting the parameterrdisp/vb_stop_active=0 to deactivate the update mechanism in case of DB errors.It can be activated from SM14.rdisp/vbdelete=30 to delete the update records older than 30 days irrespective of the status.Rdisp/vbreorg =1 to delete the incomplete update request during a system restart.Report in SA38 RSM13002To delete the old update requests.Deletes the executed update requests. Reorganize the update tables. (Its a background job)V1 and V2 updates needs to be defined in the system.V1 handles critical updates and V2 handles the non-critical updates which are defined by theprogrammers.We can see either V1 or V2 in the standard SAP Program SAPMV45A by executing SE38MESSAGE SERVER/ PROCESS 1. There will be only one message server through out the System. 2. It is used to manage all the dispatchers and identify the least loaded dispatcher and forwardthe user request to the dispatcher provided logon load balancing is configured in transaction SMLG
  66. 66. 66Logon Groups SMLGSMLG > Create Provide GROUP: For Eg: MARKETING INSTANCE: dewall36_R3I_00Now from SAP Logon ScreenClick on Groups > and Provide SID and Message Server.We can find the Active servers from SM51 and on db click on the Host name to view all the Processes.CONFIGURING SMLG 1. Define a logon group from TCode SMLG 2. Assign the instance. 3. Open GUI > Select groups and create entry by choosing group. 4. Add an entry in etc/ services As sampsDEV (Message Server Name) 3200/tcpEntry should be made on all GUI systems.Note: The load is calculated based on in ST07 5. create a file sapmsg.ini if not exists from (x:windows) Sapmsg.ini > open [MESSAGE SERVER] DEV = <hostname>
  67. 67. 67Mechanism 1. User communicates using GUI. 2. sapmsg.ini gets evaluated and checks the port in etcservices to communicate with themessage server. 3. Message server maintains the details of favorite server and routes the request to thatdispatcher 4. Dispatcher handles the request - Queue - DialogueMessage server obtains the lock for dialogue process if the request is coming from the Dialogueinstances.SMMS: MESSAGE SERVER MONITORINGENQUEUE PROCESS / SERVER SM12 MonitoringNote: Server Naming convention is used because each of the process serving the user requests(Dialogue, BTC, Update, Enqueue, Message, Gateway and Spool DVEBMGS)It is also possible to install and configure all the above servers on different instances or hosts.ENQUEUE: It is used to provide data consistency while updating the system. It provides locks from alock table before a record gets updated and ensure that the record is available for display during anupdate.
  68. 68. 68There will be 1 One Enqueue process installed during installation. It is also possible to increaseEnqueue processes to more than one depending upon the updates but most of the customerenvironments there will be only 1 One enqueue process.It is configured by the parameterrdisp/ wp_no_enq = 1 30-jul-09DEAD LOCKSAP TRANS ------ MULTIPLE LUWSMM Dept Sales DeptX + Y (LUW1) A + B (LUW1)Z + M (LUW2) X + Y (LUW2) Dead LockQ + R (LUW3) R + Q (LUW3)Enqueue process the locks and unlock the record during an update.Enqueue server maintains the lock table on the shared memory of the Central Instance (or on theinstance where it is installed)It is recommended to increase the Enqueue processes only on the Central Instance.Technically the Message and the Enqueue should reside on the same instance (It is not mandatory). Ifboth are installed on the same machine then it will be more comfortable for message server tocommunicate with Enqueue process to obtain locks for Dialogue process that are coming from otherinstances. RFC
  69. 69. 69DIA - MSSG - ENQ - MSSG - LOCK - DIATCODE - SM12 (Lock Management)Enqueue table size is defined by the parameterEnqueue/table_size=4MB (Earlier 1 MB to 4 MB) in Netweaver systems this can be increased to100MBLOCK MONITORING/ ENQUEUE MONITORING SM12Shared ModeExclusive Mode. Locks are monitored in transaction SM12. In principle the lock which are older than one hourshould be reported to the escalation manager. If the lock table is filled (Enque/ Table_size) anoverflow occurs in the lock table.1. Check whether the update server is still performing the updates. If the updating has stopped, thenthe lock table can quickly become over filled with the locks held by update requests. We can resolvethe problem by restarting the updates. If updating has not been interpreted, then we must enlargethe lock table.Note: Enque table overflow is recorded in SM21 and ST22Eg: Execute SU01 from Shawn user/ 800 and edit shramana user Execute SU01 from Shawn user/800 and edit shramana userFollowing message is displayedAnd now execute SM12 which displays the Exclusive Mode lock2. Enque time is too high
  70. 70. 70As a part of the response time enqueue time should be 1ms - 5ms for Central instance and 100Msin case of the request that is coming form Dialogue instance.Then we can consider the following1. Lock table is overflow and the locks are held in SM122. Update is deactivate (SM14) due to any of the issues in DB. If the update gets deactivated then thelocks are not released.3. If the Enqueue time increases i.e. there could be RFC issue or Enque wait time is increasing thenconsider increasing Enqueue work processes.4. Dead locks (Usually never occurs, but there is a collision between PP, Manufacturing and MaterialModule, so highlight this issue to SAP) In some instances we may need to release the locks but we need to follow certain process. Do not release the lock in SM12 (Even though there is an option)Lock deletion is recorded in SM21.1. Users complaint that he could not update a record and message pop up stating that the record islocked by user XYZ.2. Check the period of lock (if it is older than 1 hour inform to the escalation manager)3. Get the written B&W approval from the user and terminate the session of that user using SM04.(Only Terminate or End that session)All the transaction activities are recorded in CDHDRNote: Initially 20Kb Mem is given from ztta_roll_first. We may need to allow some locks for more than one hour or days (Eg. Payroll updateprocessing) consumes lot of time. We need to ensure that dialogue process should not held forlonger time, but however BTC is allowed. 31-jul-09SPOOL PROCESSINGUser request - DIA - (Tables TBT*) BTC---- (TST01, TST03)--SPOOL -- PRINTUser request - DIA-- (TST01, TST03) --- SPOOL ------ PRINT
  71. 71. 71PROCESS/ FLOW:1. User request to print a purchase order (or) user schedule to print dunning reports (LEGAL Notices,Credits, LOANS etc)2. These print request are processed by the respective Dialogue/ BTC and stores the content in TEMSE- Temse is a temporary sequential objects that are stored at OS (File system) or Database level whichis defined by the parameterrspo/store_location=G or DB(G Means Global Directory usrsapSIDsysglobal)(DB Means - Database tables TST01 and TST03)Note:DIALOGUE - MultiplexingBTC - Single ProcessThe Advantages of TEMSE.TEMSE size is 99000Refer:SU22 - (s_spo_act) - To identify the tcode/ Authorization objectsSP01SU24 The Temse can be stored in database or OS level. Temse remains in the DB/OS unless they aredeleted explicitly by SAP standard reports.TEMSE AT OS OR DB (WHICH ONE IS RECOMMENDED?)OS [G]1. It is recommended because the print request are printed faster than database. i.e., from Globaldirectory requests can be converted to output request at faster rate than database.2. This is only recommended when the requests are small in nature. (Every day 50-100 Docs) if the sizeincreases the search at file level consumes more time as (No indexes at file system)
  72. 72. 723. File system is not backup frequently as Database. File system backup will be weekly, fortnight,monthly whereas database is hourly (Redo Logs) and daily DB Backup. That is Temse is not secured atfile system.DB [DB]1. Consumes more time than Temse at OS when there are less no of records. but shows theperformance by using Indexes when the user grows (Temse can handle 90000 Requests)2. Backup is a regular activity on database so the Temse is secured. As it is stored in tables.Temse is a part of Normal Database (TST01 and TST03) no separate memory is required.DIALOGUE - BTC request - Spool Process OUT PUTDIALOGUE - [TST01, TST02] - Spool Process REQUESTFRONT END > Spool process comes at our DesktopDefault setting is DBRZ11 : rspo_location : rdisp/ btctime3. The Spool process reads from TST01 and TST03 i.e. the name of the author (USER), Name of thePrinter, No of copies are procured from TST01 and Printable data from TST03
  73. 73. 73Spool Process formats or converts spool requests to output requests i.e. Printer specific format. Ifthe format is performed locally then it is said to be LAN (Local Access Method). If it is performedremotely then it is said to be RAM (Remote access Method)Spool processes are configured by rdisp/wp_no_spo (Rdisp indicates instance specific)There should be at least 1 one Spool process in the entire system.We can configure as many as we can depending upon the available resources.It is also possible to have dedicated instances which will provide only spool processesPROGRAM[ RSPO1041] to maintain TEMSE.Refer: From SE12TPFYPROPTYFlag for changesObj_name = parameter Rdisp/timeType T denotes DynamicX - Whether Changeable or not. 01-Aug-09SAP SystemNote: We should not touch the Repository data of name space A to X.SE11 > table name : /* (/ is a customer name space)
  74. 74. 74TADIR is the repositoryTSTC - Is the T-Codes with the program name.Market place > keys & Reqs > Development Name space.Note: STMS > System > Transport Toolno_import_all = 0 (No Mass Transportation)SPOOL MECHANISMDialogue - BTC - TBTC* - TS* TablesDialogue --------------------- TS* TablesSpool process reads from TEMSE and convert spool requests to the output requests (Printer specificrequests).SPOOL ADMINISTRATION TCODE - SPADLPD - Line Print DemonDrivers are specific to O/S and not to SAP1. It is used to define output devices/ Spool servers and access methodsDefining a Spool Server: The instance with atleast one spool process is referred as spool server. It is also referred as Realspool server. (Existing)Logical Spool Server.This is not existing but pointed to a Real spool/ another logical spool server. This is used for loadbalancing the spools.
  75. 75. 75Note: We can set up a dedicated instance for spool process.CONFIGURING THE OUT PUT DEVICE.1. Execute SPAD2. Click on the Spool Server - Display then Change3. Click on create Server Name: LOGICAL SP1 Server Class : Mass Printing Logical Server: Mapping : willsys28_00 Alt server: ......................
  76. 76. 76DEFINING OUTPUT DEVICE/ PRINTER1. Execute SPAD2. Click on output device3. Click on display4. Click on change5. Click on create6. Specify the Output device name Specify the description : Local Printer7. Device type: HP Model & Manufacturer
  77. 77. 77 Device type specifies that the output device is recognized by SAP. If there is nodevice type available then select SAPWIN. If required write to SAP and try to get the device type. SAPsends programs in terms of Patches.SPAD > Utilities > For device types > ImportIf the character set is required.Device Class: (Standard, Fax, Telex etc)Authorization Group : Specifies the access control methodsModel: 2200Location : 5th floor A wing...Message : Only used by Pay Roll.--------------------Note:Dialogue --- TEMSE -- Author, Printer, Number of copiesWhen printer is defined Spool server (LS/ RS) is assignedIn order to print we need the spool process from the assigned instance to convert the spool requestin to the output request.Spool process uses Access Methods to format the request. (either Local, Front End, Print server...)
  78. 78. 78--------------------- 02-Aug-09ACCESS METHODS It specifies the process of formatting the spool request to printer specific outputrequest.LOCAL ACCESS METHODThe spool work process and the host spool resides in the same machine i.e. the work process transfersthe spool request to the spool system locally.Select L for UNIX based system (Local Print Method)Select C for Windows (which uses direct operating system call)Select F for FRONT END printingSpool work process goes to the user desktop and format the request based on the printer that isconnected to desktop. This is more expensive, time consuming than any other methods.Disadvantages: No user can print in the background because the desktop initiation is not possible inthe background during off peak hours.Advantages: Check printing, Sensitive docs, label printing.Restrict the no of work process that can go into front end mode using the parameter.rdisp/wp_no_spo_fro_max = 2i.e. two work processes can be used for front end printing. If this parameter is not used spoolcongestion occurs.Specify I for Achieving device (Optical Devices, HSM, Jukebox (stores each copy (output doc))Hierarchal storage machine
  79. 79. 79REMOTE ACCESS METHODS The formatting by spool work process is performed on remote system.Specify U for UNIX operating system where formatting is performed on the remote machine (Printserver) using Berkeley protocol.Specify S for windows operating system. It will transfer the formatting to remote system usingSAP specific protocol SAPLPDFor LOCAL & REMOTE > Needs the printer modelsFor FRONT END > SAPWINWhen Remote access method is specified we need the followingHOST Printer:Destination HOST:i.e. the printer should be configured on destination HOST. It can be a print server.Note: Front end cannot be scheduled in the background.