1 15-jul-11 SAP BASIS 2 SAP BASIS Consider the following example [EMAIL or RAILWAY] For Email - It requires a PC and an Application installed in it. Yahoo/ Google 1. Client requests 2. The request is processed by an interface 3. The request reaches server 4. The server process the request 5. Response back to the user either {Ticket/ Email} This environment is called as a Client/ Server Architecture. 3 R/2 Client-Server 1. Client provides an interface to communicate with the server. Eg: IE, GUI 2. Client uses DB Client software to communicate with server 3. Each request is processed by communicating with server only I.e. there is no intermediate layer in R/2 4. 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 is 1. DB Client is installed on the client 2. Processing takes place at client side 3. No intermediate buffers for the frequently accessed content 4. 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/ Server Application server is deployed and it provides the following functionality 1. DB Client is installed to free up the clients (i.e. there will be only one DB Client for Application server 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 and server. 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 5. Intermediate buffers are available for the frequently accessed content to reduce the load on the Database server. 6. The server side processing is only takes place for new requests there by server resources are optimally used. Need for the Middle Layer: R/3 Architecture The advantages of deploying Application Layer: It is the Intermediate layer in between the Client and the Server. It is installed with a database client 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). It has its own queue mechanism to process the user request. It also contains the task interpreters to interpret the user request and route it to the server. 5 It 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 Layers 1. Presentation Server/ Layer/ Tier 2. Application Server 3. Database Layer 1. 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 dispatcher to process and monitor the user request, work process to process and interpret the requests, Buffer areas 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, and request handling mechanism. Most of the databases are on Oracle. SAP is pushing MAXDB (without any 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 Supporting Platforms: SAP can be installed on Microsoft windows 2000, win2k3 (2008 is under evaluation). It can be installed on 32bit or 64bit operating systems. 64 bit means a single process can serve the user with 4GB RAM/ Memory whereas in 32 bit it is 1.9GB Memory. 264, 232 / 8 bytes. HP UNIX and ORACLE HP UNIX ORACLE 11.23 9.2.0.6 / 10.2.0.4 AIX 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 IBM ISERIES/ 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 Installation of Presentation Server (SAPGUI) Use presentation server DVD and go to the respective OS win32 and run setupall.exe and follow the onscreen instructions. Saplogon icon is installed on the desktop. Double click and enter the entries of the application server Launch saplogon icon and click on New Item Enter the Description Application Server SID System No 16-jul-09 BASIS 1. It provides runtime to SAP Applications 2. Basis is a layer where all the applications reside 3. Basis provides the infrastructure to manage, monitor, and administer the SAP Applications Eg: Basis provides User Management Business process Monitoring Role based Security Performance Gauge etc. Three 3 Tier/ Layer/ Server Architecture 1. Presentation Server 2. Application Server 3. Database Server 1. Presentation Server It is an SAP GUI. It is of 3 types SAPGUI for windows, HTML and JAVA. It is used to establish connection with SAP Application Server based on the name of the application server, Instance Number, SID etc. 8 Installation of Presentation Server (SAPGUI) Use presentation server DVD and go to the respective OS win32 and run setupall.exe and follow the onscreen instructions. Saplogon icon is installed on the desktop. Double click and enter the entries of the application server Launch saplogon icon and click on New Item Enter the Description Application Server SID System No Click on logon Advantages 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 allowed to login with different languages 3. GUI is user friendly to create favorites, startup transactions 9 - To create Favorites Login - From Tools – Administration SU01 - From Menu Favorites > Add - To setup startup transactions From menu Extras - Set startup transaction 4. 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 sales organization, 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 F4 Click on sales organisation field and press F1 and click on technical settings Note the parameter ID 10 Repeat the same for Distribution Channel and Division. 2. Execute SU01 - Edit the user - From Parameters Tab - Provide PID and VKO Value 0001 Save the data. Now whenever the user executes the transaction VA01 it will be filled with the default values with 0001 and 01 for Sales organization and Distribution channel respectively there by reducing the user tasks. 6. User can be specified with 1. Role based menu or with 2. SAP Easy access Menu to reduce the load on the request processing (Roll Area) 7. SAP GUI is intelligent to determine the least loaded server when more than one instance is configured. 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 dialogue steps. 10. GUI entries are controlled by using saplogon.ini/ sapmsg.ini/ saproute.ini These files reside in windows directory i.e. we can configure one GUI and copy the files to the other systems easily. Goto Windows directory Saplogon.ini - Copying provides all the parameters 11 11. 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 a new 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 Server It is a physical server which is used to handle and process the user request. In SAP naming convention we define them as an Instance and it is possible to install more than one instance on a single server provided 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 routing purposes. Instances is of various types 1. 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 only one instance in the entire system. 3. Dialogue Instance These are the instances which are used to handle the load on the central instances. We can install as many instances as possible assuming that each instance can serve up to 200 - 500 users depending upon the type of the users. 12 Kernel Set of Executables (OS, DB, Unicode, 32/64 bit dependent) \usr\sap\SID\sys\exe Start - Run - sqlplus "/as sysdba" Select username from dba_users; Select BNAME from SAPSR3.USR02; (database users) (Sap Users) SAP K E R DB OS Kernel Provides communication between SAP, DB and the OS. Usr\sap\<SID>\sys\exe\uc\NT1386 Installation Logs Sapinst.log Sapinst_dev.log - Specifies the installation success / failure - 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 file Eg: Sasapappl0.tsk.bck Sapappl0.tsk Sapappl0.cmd Sapappl0.log Sapappl0.str - Structure of the DB Control.xml Keydb.xml -Helps to restart installation from the point where it is failed. 13 WHAT HAPPENS DURING INSTALLATION? 1. Extracts the software. 2. Sapinst tool is used to install the software if required we need to download it from service.sap.com/swdc 3. 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 userid Note: The user who initiates the installation should have the privileges as Local administrator to install the software, create users, create groups, assign groups, create services etc., (This problems occurs in a 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 owner to work on the database. ORA<SID> provide the runtime environment for Database. Windows App Server <SID>ADM Database <SID>ADM UNIX App Server <SID>ADM Database ORA<SID> 14 Note: 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 Number 5. It creates local groups and global groups and assigns them to users Global groups - Domain Level Local groups - Locally SAP_LocalAdmin SAP_SOL_GlobalAdmin SAP_SOL_LocalAdmin from Computer Management -> Local Users and Computers we can view this 6. 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) It is 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 to ABAP CCMS (Computing Center Monitoring System) It is only used in JAVA and ABAP stack. Users Groups Services Creating directories Executables - OS Dependent - DB Dependent 15 Note: - 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 Sets the user as nr=00 SAPDIAHOST=willsys28 SAPSR3 for ABAP SAPSR3DB for Java Engine Where the systems are installed with these schema owners i.e., these users owns the respective databases. 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 scripts 8. 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 exports 10. 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 SAP Installation Steps 1. 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 etc 6. Install JRE 1.4.2_12 7. Set the Java environment JAVA_HOME path 8. Set the virtual memory to 20 GB on windows 9. Set the hostname not more than 13 characters 10. Make an entry of the hostname in Hosts file 11. Ensure the installation ports 21212 and 21213 are kept open 12. 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 directories 14. Verify the software using LABLE.ASC 15. Get the Static IP address (192, 172, 10 networks) 16. Ensure the internet connection is available with a valid S-USERID 17. Execute sapinst.exe 18. Select 2004s 19. Central instance and Typical Installation 20. JAVA Components and JCE Policy 21. Provide SID and Inst Directory 22. Provide Master Password 23. Provide DB SID and DB Host 24. Exports path 25. Kernel Path 26. Oracle Client 27. SLD (Local SLD) Provide Object server name: Host name 28. Parameter Summary 29. Solman Key 30. Installation Proceeds. Installation Directories D:\usr\sap \USR directory is created with a shared folder SAP with shared SAPMNT & SAPLOC Eg: SAPMNT: SAPLOC: \\<hostname>\sapmnt ~ d:\usr\sap Both in Win and UNIX Only in Windows not in UNIX 17 These are shared between systems and accessed locally and globally CCMS PRFCLOG PUT SID HOSTS Trans CCMS - 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 upgrade SID Hosts - the complete SAP Application Server. Trans - is used to host the Developments SAPMnt: 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 on Netweaver it is created automatically) SAPLoc in Windows This SAPmnt is shared because it needs to share the transports, support packages, profiles, executables etc between systems in the landscape. [Dev] ----------> [Qlty] ----------> [Prod] SAPmnt TASKS Installing SAP Component on SOLMAN On Windows/ SQL Server On Windows/ Oracle Windows/ DB2 Linux/ Oracle HPUnix/ Oracle AIX Solution Manager connects all the three systems (ERP i.e., ECC6.0, Netweaver & CRM2007) 18 I. Installation Inputs SAPInst SID Instance Number (Default 00, 01) Mater Password JCE Policy Path for the CDs. II. Installation Logs Significance Sapinst_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, RFC's DEFAULT USERS <SID>ADM -- SAP start (OS Level Access Related to SAP) ORA<SID> -- For UNIX SAP SERVICE <SID> Sys system Master Database 19 J2ee_ADMIN Java Web SAP* DDIC SAP R/3 SAPSR3 SAPSR3DB Unicode - Multilanguage Support This requires additional 40% of resources. Earlier case Individual passwords need to be set but now day's only one Master password for all the userids. Multiple Components on a Single DB repository A host is either a client or a server. A host has its own address on the network, and is its own machine. A server has its own address and sometimes multiple addresses. It provides access to services and information. A client accesses the servers. It requires its own address. Interface / Screen Exports/ System Copies Kernel [Dependent] Install Mstr [Dependent] Java Comp [Independent] JRE [Dependent] Exports [Independent of OS, DB] Installation Directories D:\usr\sap \USR directory is created with a shared folder SAP with shared SAPMNT & SAPLOC Eg: SAPMNT: SAPLOC: \\willsys\sapmnt ~ d:\usr\sap Both in Win and UNIX Only in Windows not in UNIX These are shared between systems and accessed locally and globally CCMS PRFCLOG 20 PUT SID HOSTS Trans CCMS - 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 upgrade SID Hosts - the complete SAP Application Server. Trans - is used to host the Developments Check the groups SAPLOCAL_ADMIN SAPGLOBAL_ADMIN ORA_SID_DBA ORA_DBA ORA_SID_OPERATOR Check 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 SAP 3. 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.msc Check the USR Directory (SAP Instance files..... App) predefined shared SAP Directory with SharedMnt, (SAPMnt), and SAPLoc on windows Run - Cmd - "\\Willsys\Usr" 9. Trans Directory - Used for transporting the Objects Note: SID Specifies the Application Server and is possible to have multiple <SIDS> differed by the instance number Queries: SQL> Select status from V$Instance; Checks the DB Status 21 SQL> Startup followed by enter key SQL> shutdown immediate Note: Only one SAPOSCOL per system Max of 97 Systems on a single box SAPOSCOL_00 SAPOSCOL_01 98-99 for routing - ABAP Instance - JAVA Instance Note: Each SID uses different Ports Note: In the console tree of SOLMAN if all the three entries (SERVICES, USERS and GROUPS) are available then only we can confirm there are 3 Instances in one single system. 10. <SID> Directory \usr\sap\<SID>.......... Config..... Usagetypes.properties - used to specify the usage types that are installed on the system. \usr\sap\<SID>\config ERP <SID1> ERP<SID2> EP BI JAVA ABAP EP BI JAVA ABAP on a particular <SID> Note: 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 Eg: Consider Hero Honda Landscape BI - ERP (ECC5.0) - CRM - SRM Suppliers - PI Dealers Enterprise Portal 12. SYS Directory Contains executables and profile parameters to start and stop the system EXE Directory - hosts all the executables from netweaver exe dir contains UC/ NUC and 32/64, i386/ ia64 In 4.7 we can see only exe directory 13. Work Directory This stores the startup and error logs 17-jul-09 Instance: Logical entity which is installed on a physical entity - which is an Application server. Instance provides runtime services. Instance Name Instance No: 00 - 99 (98, 99 for routing purposes) 23 Structure of INSTANCE Instance 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 is sent to dispatcher the dispatcher keeps the request in queue. Based on the availability of work process 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 restarted Work Process Work process handles the user request using Task Handler. Task Handler contains 3 Interpreters ABAP, SCREEN and SQL. 24 ABAP 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 Modify/ Insert - from the buffer area. - Hits the database Open SQL This is SAP Proprietary language to ensure that the SAP Components are Database independent. Each instance is installed with DB Client software to communicate with Database in Native 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 process checks for frequently accessed content and keeps the copy in R/3 Buffer areas. (Frequently accessed data). 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 and earlier accessed content. Process Flow (LOGON) 1. User requests 2. Dispatcher handles the request 3. Keeps in queue and assign WP based on FIFO 4. The work process gets the username, password, client, logon language and the task handler interprets 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 the process. 6. The entire information is copied into the user context which is referred as ROLL OUT. (The information is copied into Roll Area which is subsequently available for all the requests made by the user) 25 Note: The user context remains until the user is logged out. The user context is displayed in the transaction SU56. If the user accesses other than the transactions in SU56 it is missing authorizations and displayed from the Tcode SU53 (Missing Authorizations) Process Flow (TRANSACTION) 1. User executes a transaction Eg: ME22N - Purchase Order (or) VA01 - Sales order 2. 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 process copies the user related information into the task handler i.e. copy user context into the Task Handler. It is also referred as ROLL IN 4. Further processing continues Types of Work Processes Even though the processes are unique at OS level SAP differentiated between the work processes 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 - Dialogue V - Update E - Enqueue B - Back ground M - Message G - Gateway S - Spool DVEBMGS 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. There should 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 Dialogue process. There should be atleast 1 Update in the entire system. It is also recommended to have an update process for every 5 Dialogue. 26 3. ENQUEUE 'E' It is used to provide locks for the records that are going to be updated. It ensures consistency for updates. There will be only 1 Enqueue configured in the system during the installation. It is possible to have more than one enqueue provided they are installed or configured on the central instance. 4. BACKGROUND 'B' The tasks which are expensive or time consuming are scheduled to run in the background mode non-interactively. There should be atleast 2 background work process in the system 5. MESSAGE 'M' There should be only 1 message server in the entire R/3 system. It is used to manage all 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. There will 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. There should be atleast 1 Spool process in the entire system. It is also possible to configure more spool process depending on the print/ spool volume. 18-jul-09 DVEBMGS00 Dialogue - Interactive - 2 per instance - Initiate update, spool and btc (background) Update - Non-Interactive - 1 per system - Initiated by dialogue Enqueue - 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 Background - 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. INSTALLATION 1. Download the installation guide from the Market place www.service.sap.com/instguides 2. Check the compatibility of OS and DB www.service.sap.com/platforms Windows 2003 2000 Adv. Server Or 2008 Linux - MS SQL Server - Oracle - MaxDB - Oracle 10.2.0.2 - DB/2 8 - MaxDB 3. Download the software from www.service.sap.com/swdc 4. Search for the known problems in www.service.sap.com/notes 5. 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 7. Set the JAVA environment variable JAVA_HOME or path Check java -version 8. Set the virtual memory to 20GB on windows 20GB swap memory on HP Unix machines. If RAM is more than 20GB then 20GB * 3 = 60GB 9. Set the host name which should not be more than 13 characters 10. 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 allowed 14. Verify the software using LABEL.ASC 15. 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 ERP 2004 - ECC6 - ECC5 PRACTICAL SESSIONS www.service.sap.com/instguides www.service.sap.com/platforms www.sercvice.sap.com/swdc - My companies Application component - ERP 6.0 Select the Database From Downloads Tab - Select the components Exports, Kernels, JAVA SR1 - SR2 - SR3 -EHP1 - EHP2 29 Click on download to basket Market place > Help and Support > Search for Notes JRE is must as the SAP Screens are developed on JAVA Platform Virtual 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 > etc\hosts IP Address Hostname T1 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 in the 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 system And 6 Exports for IDES system. LABEL.ASC - contains the content and the DVD number from which we can find whether it is an Export 1 Or Export 2 etc. Note: Only exports will change for each application like CRM, SCM, SRM etc 20-jul-09 INSTALLATION 1. Central Instance 2. Database Instance 3. Dialogue Instance From the dump bring up sapinst.exe From Netweaver 1. Central system Instance (Which contain both Central + Database instance) Goto Installation Master DVD 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 policy Required software 1. Inst Master DVD 2. Kernel DVD 3. JAVA Components 4. Exports Exports depend upon the business component which is going to be installed like ERP, CRM, and SCM etc. JCE Policy JAVA Cryptography which is used to provide the secured encryption & decryption over the web - 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) Production version 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 To 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 to choose the Netweaver components and It is mandatory to choose ABAP components. ABAP is the platform 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 the performance, database administration irrespective of the SAP component and also managing printers. POST INSTALLATION ACTIVITIES SAP is a transaction based. Menu based consumes more dialogue steps than transaction based that is why SAP BASIS consultants are more familiar with transactions. 32 Login to the system with SAP*, DDIC and Master password (specified during installation) 1. Execute transaction SM28/ SICK (Installation consistency check). It checks the compatibility between OS, DB and the R/3 kernels. If there is any inconsistency it will recommends us to fix before proceeding further. Based on the displayed message we may need to upgrade OS patch levels, DB support 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 for the system even though it is valid for 30 days (4 Weeks i.e. 28 days). It is recommended to apply license 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 the Hardware 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-id specified, Alternatively select the system and click on display license script and save it to PC in the .txt format. 3. Execute [Slicense] Tcode Click on > New Licenses Click on > Install license key and it prompts for the path of the license key, provide the downloaded file path and click on OK to apply the license. 4. System Settings SE03 Depending upon the type of system we need to set the system to modifiable and not modifiable. 33 Goto SE03/ SE06 system change options to set to modifiable or not modifiable. This is one of the most important security setting which is liable for auditing. Toggling between the changes are recorded and it is advised to obtain permission from the respective authority to make necessary changes in the Production System PRD Except DEV and SANDBOX remaining all the systems like QAS, PRD, PRE-PRD are set to notmodifiable i.e. no object can be modified in these systems. The changes are only transported to the not modifiable systems. 21-jul-09 1. SICK/ SM28 - SAP Initial Consistency Check Checks for the Incompatibility between R/3 Patch Levels, Kernel Levels, OS levels and Database patch 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 certificate is introduced from JAN/ 2009 onwards. It locks SPAM so that no upgrades are allowed without a valid Maintenance certificate. 3. SE03 - System Settings 34 Db click on Set system change Option 4. SE06 - Perform Post Installation Action Select either one of the option. 1. Standard Installation 2. Database copy or Database Migration 1. 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 preproduction system. SE06 transaction is used to set the CTS (Change Transport System). It initializes the Transport Management system. A message will populate to configure TMS in the client 000. 35 TMS: 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 of the environments [DEV] is treated as DC because, this is the first system in the Landscape Login to the system/ Client 000 with the user other than SAP*/ DDIC Execute T-Code STMS Eg: {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 configuration NOTE: If the Domain already exists then we can execute a TCode [DICO] to delete the existing TMS configuration. 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, lock the user, change password, set to expiry will hault the system transports, support packages and applicatoins etc) A message SAP system "waiting to be included in the transport domain" is displayed in the external system. 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 System Creating Virtual Systems 36 It is a standard practice in the industry to create virtual systems as the real systems could not be available during the initial configuration (DEV server is procured during implementation, QAS will be procured after 3 to 4 months from kickoff date and the PRD is procured before 2 months of GoLive) Virtual Machines/ Systems can be replaced by real systems and the configuration now points to the real system. Goto STMS (Domain Controller) > Menu Overview > Systems > SAP System > Create Virtual System For Eg: System : JOQ Description : Quality System TRANSPORT GROUP It is a naming convention group_<SID> we can configure all the systems to a single transport group i.e. all the developments which are performed in Development system will be automatically available to other systems in the landscape. The group of systems which shares the transport directory in common are said to be in one group but due to sensitivity of PRD it is moved into a separate group. 1. Shared Data 2. Defining the Landscape 37 Execute STMS > Click on transport routes From over view menu > click on change > from Menu Configuration > Standard Configuration > Three systems in group Eg: Specify DEV: JOD QAS: JOQ PRD: JOP SAVE Provide Three System Configuration under the Description. 22-jul-09 Practicals CONFIGURING STMS Perform DICO to delete the STMS configured earlier if necessary and the RFC connection from the external system. POST INSTALLATION ACTIVITIES Continuation ... 38 From 000/ SAP* RZ10 - Initially we have to import profiles from OS Level to SAP level. From menu SYSTEM > Import Profiles of Active Servers SCC4 - Roles are client Specific Logical system <SID> client Cross clients - all the clients SALE - for assigning the logical system. Click on new entries and provide <SID>Clnt900 Default clients : 000, 001, 066 We can create upto 1000 Clients 000 to 999 For the newly created client say in this case 900 a user will be created SAP* with pass as the password. For the first time we cannot login [SAP* / pass] So being from another client perform RZ10 - change the parameter to Login/no_automatic_user_sapstar to 0 instead 1 After 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 newly created client. Login to the new client with our userid and password and lock the DDIC and SAP* ----- TASKS ----SETTING UP A LOGO Execute SMW0 Select (0) Binary data for WebRFC Click on Find button Click on execute 39 Create new Obj name : ZTEST Desc : IMAGE Browse for the Picture From settings menu > Click on MIME type Add .jpg format Save. GOTO - SM30 Click on maintain Click on new entries START_IMAGE : ZTEST Prompts for the Change request - proceed and test the logo SETTING UP TEXT Execute - SE61 40 Document class : General text From document tab NAME - ZLOGIN_SCREEN_INFO create Type the text - Welcome SAVE. 23-jul-09 Roles granted for me in the SAND BOX for Capgemini POST INSTALLATION ACTIVITIES 1. SICK 2. SE06 3. SE03 4. STMS 4.1 SALE 5. RZ10 Used to import the profiles from OS level to DB. The profiles are available in \usr\sap\<sid>\sys\profile. These profile requires management for fine tuning, configuring buffers etc From 000 > Goto RZ10 > Utilities > Import profiles of Active servers >SAVE 6. SMLT 41 Perform language transports if any. The system is an unicoded system to support the all available languages but we need to import the additional languages as per the requirements. Download the languages in \usr\sap\trans\eps\in Directory Goto SMLT > and create a language > specify supplementary language i.e. if the script is not available 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 = DE If 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 be imported using SMLT. Steps: 42 1. Execute I18N 2. Add language that needs to be imported in I18N 3. SMLT create language 4. Click on > Import package > specify the path \usr\sap\trans\eps\in 5. Download language from Market place 6. Import 7. Set the parameter zcsa/installed_languages = AEDZ 6. SPAM Apply the patches that are relevant for SAP application component 7. SR13 Install SAP Library 43 SAP Provides screen context help i.e. when a user struck at one screen he can use Menu Help > Application help. SR13 > New Entries VARIENT SAPHELP PLATFORM WINNT AREA IWBHelp PATH Copy and Paste from Market place. 1. Dynamic Help 2. Plain Html Help - Html documentation installed on Web Server 3. Plain HTML - HTML docu installed on File server 4. 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 >English Note: 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 save 9. SM36 - Define standard background (House keeping jobs) 44 Note: Create users in SU01 and assign SAP_ALL to the functional and technical team as the security is not implemented. 24-jul-09 STRUCTURE OF APPLICATION SERVER Dispatcher Workprocess User Context Task Handler Buffers - DPMON - SM50/ SM66 - SU56 - from Work Directory - ST02 Dispatcher receives the request and processes them according to the queue. The requests are processed 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 Processes Min and Max upto 40 Processes, but depends upon how heavy the processing goes.. If a reporting user 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 system supports more than 100 processes then it is better to configure one more instance on the same server differed by the instance number. * The work process are configured by the parameter rdisp/wp_no_dia = XX 45 For an Ideal Instance the sum of the Dialogue processes should more or less equal to non-dialogue process (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 consume more time then the above we need to run in the background mode or increase the parameter value from 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 (No system 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 user similarly each work process serve multiple users with out restricting the user. (No dialogue process remains 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. Each LUW 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 & 3 4. Appointment (Dates are not available Eg: Darshinam) BIND 1 2 3 4 Each of the LUW is performed by a single different work process and is restricted to 600 Seconds and task has to complete within 600 milliseconds 46 LICENSING Standard License Maintenance License - till 9999(YYYY) - 3 Months Each user license cost - 4000 USD In India tag is 2000 USD for min number of users Eg: 10 + 1 is minimum Developers are charged differently 10 Users - 40000 USD - 8000 USD + 1 Developer 48000 * 50 = 12, 00,000 4% VAT 17% Maintenance /Year 48,000 2, 04,000 ------------------------14,04, 000 10.3% Service Tax + Customs 22% Maintenance cost across the globe except INDIA 5 22% 1 24% 2 26% Eg: Telco Bajaj ARAMCO - 5000 - 270 -50000 2,04, 000 20, 000 ------ --14, 68, 000 47 One License - SOLMAN, ECC, SRM, BI, EP, PI, MI License is user based Once the license key is received then goto SLICENSE Tcode -> INSTALL And click Install new licenses button From cmd prompt Soladm> saplicense - get It checks for 1. SID 2. Hostname 3. Hardware Key (Installed by SAP - Its an executable) Note: All the executables resides in - D:\USR\SAP\SOL\SYS\EXE\UC\NTI386 Note: In Linux SAPDB/ MAXDB will be the cheapest SAPDB/ MAXDB is a DB that comes along with the SAP USMM - System Measurement for the users SUSER - Password never expires (Service Userid) 25-jul-09 Dialogue handles the requests and process only reports with out any assistance. If the reports are long 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 For print requests Dialogue handles the request and update in Temse. The spool process Prints 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 user can update there by assuring data consistency. Dialogue communicates with the message server to obtain locks for a record that is coming from Dialogue instance. Dialogue communicates with the gateway while establishing connection with other SAP systems. Dialogue is monitored by using SM50, SM66, and DPMON DPMON.exe is a dispatcher monitor which can be executed when the user could not login to the system (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 - PID PROCESS 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 are displayed 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 -status : Waiting, Stopper, Running Waiting : 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 NO Waiting for PRIV Mode: The process goes into Heap mode. It will be completed only after the task completion/ timeout. SLEEP MODE: The work process goes into sleep mode waiting for resources (RFC problem) - 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-09 SM66 GLOBAL WORK PROCESS OVERVIEW It displays the processes based on status. It displays the processes belongs to all the instances. From SM66 - Click on SELECT PROCESS 50 The major advantage of this is it displays the memory consumed by work process. Double click on the WP to display (Extended, Roll and the Heap Memory) On Oracle execute PS -ef |grep ora* (lgwr, smon, pmon, dbwr, ckpt, arch) SM04 : is used to display the logged in users along with the sessions. We can terminate the session or the user completely using End session or logoff user. From User > Logoff User > Local or End the session BACKGROUND PROCESS SM36 It 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 are scheduled 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 the parameter rdisp\btctime=60Sec SAPMSSYS - 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 SE38 We 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 Specify 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 jobs Class C jobs runs with Normal Priority JOB STATUS 1. Scheduled: The job is defined but time to execute is not specified. 2. Released: The time to execute is specified 3. Ready: The Time to run the job is reached 4. Active: BWP processing the task 5. Cancelled: The job is cancelled 6. Completed: The job is completed or finished Execution server - Name of the instance that provides BWP to run the job Exec Target - Willsys_<SID>_00 Click on step JOB STEPS We need to specify the following for the JOB Execution 1. ABAP Program 2. External Command 3. External Program 1. ABAP Program - Is a predefined program that will be run in the background with user inputs as variants. 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 SAVE Click 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 3. 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 condition Immediate/ 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 SM63 It is the process of switching DIA to BTC and vice versa during the peak hours as we need more dialogue 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 modes Goto SM63 to define timing for the modes RZ04 > click on Create [Instance Operation Mode] Peak_mode Peak_mode operations Default SAVE Off peak Off peak Mode Create new Instance willsys28 Start profile Save. 27-jul-09 BACKGROUND JOB MONITORING SM37 53 rdisp/wp_no_btc = 2 rdisp/btctime = 10 Operation modes - to make use of the resources optimally SM37 is used for BTC monitoring Execute SM37 Specify username, date & time, job name, status ----- Execute F8 1. The jobs with status RELEASED indicate the jobs are released with scheduled time and waiting for their 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 CABS Long 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 the program 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 The 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 hours together 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 SM37 Highlight the job Click on Job log Sap takes at most care to avoid dead locks. 4. FINISHED 55 The jobs are completed successfully but check the log for further information/ completion. 5. CANCELLED Job status cancelled/ finished but failed in the log. Reasons for cancellation of Job 1. User and password Issues (Authentication/ Authorization) user lock, userid expiry, password change, lack of roles etc. 2. File system problems: BTC reads from the file system to update the database. File not opened, or corrupted, 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 failed 6. 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 failure 12. Target systems are not available to process the jobs. Standard Background House keeping Jobs 1. As a part of the post installation we need to schedule house keeping jobs in SM36 Execute SM36 Click on "Standard Background Jobs" 56 Click 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 Dumps 3. RSPO1041 4. RSMO13002 - Delete the old spool logs and files - Delete old update requests/ logs 5. RSCOLL00 - Collects performance info in transaction ST03. 6. RSPO1043 - Spool Reorganization Eg: from SA38 Click on Execute And Specify the Days ... 57 From GOTO Menu > Variants > SAVE as Variant SM37 - MONITORING BACKGROUND JOBS. 1. Used to display the jobs based on job, username, date and status 2. It displays the job logs By highlighting a job and click on Job Log 58 3. Do not kill the active job unless it is permitted by the owner 4. We can repeat the scheduling of the job if required 5. 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-09 There are Third Party BTC Job Schedulers 1. CONTROL-M Scheduler 2. RED WOOD Scheduler 3. TIDEL Scheduler 4. SAP Job Scheduler 5. MAESTRO Scheduler / IBM These Third party schedulers are not specific to SAP but we can customise these to SAP These 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 BTC - Business Case Sony an electronics company communicates with suppliers for the TV Cabinets/ Circuit boards, Picture tubes, assembling & packing. Vendors instead of communicating in hand documents they are advised to communicate in soft 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 User 2. Runs payroll for the employees 3. Client copy for the technical consultants 4. R/3 BIW Replication 5. Communication with NON SAP Systems to fetch the data 6. Dunning report for Finance team 7. Weekly, Monthly and Annual Reports 8. Runs standard jobs for House Keeping 60 9. 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 those transactions. From SE11 - Provide the table name TSTC and execute providing the T-Code to find the Program No bother of "Schedule/ Released" Will not in our scope We need to take care about the Status 61 Ready for longer time Active for the longer time. BTC logs are deleted by scheduling RSBTCDEL which deletes the log files from TBTC* based on the time interval in the Variant SA38. UPDATE PROCESS It is used to update the database from Temporary tables. There are three 3 Types of updates V1 - Handles High Priority Updates V2 - Handles low priority updates V3 - Reserved by SAP (Currently no use) Updates are defined by the parameter Rdisp/wp_no_vb=1 Rdisp/wp_no_vb2=2 from RZ11 Technically for every 5 dialogue work process there should be one update of type V1/ V2 Update 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.... DB 2. 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 lock to update the record consistently. 4. Dialogue process updates the temporary tables called as VB* asynchronously VBHDR - To store update header information VBDATA - To store data that needs to be updated VBMOD - The modules through which the data is updated VBERR - Update Error Table 62 And gets a transaction ID from Number Range Buffer (Transaction SNRO and Table NRIV Number Range Interval Table) SNRO NRIV Eg: 63 Dialogue Updates - Update Releases the lock. 5. Update gets initialized and reads from Temp Tables and updates the permanent tables synchronously. Update inherits the locks and releases them upon updating permanent tables. Update updates the record based on transaction-ID using VBMOD Table (Every update is module based in SAP) 6. When the Dialogue updates the temp tables the record is displayed in SM13 which will be processed 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 no sufficient 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 RUN 1. Longer Update 2. 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 SM14 2. Programming problems in LUW 3. Table Space overflow (ORA-1653; ORA-1654) 4. Max Extents reached (ORA-1631; ORA-1632) 5. Archive Struck (ORA-255; ORA-272) 29-jul-09 BATCH/ BTC/ BACKGROUND 64 Each SAP transaction is considered as Single LUW (Logical unit of work) which in turn contains multiple LUW's needs to be committed to commit the SAP Transaction. If any one of the LUW is failed the entire transaction is rolled back. That is the reason why dialogue updates Temp Table. 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 DB AUTO The error records are reprocessed after a system restart/ update activation Automatically. SM13 - Repeat Update Used to repeat the ERR updates. The update are terminated or cancelled due to the following reasons 1. Table space overflow 2. Max Extents reached 3. Archive struck 4. Programmatical Error 5. Update Deactivation (SM14) Running updates during deactivation DEACTIVATE -----------> THROWS TO ERROR -------------> GOES TO AUTO At this point of time we need to select the update (put a check mark of the update from SM13) and click on [Repeat Update] Refer modules from SM13 65 The updates can be repeated with status ERR Rdisp/vbmail = 1 to send email to the users if an update is failed. Update mechanism can be deactivated by setting the parameter rdisp/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 RSM13002 To 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 the programmers. We can see either V1 or V2 in the standard SAP Program SAPMV45A by executing SE38 MESSAGE 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 forward the user request to the dispatcher provided logon load balancing is configured in transaction SMLG 66 Logon Groups SMLG SMLG > Create Provide GROUP: INSTANCE: For Eg: MARKETING dewall36_R3I_00 Now from SAP Logon Screen Click 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/tcp Entry 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 Mechanism 1. User communicates using GUI. 2. sapmsg.ini gets evaluated and checks the port in etc\services to communicate with the message server. 3. Message server maintains the details of favorite server and routes the request to that dispatcher 4. Dispatcher handles the request - Queue - Dialogue Message server obtains the lock for dialogue process if the request is coming from the Dialogue instances. SMMS: MESSAGE SERVER MONITORING ENQUEUE PROCESS / SERVER SM12 Monitoring Note: 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 a lock table before a record gets updated and ensure that the record is available for display during an update. 68 There will be 1 One Enqueue process installed during installation. It is also possible to increase Enqueue processes to more than one depending upon the updates but most of the customer environments there will be only 1 One enqueue process. It is configured by the parameter rdisp/ wp_no_enq = 1 30-jul-09 DEAD LOCK SAP TRANS ------ MULTIPLE LUWS MM Dept Sales Dept X + Y (LUW1) Z + M (LUW2) Q + R (LUW3) A + B (LUW1) X + Y (LUW2) R + Q (LUW3) Dead Lock 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 the instance 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). If both are installed on the same machine then it will be more comfortable for message server to communicate with Enqueue process to obtain locks for Dialogue process that are coming from other instances. RFC 69 DIA - MSSG - ENQ - MSSG - LOCK - DIA TCODE - SM12 (Lock Management) Enqueue table size is defined by the parameter Enqueue/table_size=4MB (Earlier 1 MB to 4 MB) in Netweaver systems this can be increased to 100MB LOCK MONITORING/ ENQUEUE MONITORING SM12 Shared Mode Exclusive Mode. Locks are monitored in transaction SM12. In principle the lock which are older than one hour should be reported to the escalation manager. If the lock table is filled (Enque/ Table_size) an overflow occurs in the lock table. 1. Check whether the update server is still performing the updates. If the updating has stopped, then the lock table can quickly become over filled with the locks held by update requests. We can resolve the problem by restarting the updates. If updating has not been interpreted, then we must enlarge the lock table. Note: Enque table overflow is recorded in SM21 and ST22 Eg: Execute SU01 from Shawn user/ 800 and edit shramana user Execute SU01 from Shawn user/800 and edit shramana user Following message is displayed And now execute SM12 which displays the Exclusive Mode lock 2. Enque time is too high 70 As a part of the response time enqueue time should be 1ms - 5ms for Central instance and 100Ms in case of the request that is coming form Dialogue instance. Then we can consider the following 1. Lock table is overflow and the locks are held in SM12 2. Update is deactivate (SM14) due to any of the issues in DB. If the update gets deactivated then the locks are not released. 3. If the Enqueue time increases i.e. there could be RFC issue or Enque wait time is increasing then consider increasing Enqueue work processes. 4. Dead locks (Usually never occurs, but there is a collision between PP, Manufacturing and Material Module, 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 is locked 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 CDHDR Note: 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 update processing) consumes lot of time. We need to ensure that dialogue process should not held for longer time, but however BTC is allowed. 31-jul-09 SPOOL PROCESSING User request - DIA - (Tables TBT*) BTC---- (TST01, TST03)--SPOOL -- PRINT User request - DIA-- (TST01, TST03) --- SPOOL ------ PRINT 71 PROCESS/ 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 which is defined by the parameter rspo/store_location=G or DB (G Means Global Directory \usr\sap\SID\sys\global) (DB Means - Database tables TST01 and TST03) Note: DIALOGUE BTC - Multiplexing - Single Process The Advantages of TEMSE. TEMSE size is 99000 Refer: SU22 - (s_spo_act) - To identify the tcode/ Authorization objects SP01 SU24 The Temse can be stored in database or OS level. Temse remains in the DB/OS unless they are deleted 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 Global directory 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 size increases the search at file level consumes more time as (No indexes at file system) 72 3. 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 at file system. DB [DB] 1. Consumes more time than Temse at OS when there are less no of records. but shows the performance 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 DIALOGUE - [TST01, TST02] - Spool Process OUT PUT REQUEST FRONT END > Spool process comes at our Desktop Default setting is DB RZ11 : rspo_location : rdisp/ btctime 3. The Spool process reads from TST01 and TST03 i.e. the name of the author (USER), Name of the Printer, No of copies are procured from TST01 and Printable data from TST03 73 Spool Process formats or converts spool requests to output requests i.e. Printer specific format. If the format is performed locally then it is said to be LAN (Local Access Method). If it is performed remotely 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 processes PROGRAM[ RSPO1041] to maintain TEMSE. Refer: From SE12 TPFYPROPTY Flag for changes Obj_name = parameter Rdisp/time Type T denotes Dynamic X - Whether Changeable or not. 01-Aug-09 SAP System Note: We should not touch the Repository data of name space 'A' to 'X'. SE11 > table name : /* (/ is a customer name space) 74 TADIR is the repository TSTC - Is the T-Codes with the program name. Market place > keys & Reqs > Development Name space. Note: STMS > System > Transport Tool no_import_all = 0 (No Mass Transportation) SPOOL MECHANISM Dialogue - BTC - TBTC* - TS* Tables Dialogue --------------------- TS* Tables Spool process reads from TEMSE and convert spool requests to the output requests (Printer specific requests). SPOOL ADMINISTRATION TCODE - SPAD LPD - Line Print Demon Drivers are specific to O/S and not to SAP 1. It is used to define output devices/ Spool servers and access methods Defining a Spool Server: The instance with atleast one spool process is referred as spool server. It is also referred as Real spool server. (Existing) Logical Spool Server. This is not existing but pointed to a Real spool/ another logical spool server. This is used for load balancing the spools. 75 Note: We can set up a dedicated instance for spool process. CONFIGURING THE OUT PUT DEVICE. 1. Execute SPAD 2. Click on the Spool Server - Display then Change 3. Click on create Server Name: LOGICAL SP1 Server Class : Mass Printing Logical Server: Mapping : willsys28_00 Alt server: ...................... 76 DEFINING OUTPUT DEVICE/ PRINTER 1. Execute SPAD 2. Click on output device 3. Click on display 4. Click on change 5. Click on create 6. Specify the Output device name Specify the description : Local Printer 7. Device type: HP Model & Manufacturer 77 Device type specifies that the output device is recognized by SAP. If there is no device type available then select SAPWIN. If required write to SAP and try to get the device type. SAP sends programs in terms of Patches. SPAD > Utilities > For device types > Import If the character set is required. Device Class: (Standard, Fax, Telex etc) Authorization Group : Specifies the access control methods Model: 2200 Location : 5th floor A wing... Message : Only used by Pay Roll. -------------------Note: Dialogue --- TEMSE -- Author, Printer, Number of copies When printer is defined Spool server (LS/ RS) is assigned In order to print we need the spool process from the assigned instance to convert the spool request in to the output request. Spool process uses Access Methods to format the request. (either Local, Front End, Print server...) 78 --------------------02-Aug-09 ACCESS METHODS It specifies the process of formatting the spool request to printer specific output request. LOCAL ACCESS METHOD The spool work process and the host spool resides in the same machine i.e. the work process transfers the spool request to the spool system locally. Select L Select C for UNIX based system (Local Print Method) for Windows (which uses direct operating system call) Select F for FRONT END printing Spool work process goes to the user desktop and format the request based on the printer that is connected 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 in the 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 = 2 i.e. two work processes can be used for front end printing. If this parameter is not used spool congestion occurs. Specify I for Achieving device (Optical Devices, HSM, Jukebox (stores each copy (output doc)) Hierarchal storage machine 79 REMOTE 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 (Print server) using Berkeley protocol. Specify S for windows operating system. It will transfer the formatting to remote system using SAP specific protocol SAPLPD For LOCAL & REMOTE For FRONT END > Needs the printer models > SAPWIN When Remote access method is specified we need the following HOST 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. 80 SPOOL MONITORING SP01; SP02 The spool requests are monitored in SP01. users can monitor the requests using SP02. Spool Requests (Stores in Temse) Output Requests Note: Put a check mark [ ] Do not query host spooler for output requests. If this option is checked, It improves performance. If we need the exact status then uncheck the box. Output Attributes: Depends upon the company requirements. Tray info is also similar. ----The Major advantage of TEMSE is the documents can be displayed even before it is printed. SP01 is used to monitor the spool requests based on statuses. 1. Status '- Minus' : Indicates not yet sent to the host system (No output requests exist) The spool process is busy/ congested, if too many requests with this Status indicates need for increasing spool WP. 2. Status '+' : Spool request is being generated (Stored in Spool system) 3. Waiting : Waiting for processing by spool 4. In Process : The spool WP is formatting the output for printing 5. Printing : The host spool is printing the output request. If the SAP spool system does not receive any status information from the host spool, this status displayed for approximately one minute. The system then sets the status to Complete (Competed or Error) 6. Completed : The output request printed successfully. In systems where the spool system does not receive any information about the host 81 spool , the system changes to complete as soon as the output request is sent to the host spool. 7. Error : It indicates a server error such as network error. The requests have not printed and remain in the spool system until they are deleted or until they reach their expiration date and are deleted during a reorganization. 1. Printer issues like (Page setting issues, cartridge issues, printer not available) paper out, print server not available) these printer specific issues will be resolved by Network Team/ Print Team. 2. User complain that they could not print documents to a specific printer. - Check the availability of the printer, if required we can change the printer and reprint the document. From SP01 --- Select the request -- Use Menu "Spool Request and print directly" or select print with changed parameters. While changing the parameter we can set the priority between 1 - 10 (1 as High) 3. Spool request cannot be generated - The TEMSE is full i.e. TEMSE will be full when it reaches 99,000 requests and log is generated in SM21 (System Log) - We need to reorganize the spool requests using the SAP standard reports. (RSPO1041, RSPO1043, RSPO0041, RSPO0043). These are used to delete the old spool requests based on selection criteria. In general the spool requests which are older than 14 days will be deleted if standard jobs are scheduled in SM36 they also checks the consistency of TEMSE periodically. - We can also use SPAD for reorganization of spool (but the logic is same) For this Execute - SPAD > Full ADMIN > ADMIN > Delete old spool requests Or from SA38 execute the program - RSPO0041 ----------Refer SM01 - Transaction Codes [Lock/ Unlock] 82 ---------SP12 - SPOOL TEMSE ADMINISTRATION It is used to monitor the memory allocated for TEMSE Note: If we need to forward a spool request select the request in SP01 and forward it to another user where user can print from alternative printer. SP01 : Spool request > Forward > (Client to client) Recipient : DDIC Use SBWP (SAP business work place) to display the request in inbox. PRINT QUEUES Note: Should have enough spool work process to format the requests to printer specific requests. Similarly we should have enough output devices to avoid the print queues. SETTING DEFAULT PRINTER From SU01 we can specify default printer to the user but do not check the box "delete the request after output immediately" which improves the spool performance. The printer can be locked during maintenance in SPAD To process the requests sequentially based on serial numbers Select the option -- [ ] print sequentially in SPAD from OP devices attributes tab. Print sequentially consumes time to print in the order. If this is unchecked it prints faster but sequence is not maintained. 03-Aug-09 83 Dialogue 2 Min / Instance 75 - 150 MB 5 - 10 Users (Refer ST07) Handles request Interactively Multiplexing Rdisp/max_wp_runtime = 600 SM50/ SM66 wp_no_dia DPMON It initiates update, BTC, spool, Message server and enqueue BTC Expensive, long running, time consuming No time limit Off peak time Scheduled to run periodically using variants Statuses (Scheduled, Released, ready, active, finished, cancelled) Job step Program (SA38), OSCommands (SM49, SM69), External Programs (on Tar. Systems) TBTC* tables Standard background jobs Pause(rdisp/btctime, wp_no_btc=0, btctrans1) Atleast 2 for the entire system SM36; SM37 Operation modes (RZ04, SM63) RSCOLL - gathers performance into ST03 BTC communicates with enqueue for locking and spool for print. GATEWAY WORK PROCESS SMGW SMGW is used to monitor the gateway process. Gateway is used to communicate between SAP and NON-SAP systems. There will be only 1 gateway/ instance. If required we can also install a standalone gateway on a JAVA engine. Gateway listens on port '3300'+instance number (3300, 3301,3302 where 01, 02 are the instances). Gateway provides an interface so that the external system can communicate with SAP system on the specified port. 84 When RFC's are defined between the systems they use SAP gateway when (ALE, EDI, IDOC are transferring they use gateway) INSTANCE MANAGEMENT Instance is managed by using profiles. Profiles will resides in (usr/sap/<SID>/sys/profiles) There are three types of Profiles 1. Default 2. Startup 3. Instance Profile As part of post installation we import the profiles of Active servers from RZ10. The profiles resides at OS level in the directory (usr\sap\<SID>\sys\profile). They can be managed/ edited using a notepad. But the consistency is not checked (say for eg. if we modify the instance profile WP DIA=2000 and there is no error message and versions are not maintained under OS level) DEV_DVEBMGS00_willsysdel. So these profiles are imported into database management for consistency check and version management. Startup Profile Startup profile consists of startup parameters like Starting Database Starting Message Server Dispatcher + Work. Do not modify these parameter under any circumstances on OS level. Default Profile It is used to provide global parameters for all the instances, buffer parameters, security parameters (Password, User restrictions), Message server host, enqueue host) Instance Profile This is specific to instance configuration such as work process, timeout parameters etc. Starting Sequence 85 1. Startup profile is read by the system to start the engine by starting database, message server and dispatcher in Central Instance. 2. Startup profile is read by the system to start the engine by starting (DISP+WORK) on dialogue instance. 3. There will be only one default profile in the entire system which provides global values. 4. Instance specific profile - This is used to set the instance specific parameters. Eg. How many profiles are available on a system with 10 Dialogue instances. Total = 11 (including Central Instance) 11 X 2 per instance (Start + Instance) 22 22 + 1 (Default Instance) = 23 PROFILE MANAGEMENT Documentation for profiles are available in RZ10 Profiles resides in the table - TPFYPROPTY RZ11 is also used to change some parameters dynamically without restarting the system but they will be reset once the system is restarted. RZ10 changes are permanent The field type 'T' Specifies the dynamic parameters. RZ10 There are three types of Administration. 86 1. Administration data No need to maintain using this option. It only specifies the path of the parameters. 2. Basic Maintenance: It is used to maintain the profile parameters without any technical names. GUI based using mouse 87 3. Extended Maintenance Used by administrator using parameter names Specify the input by including new parameters or modify the existing one. Copy > Save and Activate the profile. The profile changes are updated at OS level and the existing profile is marked as .BAK and a new profile is created in the profile directory. It will effect only after restarting the Server. Profiles are changed on SAP recommendation or based on experience. Do not change any of the profiles on trail and error method. System will hang and may not restart. 04-Aug-09 LOGON LOAD BALANCING SMLG ST07 - Application Monitor: User Distribution SMLG - Logon groups sapmsg.ini 88 Logon Load Balancing SMLG It is used to route the requests to the least loaded instance of that group. Factors to define LLB. Identify the components along with users. If the users are logging to different instances the buffers are scattered therefore they are not effectively used. So for this * Note: DDLOG is the synchronization table User A A+B =50 User B A+B =75 Buffer Synchronization 1. Buffers are optimally utilized. 2. Load balancing to avoid long queues 3. Fail over (Logical) (As we are configuring logical system) Load balancing provides the following logon groups which are defined in SMLG. SMLG > Define the groups and assign the instances. Mechanism 1. User uses SAP GUI -groups option to login 2. Saplogon.ini is used to display the available entries 3. User select group and click on logon. 89 4. When the user select group. It looks for sapmsg.ini to identify the message server and etc/services for message server port. saproute.ini, saprfc.ini, sapdoccd.ini (For library), saplogon.ini 5. Message server communicates will all the dispatchers and identifies the least loaded server and mark it as a favorite server in SMLG. The request is routed to the favorite server. 6. The dispatcher process the request normally. Sapmsg.ini ---- IP Address --- Hostname of the message server Central instance (but not always) DATA TRANSFER TECHNIQUES During the implementation of the legacy system needs to be preserved or used in the current system. Example: A customer/ company is running business for the past 30 Years. He is maintaining customer details, vendor details, supplier details, employees and salaries, account payables, account receivables and P&L (Profit and Loss). This information is required by the customer in SAP System. So there is need to transfer the legacy system data to SAP system. Example: Customer implemented SAP but the employees who are old cannot make use of SAP system. They would like to work on the traditional systems. After go live both systems SAP and legacy travel parallely. The data entered in the legacy system i.e. PO's, Invoices, Billing, Shipping are to be transferred periodically(Hourly) bi-hourly(for every 4 hrs) or daily SO --- PO BI ---- INV Example: Reliance, Hero Honda [B2B Company to Dealers] not B2C [Distributers to customers] they communicate with dealers, suppliers, using SAP. But dealers and suppliers use non-SAP system so it is required to establish communication between SAP and NON SAP systems and perform the data transfer periodically. ETL - Extract - Transfer - Load SAP Hero Honda XML Non SAP Dealers RFC: REMOTE FUNCTION CALL SM59 RFC is used to communicate between SAP systems and SAP to Non-SAP systems using TCP/IP protocol. RFC's are defined in [SM59]. There are 4 types of RFC's 90 1. Asynchronous RFC 2. Synchronous RFC 3. Transactional RFC 4. Queue RFC 1. Asynchronous RFC - (Like a post card). The sending system may or may not receive it. i.e. there is no acknowledgement from the receiving . The transmission is not reliable. 2. Synchronous RFC - It is not like ARFC. It gets an acknowledgement from the target system. (like a register post). If the receiving system is not available the process goes into RFC/ CPIC/ Sleep mode and waits until it is wakened by the target system. Target system/ Receiving system may be busy i.e. all the resources are used up. This is reliable but time consuming and expensive (Client Copy) the job should get finished. Note: SAP uses CPIC protocol SAP specific (Common Programming Interface for Communication) to communicate between system. Berkley UNIX PRINTER CPIC SRFC 3. Transactional RFC - TRFC - It is an advanced version of ARFC and SRFC. The request goes to receiving system if it is not handled a Transaction ID is generated by the source system. A program RSARFCSE is scheduled in the background to run for every 60 seconds. Transaction SM58 is used for Transactional RFC. It is used to document all the transactional ID's and ensure that they are received by the recipient system. This is consistence and reliable. Example : Central user administration. A user is created in the parent client and transferred to the child client when they are available? 4. Queued RFC - It is an advanced version of TRF and ensures that the transaction is committed based on FIFO/ Queue. It ensures transaction consistency of LUW and reliability of data transmission. SMQ1 - to monitor the outbound queues of a sending system refer SCOTT for FAX... SMQ2 - Provides interface to monitor Inbound queues. 91 05-Aug-09 DEFINING SYSTEMS - SALE SAP systems consists of more than one client - technically 1000 client can be created in one system. So we need to identify which client is the business client. Preciously SAP is client based (A mandatory field while login) Each client is defined with a logical system name that is defined in SALE. (Sap System linking and enabling). Each system is identified by SID, client by 3 digit number. So, Logical system number should be <SID>CLNT<CLNT_Number> Eg. DEVCLNT900 To identify the systems easily by name 1. Goto > SALE > Basic Settings > Logical System 2. Define Logical System (<SID>CLNT009) 3. Assign logical system to the client. There should be unique SID in the Landscape. Defining RFC Connection - SM59 1. SM59 - Provide the name of the logical system 2. Select the connection type '3' 3. Description about the connection 4. Technical settings (Host name and Instance No) 5. Logon Security (Client, UID, PWD, Logon Language) 6. Save the connection, Test Connection, Remote logon Perform three times to add 3 systems. Central User Administration SCUA Goto > BD64 or SALE > To define the sending systems and receiving systems Or Use the SAP standard moral for that application. Example: To configure central user administration SCUA Tcode is used. From 000/ Sapuser Execute SCUA / - model : willsys > Create (The logged in system is treated as Sending system) We need to define recipient/ receiving systems 92 DEVCLNT001 DEVCLNT000 DELCLNT001 save to configure CUA Goto back end systems Try to execute SU01 and create an user .. It wont allows us to create because the receiving systems will become a Child system. SCUM is performed only in the Parent System Eg: Consider a Scenario - Being in parent create an user assigning profile SAP_ALL - define systems and SAVE - Stop the other systems - Execute SM58 (Transactional RFC) Users are distributed to the child client using TRFC(SM58) and if the client system is not Available the record hangs in SM58 and ensure that is updated in the child client. To delete : Execute report : RSDELCUA or SCUA select the client and delete. EDI - Electronic Data Interchange It is used to communicate between SAP to NON-SAP systems. ALE - SAP to SAP only. IDOCS (Intermediate Documents) are used to transfer the data. It will be in the Understandable format of both sending and receiving systems. SAP - NON SAP. WE05 is the Tcode to monitor the IDOCS SCUL to check the logs WE05 > Status 93 0 to 49 50 52 53 02 07 - are the outbound IDOCS and above are the inbound IDOCS - States that the application document not posted fully. - states that the document is posted - states that there is error in the port - states there is a syntax error. Tcode IDOC to check the consistency WE21 to identify the ports for IDOC processing. SYSTEM MONITORING Gateway is a port that listens on 3300. It is used to monitor the health of systems in terms of storage, memory and CPU technically. 06-Aug-09 Status (Killed, Ended, Free... Instance is down) But on SAP front we need to monitor the process utilization, pending updates, dead locks, system logs, database logs, system dumps, btc failures, RFC failures, Failed spool requests, work load on the system (Users, Reports, Transactions, Programs) PROCESS MONITORING SM50 (INSTANCE)/ SM66 (GLOBAL) 94 Monitor the instance specific processes in SM50 and Global Specific Process overview based on status in SM66. Monitor the processes with status(reasons) running, hold, stopped, sleep, RFC/ CPIC, PRIV. Identify the user, time, client, Action. If BTC is running for longer times check whether it is permissible as per the process document. Dialogue process should not consume more than 1-2 seconds for normal tasks. It will be automatically down (Killed) by system in 600 Seconds. If it is not killed the process might be occupied by dedicated resource and uses heap memory with status PRIV. The process has to complete the job or Heap Memory should exhaust, so that process comes out. We may need to kill the processes with status PRIV using DPMON, Task Manager or Kill -9 Command on UNIX. If more number goes into PRIV we may need to restart the instance. Refer : select MANDT, Count(*) as Total from DEV.USR02 group by MANDT. Note : Rdisp/gui_auto_logout = 900 sec ---- Example --User pwd forgotten and all the users are locked if SAP* is deleted. It will be created with Password pass. Do not change the status of users in the USR02 Table. Select MANDT, BNAME, UGLAG from USR02 128 - Self Locked 64 Administrator Lock never becomes 0 ------------------Refer SM12 SM13 SM14 SM36 SM37 SM21 ST22 RZ04 SM63 SP01 - Select Lock Entries - Update requests - Update program Administration (Deactivate) - To define the Back ground Job - JOB monitor - System Log - ABAP Dumps/ Runtime Error - Maintain Operation Modes - Display/ Maintain Operation Mode Set - Output controller - Spool Standard Jobs - RSBTCDEL - Deletes the batch job logs 95 - RSSNAPDL - Delete Old ABAP Dumps - RSPO1041 - Delete Old spool logs and files - RSMO13002- Delete old update request logs - RSCOLL00 - Collects performance info in Transaction ST03 - RSPO1043 - Spool Reorganization. DPMON - When the user could not login to the system (Experience Hour glass) Process the list @ OS Level DPMON K Provide SR. Number Provide PID. SM59 - RFC Destination SM50 - Process Overview SM51 - Active SAP Servers SM66 - Global Work Process overview WE05 - IDOC List SMQ1 - QRFC (outbound) queue SMQ2 - QRFC (Inbound) queue SM04 - User List. 07-Aug-09 Market Place > SAP Support Portal > Suserid> >Downloads > Installation Upgrades > My Company Components SAP Solution Manager 7.0 Installation Exports [1 of 4 ] Kernel, Java Components > Add to download Basket Paste in <SID>\sys\exe\UC | Install the download manager SYSTEM MONITORING Each customer provides a standard check list to monitor their systems from time to time. Eg: BSI (British Standard Institute) requests the consultants to monitor the system on hourly basis. 96 P&G requests their production systems to be monitored periodically for every 8 Hrs. Check lists contains the following 1. Identify the instances which are down i.e. SM51 to list the servers and monitor the instances which are up and running. If any instance is down, we need to report with high priority. 2. Analyse the reason for failure (Check if the system is scheduled for downtime) If we are authorized start the instance and if it could not be started then look into work directory for logs. SM50 identifies the process which are long running. ---IMPORT ABAP : c:\prog files\sapinst_instdir\erp\system\ora\central\as Err, Ok, exe. ---08-Aug-09 TRANSPORT GROUPS Note: usr\sap\trans can be on JOD, JOQ, JOP or on separate disk. Transport Groups with individual transport directories. Security On JOD > 97 Perform SICK SE06 > Standard Installation - Perform Post Installation DICO STMS From Menu Overview > Systems Extras > Delete TMS configuration or execute DICO 1. Login to DC (Domain Controller) Development System/ 000 client with user like DDIC 2. Execute STMS > Will prompt to create a transport Domain. Domain name will be Domain<SID> Save the Domain. 3. Login to Quality system Execute STMS > As DC is already created from the above step. We need to include systems in the DC. Select Icon > Other Configuration [][] Include System in Domain Pops up DC Host/ Target Host : JOMLERTDEV DC Sys No/ System No: 00 SAVE Upon saving the request from quality system is sent to DC to include in the domain. 4. Similarly perform the to include production into DC 5. Login to the DC 6. From DC From Menu Overview > Systems JOD JOQ JOP Select the system JOP from SAP System Menu > Click on approve. Select the system JOQ and click on Approve from Menu SAP System > Approve 98 TRANSPORT GROUP If each system has their own transport group i.e. they maintain transport groups themselves i.e. 3 - Transport directories are configured. Double Click on the system JOD from Communication Tab From Transport Group Tab change mode Provide Name : Group_JOD Perform the same for JOQ. SAVE. 7. Defining the Landscape From the DC/ 000/ DDIC > Goto STMS Click on the icon transport routes Click on change Menu - Configuration > Standard configuration > Three systems in group. > Continue > SAVE Three system configuration - Say YES Note: In principle there will be only one client in the production system. JOQ --- 2 Clients [Test, Training] - UNIT TEST JOP ---- 1 Client JOD---- 2 Clients [DEV and Customizing, UNIT Testing] SYSTEM MONITORING SM51 SM50/ SM66 SM13 SM14 SM37 SP01 99 SM04/ AL08 : Used to identify the number of users logged on to the instance. Identify the users who are consuming more memory and also identify the transactions and identify why it is consuming more time. This TCODE is also used to logoff the user session if required. AL08 SM04 SM21: System logs specific to the instance. We can also identify the logs of other instances. System log > Remote system It is used to display the logs for the following activities. 100 1. System Startup/ Work process log 2. All ABAP dumps are documented 3. When we delete SM12 the locks are logged. 4. All the database related errors like Space issues, Segment Management, Archive Stuck. 5. Illegal attempts and user locks 6. Session Termination due to network failures. As a part of monitoring we need to identify the messages with color red. 7. Time out errors Identify the error message from the log and search in the market place. 8. It displays the logs based on date/time, user, t-code & problem class. ST22 ABAP DUMPS When ever a SAP Program (ABAP program) could not be executed due to an error it will be thrown out from the GUI- Screen and a dump is recorded in ST22. ST22 recovers the following 1. Divide Error 1/0 2. Update (Lags in Memory) 3. Infinite Loops. 101 1. TIME_OUT error: The rdisp/max_wprun_time program requires more time than the time defined in 2. Memory related issues with error message PXA, SWAP, PAGE, OUT OF MEMORY. This error requires memory corrections to the parameters. 3. Program Corrections: The problem is with SAP standard program for which SAP provides a correction through notes (The correction can be applied through SNOTE) 4. Customer defined programs ('Y', 'Z') consumes more memory, endless loops, improper select statements etc. The program need to be corrected by the developer. 5. Enqueue Table Overflow: SM12 6. Update Deactivation : SM14 7. Database issues like table space over flow, max-extents reached, archive stuck. 8. Illegal time: (Day light savings) - During day light savings the system date and time has to be changed. Stop the AS and change the date if not, the above error occurs. Note TSTC - Holds the transaction and the Program name TSTCT - Holds the description/ text of a T-Code. 09-Aug-09 PERFORMANCE TUNING ST02 102 This complete journey should be completed within 600 Milli seconds on an average or goes up to 600 Seconds Max. 1. Front End Time/ GUI Time : Time taken by the user to reach the dispatcher is called as Front end time. The GUI time should not exceed more than 200 M.Sec. If it exceeds this consider the following. 1. User desktop is slow 2. If this is same with all the users, network might be congested. 3. The user request is expensive (FI and basis will logon to the central instance. Rest of all the users are allowed to login to Dialogue instance) Note: GUI response time is not considered as a part of the Dialogue response time because the request is not received by the dispatcher. 2. Wait Time: The amount of time the user request sits in the queue. Generally it should not be more than 50 M.Sec or 10% of the response time. If the time exceeds, consider the following. 1. The work process are not sufficient to handle the user requests. (1:5) 2. There are sufficient processes but the existing process are held with expensive request. Login/disable_multi_gui_login. 3. Roll in Time: The work process copies the Roll in User context into WP task handler. The time taken by the work process to copy the context (Roll In) is referred as Roll in time. Generally it should not be more than 50 M.Sec. If it is more than this consider the following. 1. The user context is heavy to Roll in (User might having more authorizations, parameters) 103 2. Minimize the authorizations. 4. Roll Out Time: The time taken by the work process to copy the information from its local memory to Roll Area/ Roll File/ User context/ Roll buffer and it should not be more than 50 M. Sec. 5. Roll Wait Time: During the processing when a dialogue process communicates with RFC's and waiting for the response at this time the user context is copied/ rolled back to BTC ---- RFC --- Target system. Roll wait time Sleep Note: Roll wait time is not considered as a part of response time. If the roll wait time increases consider there is a bottle next on the RFC communication. 6. Processing Time: The time taken by the work process to process the user request using interpreters. The processing time should not be more than 200 M.Sec. If the processing time is more we can consider either ABAP program is expensive, screen is expensive or SQL statements are expensive. 7. CPU Time: When the request are processed using interpreters an amount of CPU is utilized to process the request using CPU resources is referred as CPU time. As CPU time is included in processing time it is not calculated in the response time. CPU time should not be more than (40% of the Dialogue response time - Wait time). If CPU time is more consider tuning ABAP Programs Refer to ABAP development team (Also Refer SE30 ABAP Run time Analysis, ST05 Performance Analysis) 8. LG Time: Load and Generation Time: Time required to load the objects such as source code, GUI info, screen info from the database and generate these objects. (Refer LC10 : Live Cache). It should not be more than 200 M.Sec. Run SGEN tcode after patch application, upgrade, new installation or when there is a mass change in the programs. 9. Enqueue Time: The time taken by the process to communicate with enqueue for obtaining the lock while updating a record is referred as Enqueue time. Enqueue time should be 5 M.Sec. on a Central instance and 100 M.Sec on a Dialogue instance. If it exceeds more than this time we can consider that the enqueues are not sufficient or Enqueue table overflow. or WP waiting for a lock. 10. RFC or CPIC Time: The time taken by the process to communicate with external interfaces is referred as RFC time. It should be as minimal as possible. (Communication between any BW/ CRM/ SCM system). There wont be any threshold value as it depends on External system. 104 11. Database Time: The time taken by the process to reach the database and process the request. Generally it should not be more than 40% of (Response time - Wait time). It is similar to the CPU time. IF DB Time is more consider the following. 1. The DB statistics job is not scheduled in DB13. 2. The DB resources are stake(CPU and Memory Utilization) i.e. Resource bottle neck on DB. 3. The DB Buffers are not sufficient. 4. Missing indexes in DB02. 12. Dialogue Response time: The time taken by the Dialogue process to process the request which includes [Wait time ........ To ......... Roll Out Time] [Wait time + RI + RO + PI +LG + RFC + DB +ENT] Note: Team Viewer is the Remote Desktop support Software BOMGAR. Ф Indicates - Average Time # Indicates - Total Time 10-Aug-09 WORK LOAD ANALYSIS ST03 ST03 It is used to calculate the work load analysis. Select Expert Mode to identify the expensive programs, transactions, reports and users. While calculating the average consider the number of dialogue steps of the transaction user. If the response time is more and dialogue steps of fewer 1 or 2 then the average response time could not be worked out. The response time should be worked out only when there are atleast 10,000 dialogue steps. MEMORY Physical Memory: The memory that is available or the memory that is configured on the instance using the parameter PHYS_MEMSIZE. * PHYS_MEMSIZE: This parameter restricts the usage of memory by that instance. Virtual Memory: The physical memory and SWAP memory/ Pagging Memory on the disk The physical memory will not be sufficient to provide the users for temporary work area/ Calculations/ so a part of the disk which is configured for SWAP is used. 105 On UNIX during installation assign atleast 20GB of SWAP. On windows assign atleast 3*RAM size/ 20 GB which ever is higher. Shared Memory: The memory that is used by all the applications (OS, DB, R/3) Extended Memory: The memory that is used by SAP work processes is referred as Extended Memory. Local Memory: The memory that is assigned to work process is referred as Local Memory Roll Memory/ Roll Buffer: The memory that is used by work process to store the user context information is referred as Roll memory. Private/ Heap Memory: The memory that is used by work process exclusively by restricting itself. MEMORY ALLOCATION 1. User submits the request. 2. Dispatcher assigns the WP 3. WP requires memory to Roll -In the user context. 4. WP gets memory from local memory which is defined in the parameter ztta/roll_area. It gets only a part of it which is defined by parameter ztta/roll_first (20KB) 5. If the allocated memory is not sufficient then it gets allocated from Extended memory ztta/roll_extension. 6. If that is also not sufficient then it uses the remaining ROLL Area. 7. If that is also not sufficient then it uses HEAP/ PRIVATE Memory and the WP goes into PRIVATE Mode. 8. Heap memory is defined by the parameter Abap/heaplimit=4GB Abap/heap_area_dia Transaction ST02 provides the memory utilization 9. Each dialogue uses abap/heap_area_dia and non dia uses abap/heap_area_nondia both process should not exceed abap/heap_area_total. Memory : RAM is the first Memory. Out of this we don't want to allow SAP to utilize the whole memory. Virtual Memory: Pagefile.sys 11-Aug-09 106 User ---> Dispatcher ---> WP ---> Rolls Its Memory Requires Memory to Roll In to the Task Handler Ztta/roll_first - 20KB Extended Memory is used by all the Work Processes. 20 KB ztta/roll_first through ztta/roll_area Extended Memory ztta/roll_extension : 512 MB Come back to local Memory If all the memory is consumed it cant come back so goes to the Heap/ Private Memory. CASE STUDY We have configured 20 WP in the Instance and we know pretty well that each user request consumes a minimum of 25MB of Memory WP 1 2 . . 8 9 MEMORY Roll_first 20KB 20KB 4GB Roll_extn 512MB 512MB 20KB 0MB STATUS Roll_Area 19.980MB 19.980MB 8GB Heap 2GB 2GB 19.980MB 5MB PRIV PRIV PRIV 107 Rdisp/max_priv_time When the process uses Heap Memory it is used in Heap/ Private mode. The processes which are in PRIV Mode cannot be timed out by Rdisp/max_wprun_time Rdisp/max_priv_time So configure so that the process is timed out after this time (600 Seconds/ 10 Minutes) when the work process goes into PRIV mode it will not listen to rdisp/max_wprun_time=600sec. It will be released only after the task completion or Memory is exhausted(Abap/heap_area_dia)/ timed out by rdisp/max_priv_time. This situation is referred as Hour Glass Mode or WP Congestion. At this situation we can use DPMON or SM04 to terminate the user session. If not kill the process at OS level based on PID. Q. The user complains that he could not login to the system - Hour Glass Mode? A. 1. WP into PRIV Mode 2. ARCHIVE STUCK (The user could not update any record and results in hour glass mode) BUFFERS ST02 The frequently used content and less frequently modified is eligible for buffering. Company Name, GUI, screens, calendars, table definitions, programs etc are eligible for buffering. Data such as Exchange Rates, Transactional Data(PO, Sales Order, Invoice, Billing) are not eligible for buffering. Buffering is specific to instance. Each buffered element is stored in the memory of the instance in terms of Directories and Space. Eg. Programs can be stored up to 150000 KB, 150 MB in 37,500 directories. If the directories/ size is full then Buffer Swaps occurs in ST02. When SWAP occurs the content needs to be fetched again from Database which increases the response time. 12-Aug-09 108 RAISING A REQUEST TO SAP FOR A SAP ROUTER From the Market Place www.service.sap.com > click on SAP Support Portal. > From Help and Support Tab > click on Report a Product Error From Here Provide Customer : Installation : System ID : Company Name JOD Next > Search Term : SAP Router Or Go with Message Select the system & select the component Raise a request as follows: Dear SAP, We have installed solution manager and 3 ERP systems in the landscape. Before we start implementation we would like to establish connecting with SAP using SAP Router. Name of the Server : JOMLSOLMAN IP Address : 213.210.213.197 (This is where our SAPRouter is going to be configured) We are using dedicated public IP Address SID INSTANCE NO : JOS : 00 Please send us certificate details. { Open the connectivity, How many hours it needs to be opened; Provide Userid and password/ Client } Provide your name R. Shunmugam Phone No: Hit SEND Note: from Market Place > My Profile > Maintain Single Sign on Certificate > Specify Password. 109 From Market place > Check the email. SAP : 213.210.213.197 JOLSOLMAN 194.39.131.34 ---------------Earlier from the Back End system say for eg: SOLMAN system 001/ DDIC > Login to the SOLMAN system Discontinued from 2006 TCODE > OSS1 (Online SAP Service) From Menu Parameter > Technical Settings Hit Change SAPRouter at SAP Note: Instance 98 ( Is for SOLMAN Diagnostic Tool), 99(SAP Router) All kind of services can be acquired from OSS1 Over the web using DIAG protocol. (It is discontinued) ---------------4 systems in the landscape SAP Router is a software program which is used to restrict to access the customer systems using the table SAPROUTTAB. SAPROUTTAB is a text file with out any extension in the router directory with prefix P, D and S (Permit, Deny and Secure sometimes) STEPS TO CONFIGURE SAP ROUTER 1. Create a directory with name saprouter in usr\ sap\directory. usr\sap\saprouter Ensure that the folder has full (Read + Write permissions) 110 Note SAPRouter is an executable in the kernel directory (usr\sap\SID\sys\exe\uc\NTi386). Nipping is an executable to ping to the router. This two executables needs to be copied to the router directory. However we can also download from market place. On Windows> Check whether the SAPRouter service is running or not to make sure whether the SAPRouter is already configured or not. 2. From Market Place > My Company App Components Look for SAPROUTER700 Windows server X64 Click on Add to download basket. 3. Login as <SID>ADM 4. Create a sub directory E:\usr\sap\saprouter 5. From Command Prompt Change directory to trans as it is holding the downloaded files E:\usr\sap\trans> sapcar -xvf saprouter_12_100004305.sar 6. copy the two uncared files in to the saprouter directory. 7. From market place click on Download Area > SAP Cryptographic Software .sar file. It depends on OS We can download either CAR or SAR file 111 Paste the file in usr\sap\saprouter sapcar -xvf 90000114.car ----------Note: Download Manager > Configuration > SUSERID and PWD ----------- 8. Create a service called SAPRouter service. From Command Prompt > Saprouter> ntscmgr install SAPRouter -b E:\usr\sap\saprouter\saprouter.exe - p "JOSADM" It will create a service. JOS is the SID 9. Define a file SAPROUTTAB Create a file SAPROUTTAB in the saprouter dir with out any extension 10. SNC (Secured Network Connection Needs to be added) For this Goto > www.service.sap.com/SAPROUTER-SNCADD Apply Copy [ Shows the Distinguished Name] > Hit Continue 11. Define the Environment Variable. My Comp > Properties > Advanced> Variable : SECUDIR Path: E:\usr\sap\saprouter Variable :SNC_LIB Path: E:\sur\sap\saprouter\nt-X86_64\sapcrypto.dll Sapcrypt.dll to encrypt and decrypt the messages. 12. Generating certificate from Customers End (SOLMAN System) Use the command Sapgenpse.exe will be in nt-X86_64 so goto 112 Saprouter> CD nt-X86_64 Saprouter\nt-X86_64> sapgenpse get_pse -v -r certreq -p local.pse "Paste the distinguished name" Prompts for PIN : any password Twice Sapgenpse - SAP Generic Personal Security Encryption 13. Work file certreq in \nt-X86_64 Open with notepad And copy from BEGIN to END Paste in the STEP 10 in the text box and hit Continue Click on request certificate It generates a text with BEGIN to END. Now copy from BEGIN to END from SAP that site/ Screen Paste it in a notepad file(without extension) with file name srcert in the folder nt-X86_64 14. Importing the Certificate Nt-X86_64> sapgenpse import_own_cert -c srcert -p local.pse 15. being in nt-X86_64 > sapgenpse seclogin -p local.pse -o JOSADM Will create a file cred_v2 16. SAPROUTTAB > open with notepad > copy the whole content (from already configured system) > provide> SAP IP > Our IP. 17. TO check the Distinguished name Sapgenpse get_my_name -v -n issuer 18. Router as Service Services.msc > saprouter From Logon Tab Select This Account : JOSADM Apply -------------------------------------------To Uninstall Ntscmgr install saprouter -b E:\......... SAPSR3 - 14 SAPSR2 - 9 113 SAPSR1 - 6 -----------------------------------------19. Execute SM59 SAPOSS > Change IP Address of SAPRouter at Customer Side And also change at SAP Side Router String --------------------------------------Goto Market Place Download service connection Maintain Data > System Data SOLMAN Production System Goto DB Server Hostname > SOLMAN IP Address : 124.12.124.19 OS : NT/ INtel Version : Win2003 DB Release : 9.2.0.8.0 Router String:> H/220.227.194.202/s/3299 Create New Connection RFC Connection Logon Security E1 001 SCO4013677 AISUSER tcode ------------------------------------- 13-Aug-09 SAP ROUTER Theory 1. Maintain our systems in the Market Place 2. SAP able to connect and we need to provide authentication 3. SAP Router provides the authorization and we need to provide the authentication. The password will be visible [ ]. SAP router side will restrict the user. Market place > connect to SAP > R/3 Support > Open connection 114 Take out the access from SCC4, SE38, SA38... SAP Router is an executable which is used to restrict the access to the customer systems over the network. It works like a firewall/ proxy to permit and deny the access to the SAP systems. It needs to be configure before implementation Part of SAP. -------------RMMAIN tcode only in SOLMAN Implementation Road Map > Technical Infrastructure Planning > Order for Remote Connection to SAP Project Preparation Phase. ------------SAP Router 1. Create message to SAP along with your SAP Router [Hostname], IP Address and Customer Number (SAP Router need not to be installed on Solution Manager /DEV/ QAS/ PRD. It can be installed on any desktop, but it is advised to install on SOLMAN system to ensure that it is monitored periodically. Cust Number : When we buy SAP we will be provided with the customer number. .SAR - SAP Archive .CAR - Compressed Archive Kernel comes with .SAR only [Global Host] - DB - Central Instance - Dialogue Instance Usr\sap 2. SAP responds with Distinguished name. 3. Create SAP Router directory and copy the executables from exe\uc\NTi386 or download from the market place. (www.service.sap.com/swdc) copy only SAPCAR.exe, SAPROUTER.exe and NIPPING.exe 4. Download the Cryptography files from Market place related to OS and bit version (Download *.SAR files) 5. Uncar the files into SAPRouter directory 6. sapgenpse......... executable used to generate the personal security environment. SAPROUTETAB is a file (without any extension) used to have ACL (Access Control List) S - Secure; P Permit; D - Deny; K -SNC (Secure network connection) 7. Generate the certificate using distinguished "DN" name with executable SAPGENPSE. 8. Copy and Paste certificate from Begin to End the market place url /Saprouter-SNCADD 115 9. Request a certificate from the market place copy into srcert. 10. Import the certificate into router system using SAPGENPSE 11. Start the router using command saprouter -r -k "DN" 12. Goto SMP ---- Report Error --- Connect to SAP Select the system - Maintain System Data -- Download service connector -- Maintain Router details ------- Start service connector -- Open connection by selecting the service---- Specify no of days and hours. Similarly maintain all the other systems in the landscape. Inform SAP to connect to our systems. 13. On each backend system we need to maintain the RFC details in OSS1 Transaction. It will update SAPOSS RFC Connection. SAPOSS, SAP-OSS, SAPSNOTE are created on communicating with the Market Place. --------------------------------------------ST02 continuation. Used to monitor the buffer swaps on the Application Server/ Instance LRU - Least Recently used. Buffer swaps occurs when there are no sufficient directories or space. When more swaps occur they are displayed on ST02 in swaps column. Analysis: Identify the buffer areas whose swaps/ Database access are more. BUFFER SWAPS indicate the following 1. No Sufficient space or directories 2. The content is frequently modified 3. Mass transportation of objects 4. The configured buffers are small 5. During the restart and when support packages are applied and when upgrade is performed. Do no take any decisions based on the readings on a specific day. Analysis has to be carried out if there are atleast 10,000 requests. BUFFER HIT RATIO. 116 SAP recommends this value to be around 98% {For every 100 request '2' request goes to database and the remaining should be from the buffers} Key areas that effect the performance are program buffers, table buffers and Table and Field definitions. Change the program buffer using ABAP/ buffer_size to a maximum of 600 MB on 32 bit Machines. Remaining parameters based on SAP recommendation from RZ11. TABLE Buffering SAP stores the content in tables (Every data except start and stop logs is stored in DATABASE, no prog/ no data is available in the file system) There are four types of Buffering 1. FULL Buffering 2. Generic Buffering 3. Single Record Buffering 4. No Buffering This is maintained for each table SE13 refer USR02 Table. 1. Full Buffering: The tables which are frequently used and rarely modified are eligible for buffering. (Also which are small in size) Eg: T000 have all the clients and required to create a client copy. (This is fully buffered) 2. Generic Buffering: Tables which are relatively large, frequently used, rarely modified using a set of keys (Fields) Eg: USR02; T001 Company info 3. Single Record Buffering: The tables which are large in size, frequently used and rarely modified are buffered using a primary key. 4. No Buffering: The tables which are large frequently used, and frequently modified are not eligible for buffering.. VBAK (SALES), EKKO (PURCHASE) BUFFER SYNCHRONIZATION When more than one application server is configured then buffers between different instances may not be synchronized. In order to synchronize buffers set the parameter 117 Rdisp/ buffermode = Send on; exec auto. Rdisp/ buffertime = 60 Sec. Mechanism 1. User1 request to APP1 for update Sales order to Rs. 500 @ 10:00:01 2. User2 request to APP2 for update the same sales order to Rs.550 @ 10:00:20 3. User3 request APP1 for display @ 10:00:40 WP will ask DDLOG table to check for recent update within 60 Sec. (DDLOG is a buffer synchronization table). If there is any change then it will fetch from DB and swap out the buffer. IF there are no updates fetches the same from APP1 Buffer. If the content is requested after 60 Seconds, by that time it will be synchronized between APP1 and APP2. DDLOG is a synchronization between instances and maintain TIMESTAMP Note: DB13, DB02, DB buffer. Refer - All the programs are stored in TADIR, TSTC, T001, EO70, SE01 All the programs is in Uncompiled mode in TADIR table. SGEN - Compiles the programs 14-Aug-09 ST04 DB PERFORMANCE MONITOR - SQL server performance analysis. It is used to display the database buffer hit ratio. It is recommended that it should not be less than 94% i.e. for every hundred reads only 6 should goes to the database. - Database hit ratio comes down below 94% then consider the following. 118 1. Frequent updates on the database 2. DB Buffer size is not sufficient to hold the content fetched from the database. It is calculated by using formulae [ Logical reads - Physical Reads]/ Logical Reads * 100 Logical Reads is the sum of [Physical reads and Buffer Reads] (Buffer Gets/ Reads) FROM ST04 Physical Reads: The reads from the database. If the buffer hit ratio comes down it effects on the DB response time. Ensure that DB Buffers are configured as per the available memory. Some times complete memory will be dedicated to DB Buffers. ST06 OSMONITOR It Fetches the data using service SAPOSCOL and it displays CPU Utilization, Memory Utilization and disk response time. The CPU idle time should not be less than 30% [For Portal up to 80% to 85%] If it is below 30% we can consider the following. 1. The ABAP programs are expensive with multiple conditions and endless loops. 2. The CPU is not sufficient to handle the load because the hardware is not procured as per sizing. Probably the hardware is procured as per sizing but the number of users grown dynamically (300600). In this scenario we advice to deploy additional instances. 3. If the programs are expensive then refer to development team. It also displays the memory installed on the machine, Memory available(Free) along with the SWAP space. Ensure that physical memory free is available to handle the user requests. If not memory bottleneck. It is also used to start and stop SAPOSCOL (during Upgrades) Note: OSCOL brings the operating system information into ST06. If OSCOL is not started ST06 will be blank. 119 We can check TOP CPU utilization for the current in the last 24 Hrs. LAN CHECK BY PING is used to ping to all the systems in the Network/ Landscape. If a user complaints that he could not connect to the server (Ping to the desktop) 120 Click on Presentation Server ST07 Used to identify whether the system is optimally designed or not. Say for Eg: from the below screen. Users are 9944 and the WP are 27 so each WP serves 5-10 Users so 27*10 = 270 Here users are including Active and Inactive Users. 121 Ask the customer to provide the list of Active users. Each work process serves around 5-10 Users. Calculate the number of Process Vs Users to determine no of Users/ Process. Based on the number of servers we can also define logon load balancing. It is also used to identify the memory utilized. This is also used to identify Response time and Buffers Utilization. AL11 : List the SAP Directories on Application Server. ST11: It is used to display the work directory. It displays the log files related to work process. ST01 and ST05 Used to trace the following 1. RFC Trace 2. Buffer Trace 3. Enqueue Trace 4. SQL Trace 5. Authorization Trace 6. Kernel Trace Available in ST01 and ST05 Only in ST01 1. When the RFC/ CPIC time are going beyond threshold value then switch on RFC Trace. 2. When more buffer swaps occurs in the table buffering ST02. Switch on Buffer Trace. 122 3. Enqueue Trace: When the enque or enque wait time is increasing by 5 M.Sec on CI(Central Instance) 100 M.Sec on Dialogue instance (Consider switching enqueue trace) 4. When there are too many expensive SQL Statements which are increasing the database response time in ST04 then switch on SQL Trace. (Identify those statements in ST04) Eg. Select * from can be fine tuned by using select single * from with appropriate where conditions. ST04 > Detailed > Oracle Session > SQL Statements. 5. Authorization Check: Whenever user encounters missing authorizations and could not be traced in SU53 can be traced out by switching the trace on User. 6. Kernel Trace: Used to identify the consistency of Kernel. It records all the calls that are made to kernel when the trace is ON. Note: Do not switch on the traces when they are not required. It will populate enormous log files and occupies the complete disk place and system stands still. As a practice switch on the trace and inform the user to run the transaction. Switch Off the trace. RC=0 (Return Code) Note: Tuning is not testing we need enormous analysis and data to justify the conclusion. 17-Aug-09 IMPLEMENTATION OF SAP Pre-Requisites 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Motivation of SAP for an ERP Software Landscape Deployment Plan Hardware Sizing Hardware and Software Order Installation of the Software Post Installation Steps User management Router ------ Remote connection to SAP Landscape Configuration Transport Management Testing Strategy 123 12. 13. 14. 15. Go Live Strategy Parallel Run Go-Live Support - Phase 1. MOTIVATION OF SAP FOR AN ERP 1.1. Customer wanted to deploy an application that suites to his requirements by replacing the existing software due to the following reasons. 1. The existing Hardware is old and the response times are high. 2. The software is out of maintenance with no updates, or with no company (Company Bankrupt/ Merger etc.) 3. The customer could not be competitive in the market due to the legacy methods deployed B1 - C++ No ABAP, BASIS, NW 4. The existing software is not capable to communicate with other systems 5. The software is not user friendly to take the user inputs. 6. It cannot communicate with print, fax, sms, paging devices. 7. Too many legacy systems, too little integration, manual inputs, monitoring are the various issues with the current software. Customer enquires in the market and calls for the Auditors to identify the software, hardware and the Implementer. Delloite, Bearing Point, KPBG, PWC (Price Water Coupons) are the auditors to identify the requirements in the company. They define the pain points of every business user owner and document them. Example: - The software should be installed on all the operating systems and databases. - The GUI should be compatible, user friendly, ergonomically designed, colors, fonts, languages, password change. - The software should be unicoded language to support all the languages. - The software should support (Online, Offline, incremental, partial, table level backup) - The software/ Hardware should support mirroring, RAID, clustering, Disaster Recovery, Restore etc. - The software should support Mobile devices, Email, Fax, SMS, Pager, PDA etc. Note: ATP Server - Available to Promise -----> Ware House. Issue --- Description ---- Possible/ Not Possible/ Customizable/ If customizable Amount of effort. 124 These requirements list will be floated as RFQ feasibility of software. SAP is Strong in Manufacturing, Weak in Retail } Tcode-SFW5(Switch Framework) SA38 - GETSYSDEF - These list will be submitted to Oracle Apps, NAVISION, Hyperion, Peoplesoft, Seibel (CRM) implementing partners. Note: Toughly Coupled/ Hardly - Preparatory costs has to be borne by vendors TDMS - Test Data Migration Server QAS PRE PROD SAND DEV/ CUST/ GOLDEN UNIT TESTING INTEGRATION PAYROLL/ TDMS TRAINING PRE PROD PROD 8 - Customer decides software with the help of feasibility reports and assistance from auditors. - Customer calls for quotation to implement SAP This is the first official document released to implement SAP. - Support partners like IBM, TCS, WIPRO, MAHINDRA submits the proposal. They can also raise questions in the form of RFI (Request for Information) 18-Aug-09 -----------------C:\pf\sapinst_instdir\ERP\system\ORA\central\AS Ensure that there should not be any .bck files while reinstalling the SAP Refer: sapfans.com; sapconsultant.com; sapbasis.com Auditor gather info from - Business partner owners - Software Vendors. 125 RFQ - Request for Quotation (Released by customers) RFI - Request for information -----------------It can contain as follows 1. Module specific questions 2. Technical questions related to Hardware, Desktops, Routing, Access, VPN, Backup, Disaster, Recovery etc. 3. Risk and mitigation --------------- 1. Project Implementation Methodology 2. Process 3. Company Strengths 4. Financial Background and Share Value 5. Past Projects and experience in that area 6. Average man power experience going to be deployed 7. Case studies and customer references 8. Implementation of solution manager (Provides Roadmap, Business Scenarios, Documentation (Upload, Download) etc. 9. Certifications (CMMI - Capability Maturity Model, SIX SIGMA, Sap Partnership) 10. Challenges in the project, risks and mitigations 11. Assumptions Based on the above proposal customer and audit team shortlist the two or three software vendors (IBM, TCS, WIPRO etc) - Implementation Partners and call them for Interview (technical discussions) to exhibit their capabilities. Based on 4th and 7th vendor will be finalized to implement SAP Note: External Security Routing Switching Proxy Firewall Internal Security 126 Authenticating Authorized users is Internal Security. Project Costing: 1. Number of hours required/ No of Man days/ No of Man Months 2. Cost of the Offshore Onsite Man hours/ Man Days/ Man Months 20-30$ 160-240$ 60-100$ 1000$ 20000$ 3. Project can be a fixed bid let us say 2,00,000 (i.e. @ Million Dollars for completion all inclusive (Fares, accommodation, staff, Replacement, Holidays, vacations, sick etc). Payment will be released in Parts ---- Project Start 10%, Blue print - 20% Realization - 20%, Final Preparation - 20%, Go-Live - 30%. 4. Let us say the Project Manager is SAP. We need to provide manpower to SAP to implement @ customer site. Eg. SAP Project bidder is SAP for 28 Crores in Singareni Collories ... They out sourced to Seal Infotech for training and implementation. 5. Critical Tasks are based on Man days/ Man Hours Example : Disaster Recovery 1. Fixed Bid 2. Time and Material (T&M) 3. Resource Based 4. Activity Based (Try to include Wait time) The scope of work needs to be defined properly before sign-on. If SOW is not defined properly, it is vendor responsibility. Risks and mitigations has to be clearly stated in the SOW. Delay in Software, Hardware requirements from customers are to be documented. 19-Aug-09 II. LANDSCAPE DEPLOYMENT PLAN 1. RFQ and RFI (Customer and Vendor) 2. RFP (Customer and Vendor) 3. SOW and Project Award (Customer and Vendor) 4. Landscape Deployment......... (Basis Consultant) Landscape Deployment Plan: 127 It consists of the number of systems that are going to be deployed in the customer data center. It may serve the customer as an overview of the SAP systems. But exact number of systems will be known only after the Hardware sizing 1 CPU / 2 Parallel Process By default 3 Parallel Process. III. HARDWARE SIZING It is an exercise carried out by Basis consultant with the help of the customer business process owners, Project Manager and Hardware vendors (IBM, HP, SUN, DELL). It is used to determine the CPU's, Storage (Hard disks) and Memory. SAP Provides quick sizing toll (http://service.sap.com/sizing) Goto> Sizing tool > Click on Quick sizer It will be opened on new window Provide customer number, Provide Project name and create a Project for sizing. 1. Provide Customer details to SAP (Name of the contact, Email Id, FAX) 2. Platform and communications 3. OS, DB, Mirroring, RAID, CLUSTERING Standby server or do you need any suggestions. Note: Legacy database size (get the details from customer what amount of data they are planning to migrate into SAP, Example Customer Database size is 400GB but they want to migrate 250GB into SAP (Customer, Vendor, Supplier, Material, Address, FI Transactions) High Availability options (Time of Availability) These are the general details that are required for sizing. Load On the System: Users work on the system on various modules MM - Logistics SD - Sales 128 FI - Financial 40% More to the sizing result. SAP's - SAP Application Benchmark for Performance Standards) It is calculated in terms of Hardware vendors provide CPU in terms of the CPU's Eg. IBM P Series generates 800 SAP's/ CPU. Note: ---------------------------IBM - DB2 [AIX O/s - DB2 Database]; I Series V5R4 - DB2] SAP - MAXDB Oracle SQL Server - Microsoft P Series, X Series (I Series V5R4) is the O/s Clustering (Mechanism : PING PONG) DD02L - ALL Sap tables will be stored 65,611 SQL>Select bname, mandt from SAPSR3.USR02; SAPSR3 - Database schema owner SAPSR3DB - JAVA -----------------------------21-Aug-09 Sizing is performed by quick sizer which is proprietary by quick sizer which is proprietary tool of SAP. Sizing is based on the following. 1. High Availability 2. Type of Users 3. Modules used 1. High Availability 1. RAID1 - Mirroring (1:1) on disk goes down other should take over. 2. RAID5 - (5 Disks---- Util -4; 1 Spare/ Parity) 129 3. SAN - Storage Area Network 4. Backup - SAN 5. If disaster occurs ------ Setup DR Server in a different geographical location 6. If the connectivity fails ...... buy more leased lines from different vendors 7. If the existing server collapses -- due to power cable --- multicables -- UPS -- etc -- Generator Network Cable --- More than one cable CPU's -- Multiple CPUS Memory - Hosted on Multiple slots DISK - RAID and SAN 8. If the complete system collapses due to hardware failure use clustering -- Two Parallel systems (Used for failover or Load balancing) Eg. IBM P-Series Unless unlocked by IBM we cannot make use of the additional Hard Disks Note: For Upgrade - Sizing Capacity - Sizing Module Selection: Select the modules that are going to be implemented like Logistics, Financials, Product life cycle Management (Currently HR is not going to be implemented but, there is a plan to implement in future, If it before three years consider HR in sizing if not. 130 1. User - 480 Dialogue Steps with the system - 40 HRS * 60 Mins 1Dialogue Step - 40*60/480 = 5 Min = 300 Sec 2. 480 - 4800 Dialogue Steps - 40 Hrs - 30 Sec 3. 480 - 14400 - 40 Hrs - 10 Secs Eg. Purchase Order / Week - 200 * 10 Dialogue Steps = 2000. 22-Aug-09 Service Desk > 1.Need to activate some services 2. SICF 3. Execute 4. Default Host - SAP - Public - bsp - SAP - htmlb RT Click > Activate Service Note: This should be done as Post Installation Steps SPRO > SAP Solution Manager > General Configuration Activating BC Sets (BC- Business Configuration) Tcode: scpr20 > From End user system If any one stuck @ point executing a command SM59 > Help > Create Mssg. Component BC-MID-RFC Test Low Test -- TKT No: 008000000001 The Strategy is to migrate/ upgrade the hardware for every three years. The sizing is based on 1. High Availability 131 2. Modules and 3. No of users Along with legacy database and future growth of users User FI CO Low 50 50 Medium 250 250 High 250 250 The sizing is also called as T-Shirt sizing which determines your servers as (S, XS, M, L, XL, XXL) Sizing output determines the memory, storage and CPU in terms of Saps'. SAPS is ( SAP APPLICATION BENCHMARK FOR PERFORMANCE STANDARDS) SAPS are calculated based on Sales module. SAP assumes that a sales order/ Purchase order consumes around 8-12 Dialogue steps. For every 2000 sales documents that are generated per hour requires 100 SAPS. CPU cannot be arrived directly because the process speed depends upon the hardware vendor. (The hardware vendor determines the CPU Size based on SAPS example an ISeries machine single CPU generates 800 SAPS. If the sizing output requires 3200 SAPS then we need 4 CPU's. The Hardware resources are required for the following which needs to be considered while sizing 1. OS 2. Database 3. Interfaces (Like Fax, Email, SMS, Pager etc.) 4. Printers 5. Third party communication (Batch processing etc) So we can consider adding 30-50% to the sizing results. IV. HARDWARE ORDER 1. Customer calls the RFQ from various vendors to supply hardware. - Based on companies stability, consistency, reliability, past experience, case studies, price and support (warranty)... - Hardware vendors take 3 weeks to 4 weeks to deliver based on the availability of the hardware. HP ships from Singapore, Philippines and Malaysia IBM ships from US V. ORDERING SAP SOFTWARE 132 ISUSER (INDIAN SAP USER FORUM) ASUSER(AMERICAN SAP USER FORUM) Communicate with SAP vendor (Channel Partners) and purchase the license. License is a single user based. i.e. If we buy one license we can access ... ERP, SRM, BI, PI, EP, Solution Manager, MI etc.) SCM. SRM CRM are charged Separately. If we buy MYSAP business suite then all comes under one license. * There is no lock for licensed users in the system. We can buy 100 Users and used for 10,000 Users. * Every year we need to run USMM and send the report to SAP. License Cost varies based on Geographical Location MySAPFI - Oracle Apps MySAPSCM - Peoplesoft MySAPCRM - Sieble Each license cost 2000 USD Each Developer Cost 4000 USD After negotiation in Indian Market the Single user cost comes to 40,000 to 1,00,000 depending upon number of users. For 40,000 we should have atleast 150-200 Users for 10+1 cost 18 Lakhs. --------------------------Note: Heap Memory Physical Memory Virtual Memory - Part of the Physical Memory (RAM Memory) - RAM - Part of the Memory from the Hard disk Buffer Bin - Points to the target system BIN contains default.pfl SAP_BC_ADMIn S_Transports CTS_Admin Disp+exe ( PING, Etc Entry, Any Kernel upgrade has been done (DEV_DISP.log) --------------------------27-Aug-09 133 BASIS - It provides runtime environment for SAP Applications. - 2.0 is based on two tier which is built on Mainframes. - 3.0 onwards and upto 3.1I it is based on three tier and web services are provided by using ITS. - 4.0; 4.5A, 4.5B - 4.6 A, B, C and D is kernel versions (Mining, Textile, Chemical, Oil, Utilities, Real Estates, baking, Insurance... etc.) SAP determined to bring all the components on to a common platform and introduced SAP Web Application Server (WAS) The first version of WAS is 620 (A direct jump from 4.6D) On 620 ....... ERP Version is 4.7E On 620 ........BW version is 3.1C Owner of the Database - SAPSR3........... Upto BASIS 4.6C 4.6D is the Kernel Version. - SAP<SID> ..... from WEBAS 620 to 640 It provides built in ITS to make application server as WEB Application Server. - SAPSR3 from WEBAS 700 It is a Netweaver (640...... 700...........710). Next Level of WAS is 640 ERP - ECC 5.0 BW - 3.5 SCM - 4.0 CRM - 4.0 2.0, 3.0, 3.1 are BW Versions 2.0, 3.0, APO are SCM Versions 2.0, 3.0, SRM are SRM Versions XI - 3.0 EP - 6.0 134 Next level of WAS is 700 ERP BW EP XI SRM CRM - ECC6.0 - BI7.0 - EP7.0 - PI7.0 - 5.0 - 5.0 Install ABAP(CI, DBI), JAVA add on. Install Central System Installation (Select Usage type during Installation) R/3 Setup is used to install SAP upto Versions Basis 4.6C SAPINST introduced in WEB Application Server 620-640. Interactive SAPINST is to modify the inputs move front and back to review the inputs introduced in WAS700. BASIS only Non-Unicode From SAPWEBAS 640 unicode is introduced. Run directory is used to host executables of kernel upto 640 where as OS version (NTI386, AMD64, IA64) with UC/ NUC is available in version 700. OLD: The database table spaces are 27 which ends with D(Data) and I(Index)..[SAPR3] owner. From 620 The database contains only 6 tablespaces(Physical Location) in 640 owner is SAP<SID> PSAP<SID> PSAP<SID>USR PSAP<SID>REL SYSTEM PSAPROLL(PSAPUNDO) PSAPTEMP SQL> Select tablespace_name from dba_tablespaces. The database contains only 8 tablespaces in 700. Owner is SAPSR3 for ABAP engine and SAPSR3DB is for JAVA Engine. SYSTEM - Database Related PSAPUNDO - For Roll Back SYSAUX - From Oracle Log for Administration 135 PSAPTEMP - Temp Storage Memory PSAPSR3 - Component Specific PSAPSR3700 - Version Specific PSAPSR3USR - USER RELATED Info PSAPSR3DB - JAVA Specific DB GUI Versions 46C 46D 620 640 700 710 Based on Windows and JAVA SQL> select username from DBA_USERS; Database Users (DDIC and SAP* are SAP Users resides in USR02 Table) SQL> select count(*) from DBA_USERS where owner = 'SAPSR3'; 17476 SQL> select count(*) from SAPSR3.DD02L; 65611 SQL> select count(*) , owner from DBA_USERS group by owner; Eg. [CDCLS] Cluster Table. The difference is because of -19,xxx Components: BASIS 65xxx BASIS+ERP 31-Aug-09 DATABASE It is a storage. It is used to store the data in the hard disk. 136 We can also store the data in terms of file system like test.txt, test.pdf, test.doc, test.rtf, test.xls, test.ppt, test.pps Disadvantage of the file system 1. The data is not in the organized format. 2. There are no indexes to search the data. 3. The data does not follow the LUW concept and so it is not consistent and reliable. 4. The version management will be difficult and time consuming to get the required/ identify the file. 5. The backup management and reorganization is not available. These are the reasons for the evolution of DB. Database: Used to store the data in the organized format and it has to follow RDBMS rules (Relational Database Management System) - Data is stored in terms of tables (Tables contain rows and columns). Columns are headers and rows are the data. - Duplication of data is avoided and uniqueness is obtained by using primary and secondary keys. - Data search is faster by using indexes (based on Keys) Eg: As in windows we can create as many folders and subfolders with the same name and the search criteria depends on the search string. C:\shawn\shawn\shawn....... - Database has its own structure to manage the data using the database specific binaries and libraries. Oracle/bin; mssql/bin; db2/bin; Oracle/lib; mssql/lib; db2/lib; - Database provides tools for backup management, reorganization, restore and recovery - Databases follow RDBMS rules to achieve consistency, reliability and transaction LUW. LUW - LOGIC UNIT OF WORK. It consists of one or more transactions that are bundled together which can be committed as a group or rollback without any data loss. 137 RFQ(Approved) - Sales Order Purchase Req - FI Dept (Approval) - Purchase Order - Tenders (Contractors) (Eg: Purchase Order, Sales Order, Invoice, GR(Goods Receipt), GI (Goods Issued) AP (Account Payables), AR (Account Receivables) - Data is normalized and denormalised according to the requirements of the customer. NORMALIZATION Process of splitting up the larger tables into smaller tables using primary keys and secondary keys... ERP(ECC6), SRM. Databases are normalized. DENORMALIZATION Process of grouping smaller tables into larger tables for having data comprehensively available for analysis and reporting BIW. [SELECT, INSERT, UPDATE, MODIFY, DELETE] Scenario User requests for weekly status report. 1. User submits the request. 2. Request is handled by dispatcher 3. Keeps the request in Queue 4. Based on the available processes requests are served based on FIFO. 5. R/3 Work process handles the user request by interpreting the screen elements, program logic (Insert, Modify, Delete, Update) 6. The response is fetched from buffers if they are accessed earlier 7. If the request is not accessed earlier, the request is converted into Native SQL statements of the respective database. 8. R/3 Work process communicates with database process to get the response. 9. Database work process checks whether the table exists, if table exists then checks for the fields, if the field and table exists, then asks for the optimized path to go to the database table and identify the relevant rows based on keys/ Indexes (Five 5 Seconday Indexes) 10. The data is fetched into Database buffers before the response is sent to R/3 work process. 11. R/3 Work process keeps a copy in the R/3 Buffer and response is sent to user. 138 01-Sep-09 UPDATE COMMAND 1. User request for updating a purchase order/ quotation / Invoice 2. The request is received by the dispatcher 3. Dispatcher keeps the request in queue based on FIFO 4. R/3 Work process handles the request and update the document into temporary tables (cannot update the permanent tables because all the LUW's in the transaction has to be completed) 5. In the process of updating it will communicate with enqueue and obtain the lock on the document so that no other user updates it. 6. The update request goes to the database. 7. Database process handles the request and checks whether table, table definitions and execution (Cost based optimizer) path are valid. 8. All the update requests goes to the database and lock the record in the database so that no user update it. 9. Database process keeps a copy of the record in roll back segment PSAPROLL/ PSAPUNDO table space to roll back in case of CRASH/ System Failure. 10. Gets the record to database buffer for modification (No record is modified in the database directly) 11. As the database buffers need to be accessed by user modifications are not performed in DB Buffers instead in log buffers. Eg. Consider a pan shop Customer - Cigarette Paper - Accounts book Log buffers are a small area around 1Mb - 4 Mb. As the log buffer is small the content is moved in to Redo logs periodically. Redo logs are duplexed (Mirror logs and Orig Logs) and ensure that the data is updated in the database. 12. The committed data is updated into database 13. The locks are released and rollback gets invalidated. Note: Committed data can be updated or Redo. 14. User gets the response that the record is updated. ORACLE Oracle is a database that is used by 2/3rd of SAP Customers. In order to support SAP Customers it is mandatory to know the database management. Oracle is provided by Oracle Corporation which owns (PeopleSoft, Seibel, JDEdwards, and other small software's to compete with SAP. 139 Oracle is a proven, well spoken among customers, strong, reliable, consistent, robust database to handle any amount of data in Terra bytes. Microsoft SQL Server from Microsoft, DB2 from IBM and SAPDB(MAXDB) from SAP shares the remaining 1/3rd of SAP Customers. Versions Oracle has versions of database SAP License is costlier on Oracle than any other combinations. SAP R/3 R/3 ECC6.0 4.6C 4.7 and ECC5.0 8.1.7 9.2.0.2; 9.2.0.4; 9.2.0.6; 9.2.0.7 10.2.0.2.0; 10.2.0.2.4 Linux - SAPDB (MAXDB) is the cheapest combination. 140 DATABASE ARCHITECHTURE Connection Mechanism (refer dev_<SID>.old) 1. R/3 Work process loads all the DB Libraries. 2. DB_Connect to connect to database using client version 3. Users OPS$ User to connect to database and get the password of the SAPSR3 User. 141 OPS$ Mechanism It is a mechanism which is used by operating system users to connect to the database without any password. All the work processes uses OPS$<SID>ADM to connect to the database without any password. OPS$<SID>ADM is the user who owns the table SAPUSER and contains the SCHEMA OWNER SAPSR3 user and password. SQL> Select table_name from dba_tables where owner = 'OPS$WILLSYS99\NWDADM'; WP ------> SAPUSER (Table) USERID | PWD OPS$-User | XXX Relogin with the above user and password Disconnect from the DB and reconnect using SAPSR3 userid and password to get complete access. SAPSR3 is the Schema/ DB Owner for SAP Database. As the processes are able to access the complete database related to schema owner, SAP restricts the access by using internal security. USER Request Flow/ Display 1. User uses SAP GUI to perform a transaction. 2. User request is handled by the dispatcher. 3. Dispatcher keeps the request in Queue 4. Based on available resources a process is allocated to user requests based on FIFO. 5. WP task handler interpret the user request. 6. Check the content is available in R/3 buffers. 7. Communicate with Oracle Client to communicate with DB in native language. 8. R/3 Work process handovers the task to database shadow process (1:1 Ratio between R3WP: DBWP) 9. DB Shadow process checks the task contains valid table and field definitions. IF the table/ Field definition does not exists gets a copy from the database and update the DB Cache/ LIB Cache. 10. DB Shadow checks if any SQL Execution plan exists. If not it builds the plan based on cost based optimizer and update SQL Cache. 11. DB Shadow checks if the requested content exist in DB Buffer if not fetch the content from database and updates DB Buffer. 12. The response is handover to R/3 Work Process. 13. R/3 Work process checks if it is eligible for buffering then keeps a copy in R/3 buffers. 142 14. Response is sent to the user. Refer init<SID>.ora file SYSTEM GLOBAL AREA is the sum of Shared pool, DB buffers and log buffers SHARED POOL It is defined by shared_pool_size which is a part of SGA (System Global Area) It contains DBCACHE and LIBCACHE and they are nothing but parsed SQL Statements, Authorizations, Table and Field definitions and packages. Each query/ request should pass through this area... DB BUFFER : Used to store the content that is accessed from the database. It is used to reduce the hits on the database there by reducing the load on the database. Its quality is measured by database buffer hit ratio. In general for an optimized database the ratio should be not less than 94%. From ST04 - [Logical Reads - Physical Reads/ Logical Reads] * 100 i.e. Out of 100 request 6 requests goes to the database. DB Buffer is used to store the data until its size is full (or) the content gets invalidated by a change or least recently used. It is defined by a parameter db_block_buffers. SQL> select name, bytes/1024/1034 "MB" from V$sgastat where pool.... Its size is defined by multiplying by 8kb because each block size is 8 kb. SQL> show SGA LOG BUFFER: It is used to perform the data manipulations by database work process. Every request that needs modification/ update / delete has to be performed only in this area. It is defined by the parameter log_buffer generally its size varies between 1MB to 4MB. It should not be too big or too small. SYSTEM/ SHARED GLOBAL AREA: It is a memory area which resides purely on memory and it is lost when the system is stopped. SGA is lost the complete cache information is lost. It takes time to build SGA when system is started that is why the system is slow after a restart. ORACLE PROCESSES 1. Shadow Process 143 2. Background Process/ Server Process SHADOW PROCESS These are used to handle the user requests. They perform the task assigned by an R/3 WP. They called as shadow processes because they perform the task non-interactively. These are also called as User processes (In Oracle Terms) The process are established at the rate of 1:1 during the startup of SAP system. BACKGROUND/ SERVER PROCESS These are non-interactive to R/3 Processes. These are initiated by system based on requirement. LOG WRITER Mechanism a) R/3 work process submits the request for an update. b) Shadow process handles the update by locking in the database c) It takes a backup of PSAPROLL/ PSAPUNDO to roll back to the original state if the update is cancelled or abrupt. d) The record is fetched into DB Buffer for allowing selection. e) A copy of the record is taken to log buffer for modification f) the data/ record is modified in log buffer. This cannot be kept for long in the log buffer as the log buffer size is small. LOGWRITE (LGWR) is used to write the committed data into Redo log files (Origlog A, Origlog B, Mirrorlog A, B) from log buffer. This is the first place where a record is written to the disk to ensure that committed changes are not lost. To ensure the disk consistency log writer writes into Origredolog and Mirrorredolog files (Both resides on two different physical disks). When the data is committed System Change Number is generated to ensure the faster commit mechanism. Log writer writes the commit into Redo log files but when the size of Redo log file is full size 50MB. It will perform Log Switch. LOG SWITCH It is a process of switching between RedologA to RedologB and Mirror Logs A to B i.e. when RedologA is full it is closed for writing and RedologB is opened for writing. 144 There will be only one process. The log writer process writes data from the redo log buffers to the redo log files on the disk. The writer is activated under the following conditions 1. When a transaction is committed 2. Every 3 Seconds 3. When the redo log buffer is 1/3rd full or 1MB of committed. 4. When DBWR signals the writing of redo records to disk. The log writer must always be running for an instance. 02-Sep-09 (Note: If the buffer size is more no updates will happen. The DB WP waits till the buffer total memory gets utilized and then updates the DB) SYSTEM/ SHARED GLOBAL AREA It is a memory area which resides purely on memory and it is lost when the system is stopped. i.e. SGA is lost the complete cache information is lost. It takes time to build SGA when system is started that is why the system is slow after a restart. ORACLE PROCESSESS 1. Shadow Processes 2. Background/ Server Process Shadow Processes These are used to handle the user requests. They perform the task assigned by an R/3 WP. They are called as Shadow Processes because they perform the task non-interactively. These are called as User Processes (In Oracle Terms). Background or Server Processes These are non-interactive to R/3 Processes. These are initiated by system based on the requirement. 1. LOG WRITER 145 Mechanism 1. R/3 Work process submits request for an update. 2. Shadow process handles the update by locking in the database 3. It takes a backup of PSAPROLL/ PSAPUNDO to roll back to the original if the update is cancelled or abrupt. 4. The record is fetched into DB Buffer for allowing selection. 5. A copy of the record is taken to log buffer for modification 6. The data/ record is modified in Log Buffer This cannot be kept for long in the log buffer as the log buffer size is small. * Log Writer is used to write the committed data into Redolog files (OriglogA, OriglogB, MirrorlogA, B) from log buffer. This is the first place where a record is written to the disk to ensure that committed changes are not lost. To ensure the disk consistency log writer writes into Origredolog and Mirrorredolog files (Both resides on two different physical disks). When the data is committed SYS Change number is generated to ensure the faster commit mechanism log writer (LGWR) writes the commits in to Redolog files but when the Redolog file is full) size 50MB. It will perform log switch. LOG SWITCH It is a process of switching between Redolog A to Redolog B and Mirror Logs A and B i.e. When Redolog A is full it is closed for writing and Redolog B is opened for writing. There will be only one process. The Log writer process writes data from the redolog buffers to the redolog files on the disk. The Writer is activated under the following conditions 1. When a transaction is committed 2. Every 3 Seconds 3. When the redolog buffer is 1/3 full or 1MB of committed. 4. When DBWR signals the writing of redo records to disk The log writer must always be running for an instance. 03-Sep-09 146 The Content of OriglogA, OriglogB, MirrorlogA, MirrorlogB ... (Redolog files) gets filled and need to move to other location. If it is not moved. 1. Redolog files gets filled and does not have space to write the content from log buffer. When log buffer cannot write the content then log buffer gets filled and subsequently the update mechanism gets halted. so, the redo log files needs to write to an alternative location immediately once they get filled. When Redologs are full ARCH Process During the log switch OriglogA gets filled for writing and OriglogB is opened for writing. The contents of OriglogA will be written to ORAARCH directory (Provided archieve_log_mode is set to true). The contents are written by ARCH from RedologA to ORAARCH and RedologA is ready to be written by LOGWR. Similarly RedologB. DBWR (Database Writer) The content that needs to be updated is fetched into DB Buffer for selection. A copy is made to LOG Buffer for updation. Once the content is updated in Log Buffer it marks the content in Database Buffer as Dirty buffers and not eligible for selection. DBWR is triggered in the following circumstances [ORACLE RAM] = SGA 1. When the request comes to access the dirty buffer content. 2. When ever a check point occurs (It writes based on system change number SCN) Note: Every select statement hits the database and brings the data to DB Buffers. All the updates will be done from Logbuffers. SQL> select sequence # from V$ARCHIVED_LOG; CKPT - Check Point 147 It is used to ensure that system is consistent. download.oracle.com/docs/cd/310501_01/server.920/a96524/C09procs.htm#21919 It updates the headers of all datafiles to record the details of the checkpoint. It triggers DBWR/ LGWR SMON SYSTEM MONITOR Used to ensure the Oracle database is consistent and reliable. In case of system crash/ abnormal termination SMON reads the online redologs and redo the changes to database and also reads the PSAPUNDO to roll back the changes. The system monitor process (SMON) performs recovery, if necessary at instance startup. It triggers during the system startup and ensure that system is started. PMON PROCESS MONITOR Used to monitor the process recovery when a user process (Shadow process) fails. PMON is responsible for cleaning up the database buffer cache and freeing resources that the user process is using and release the locks. PMON periodically checks the status of dispatcher and server processes and restarts any that have stopped. - Used to monitor the process (PMON) - Used to start the processes if they are stopped - Release locks - Freeing the resources that were used by user processes. PHYSICAL FILE SYSTEM 1. Datafiles : These files are with extension (.dbf). These are used to store the data in the Oracle specific RDBMS format. 2. Control Files: These are used to display the structure of the database into Six different locations. It is the most important file (Cntrl<SID>.DBF) The location is specified by a parameter control_file. Do not modify the control file manually, the system modifies by itself when ever there are any changes. 3. Initialization Files: init<sid>.ora is used to provide the startup parameters for Oracle. 148 init<sid>.sap us used to provide the database backup/ restore (brbackup, brarchive, brconnect, brrestore) control parameters. Init<sid>.dba is used to provide authorization to SAPDBA/ BRTOOLS. These are located in Oracle_home/ database(windows) DBS on UNIX. 4. Network/ Admin Listener.ora Provide Port and the Host Name. Tnsnames.ora Provide port and the host name Sqlnet.ora ..... 04-Sep-09 Special Parameterization files (SPFILE) All the changes that are made requires a reboot of Oracle database. In order to change certain parameters SPFILE is maintained. We need to explicitly create SP file this SP File cannot be edited manually E:\ORACLE\QAS\I02\ADMIN Oracle Startup When Oracle is started the database available for users. Commands Startup open Startup mount Startup no mount. Oracle contains 3 Modes (4 Including Restrict) 1. Startup Nomount : This phase is used to create control files and database. No datafiles are mounted. 2. Startup Mount: We can start a DB and mount a database without opening it, allowing us to perform specific maintenance operation. a) Change the archive log mode status 3. Startup Restrict: 149 a) Perform an export or import of database data. b) Perform a data load (With SQL * Loader) c) Temporarily prevent typical users from using data d) During certain migration and upgrade operations e) Used during patch applications the database is opened but not allowed i.e. restricted to the above operations. End uses cannot perform any tasks. 4. Startup Open: When DB is started using startup cmd. It reads the init parameters in the following sequence. 1) SPFILE<SID>.ORA 2) SPFILE.ORA 3) INIT<SID>.ORA 4) INIT.ORA Oracle Shutdown 1. Shutdown Immediate 05-Sep-09 Shutdown Modes 1. Shutdown Abort The database is forcibly shuts down and may not be consistent and requires recovery during startup. SMON ensures that the database is consistent (REDO/ UNDO) All the users who are working on the system gets terminated abruptly and the intermediate data is lost. (Which is committed) Not Consistent. 2. Shutdown Immediate The database is shutdown immediately but all the committed transaction are updated in the database and opened transactions are rolled back. No new connections are allowed. Consistent. 3. Shutdown Transactional. The database does not allow any new connections, all the committed data is updated 150 In the database and opened transactions are only allowed to complete, no new transactions are allowed. Consistent 4. Shutdown Normal It allows the users to complete all the transactions and shut down the database. No new connections are allowed but time consuming to stop the database. STORAGE The database uses file system but organized in the RDBMS concept. The data is stored in terms of Database block size in terms of Datablocks. Each block size is 8KB(8192 Bytes) Block size is determined by parameter DB_BLOCK_SIZE (refer inti<sid>.ora) The two parameters DB_NAME and DB_BLOCK_SIZE should never be modified. Data files are physical files on the file system where data is stored in Datablocks. EXTENTS These are used to allocate space to a table/ segment to control the growth 1. Initial Extents 2. Minimum Extents 3. Next Extents 4. Max Extents Segment means (table or Index) Group the blocks to Extent Reorganizing - Utilizing the fragmented space. ............ Eg: Req: 150 Given 200 Next 50 Max 500 These table/ Indexes are grouped logically into a tablespace/ Container 151 Tablespace is a logical entity which contains related tables/indexes. Oracle provides default tablespace "SYSTEM to manage the database". SAP provides the other tablespaces that starts with naming convention PSAP 1. PSAP<SCHEMAID> 2. PSAP<SID>RELEASE 3. PSAP<SID>USR 4. PSAPTEMP 5. PSAPROLL/ PSAPUNDO 6. SYSAUX PSAPDEV PSAPDEV640/ 700 PSAPDEVUSR Temporary Table Space UNDO Table Space SYSAUX is a new tablespace available from version 10g. Tablespace is pointed to physical datafiles. Each Tablespace can have one or more datafiles to store the table data/ Index data. Note: Each datafile is assigned to only one tablespace. Eg: Users are creating purchase orders extensively into the tables EKPO, EKKO and other child tables. These tables are assigned to a tablespace PSAP<SID>. This tablespace is pointing to two datafiles of size 4GB each. User encountered an error ORA-1653/ ORA-1654 tablespace over flown and the user could not update/ create any more PO's The user could not update the data because the datafiles are filled (or) there is no enough space to allocate for extents. Resolution 152 Use BRTOOLS (Backup Recovery Tool) to resize the datafile (or) add a datafile. (Alternatively we can add using SQL Command) SQL> Alter tablespace (Tablespace Name/ PSAP<SID>) add datafile location and size; EXTENT MANAGEMENT When a table or Index is created they are assigned with Min Extent, Init, Next, Max along with the Percentage of Increase. CAP is Max. DMTS - Dictionary Managed Tablespaces When ever a table is growing it increase it extents i.e. it uses next extents. The free space in the existing extents is not used there by Fragmentation. It requires database Reorganization. Users encounters an error ORA-1631 and ORA-1632 Max Extents Reached, but there is a tablespace. Use BRTOOLS or SE14 to increase the Extents. Locally Managed Table Spaces Default table spaces from 10g which manage the extents locally instead of dictionary management.. It collase the space that is left in all the extents before allocating an extent. It reduces the fragmentation there by reorganization is not required. SAP recommends to migrate all the dictionary managed tablespaces to locally managed before 10g upgrade (Oracle). Similarly PSAPROLL should be migrated to PSAPUNDO before upgrade. 06-Sep-09 SQL> select * from dba_tablespace; Select * from dba_users; Select * from dba_tables where table_name like dba%; SAP Tables are stored in DD02L Users are used to login to the database with various privileges. Select * from dba_users; Select username from dba_users; 153 ops$willsys99\saservicesr3 ops$willsys99\saservice<SID> ops$willsys99\<sid>adm sys - The complete or absolute owner of oracle database server to perform the activities. System SAPSR3 SAPSR3DB Administrative user but cannot be used to create modify the DB Perform backup, recovery, restore etc. DATABASE MONITORING As a part of the routine SAP basis checks the following database tasks can also included. Note: Oracle writes all startup logs into alrt<SID>.log which resides in SAPTRACE directory. It is the only log which can gives us the complete history of database activities. 1. Monitor the size of the database to have a detailed capacity planning. Login to SAP system and log the database growth on daily basis. For Eg. Size in GB 1 200 2 210 3 220 4 230 5 230 6 230 7 250 8 280 9 300 10 350 Conclusion The database is growing at an average of 15GB per/ day. Have a storage of 1 TB = 1024 GB At the current growth rate of the database can use the storage up to 30 days approximately. We need to check the abnormal growth of the database. Inform the inventory department to order more disks if there is really a DB growth. If we consider 2 Months duration the graph will be like this 154 DB02 is used to monitor the disk space, critical objects based on Table spaces. Tables and Indexes Monitor SQL> Select tablespace_name, block_size from dba_tablespace. System 8192 ----SQL> select tablespace_name, segment_space_management from dba_tablespace; Segment is nothing but a table or index. BRTOOLS BACKUP RESTORE RECOVERY TOOL These tools are provided by SAP for Oracle Database. - Login as SIDADM on windows or ORASID on UNIX - command BRTOOLS Type option 2 for Space management. Option 7 for additional space function. Option 1 show tablespaces Continue 3 times to display the list of table spaces and their growth. DB13 - Tablespace Particular (DBA Planning Calendar) DB12 - Overview for a Database Identify the tablespaces which are grown more than 90% and add datafiles. Enter choice - 1 (For which tablespace we need to increase the size of datafile) PSAPSR3700 - Press Enter E:\oracle\SID\sapdata3\sr3700_16 155 In this path 16 datafiles are there if we increase the tablespace size one more data file is created called sr3700_17 SQL> select tablespace_name, blocksize from dba_tablespaces; - Add the datafile or resize datafile before its gets an error message "Tablespace overflow" MISSING INDEXES Identify the missing indexes in DB02 (which will reduce the performance without proper indexes) Goto DB02 > Diagnostics > Missing Tables and Index Check the objects that are missing - For each table we can create 1 Primary Index and 4 Secondary Indexes these are predefined because of the huge table growth indexes are missed. - Recreate them - SAP Provides all the indexes (Predefined one(Primary Index) + Four (Secondary Index), we need to check if there are any missing indexes and recreate them if required in DB02/SE - Objects which are missing are displayed in Red, select them and create in the database. 2. Select the database buffer hit ratio, transaction ST04 - The buffer hit ratio should not be less than 94% - It is calculated based on reads Logical Reads : The number of reads that are made to Database buffer. Physical Reads: The number of reads that are made to Physical Database. Hit Ratio = ((Logical Reads - Physical Reads)/ Logical Reads) * 100 156 Physical reads are increasing conclude that the database hits are more. If the ratio is reduced we can conclude that DB_BLOCK_BUFFERS size is not sufficient or there are frequent updates on the system. DB13 We need to check 1. DB backup is performed successfully or not 2. DB Housekeeping Jobs are running successfully or not (DB Check, Update stats, clear old log files, adapt extents) 3. Archive directory is having space 4. Offline to Oraarch are scheduled periodically and running fine. SCHEDULE DB BACKUP Init<SID>.sap ---------- Open it Change the parameter values Backup_type = disk 07-Sep-09 BRTOOLS These tools are used to manage or monitor the oracle database which are specifically provided by SAP. BRTOOLS reads the parameters from init<SID>.sap It resides in Oracle_Home\database (Windows) In UNIX DBS directory It controls the runtime behavior of BRTOOLS. BRTOOLS contains the following Options 1. BRCONNECT It is used to connect to the database and performs various administrative tasks. BRCONNECT - f check ... it is used to check the database and writes the logs into sapcheck directory. Check conditions are described in transaction DB17 which in turn stores the details in DBMSGORA Open Command Prompt > brconnect -f check 157 > brconnect -u system -p <pwd> -f check brconnect -f stats Used to run the database statistics. It identifies the tables whose statistics are outdated and updates them. We need to run the DB optimizer once a week. So that all the tables and Indexes where there are stored will be known to DB Optimizer. It is updated periodically (Weekly). Optimizer is used to collect the statistics for the tables whose statistics are outdated. Running update statistics improves the performance of the system. (Eg. Friend comes to India from America after 5 years) Cleaning up OLD log files brconnect -f cleanup It is used to clean the old log files from saptrace and sapcheck directory brconnect -f next It is used to adopt the next extents (i.e. Next extents can be increased automatically) These jobs can be scheduled using DBCALENDER (DB13). How ever when these jobs are scheduled BRCONNECT runs in the background. BR-BACKUP BR Backup is used to take backup of the database (Datafiles). When ever a backup is triggered BR Backup is initialized. There are various types of backups 1. Offline Backup 2. Online Backup 3. Incremental Backup 4. Partial Backup 1. Offline Backup (Cold Backup) The database is down during backup and no transaction is allowed as it is down. It is consistent and reliable. Whole Offline Backup: The backup taken fully and a catalog is opened to start the incremental backup. 158 Eg: A database is of 2000 GB Which is not possible to take a daily full offline backup with a backup speed of 150GB/ Hour. Full Offline Backup: It is a complete database backup without any Catalog. Catalog (SUNDAY - The rest will be taken) 2. Online Backup The DB is up and running with out effecting the user transactions. It is consistent and reliable with redo logs that are generating during backup. Whole Online Backup: The backup is taken fully and a catalog is opened to start the online incremental backup. Full Online Backup: It is complete database backup with out any catalogs. Online Backup: It is consistent always with redo logs. 3. Incremental Backup It is initiated from level0 backup and used when the database size is too big. It can be online or offline. 4. Partial Backup It is taken for a specific table during a patch (Especially HR Patches) Backup type is defined by a parameter Backup_mode = all Backup_type = offline Backup_dev_type = Tape or Disk Backup_root_dir = H:\oracle\SID\sapbackup All the above backups are performed by using brbackup. BR ARCHIVE (initSID.sap) 159 It is used to backup the offline redolog file to tape or disk i.e. from ORAARCH directory to tape or disk. Archive_function = SAVE/ COPY/ DELETE Archive_copy_dir = H:\Oracle\NWD Tape_size= 100G Volume_archive=NWDA01...... NWDA30... Reads content from Log Buffer. Log writer writes to OrigLogA and OrigLog B, Mirror Log A, Mirror Log B. When OrigLog A is full it is moved to OrigLog B When OraArch is full it is backed up to a tape or disk. - Archive function means the saving mechanism of log files. - Log writer logs into OriglogA, OriglogB, MirrorLogA, MirrorLogB -When online redo logs are full then Arch writes contents to Oraarch i.e (Offline redologs) the content of oraarch is referred as offline redo logs. - If Oraarch is full the archive gets stuck and the complete update mechanism stuck and users encounter congestion. - So the Oraarch content needs to be moved to alternative location on hourly, bi-hourly for every 4 hours or daily depending upon the frequency of updates. - While copying Oracle provides various means of log save because we don't want the corruption of logs. 160 The data transfer from Oraarch to disk is done by BRArchive. 08-Sep-09 BRTOOLS It uses BRConnect, BRBackup, BRRestore, BRRecover with various options. We can do the following with BRTools. - Start and stop the database - Database backup - Redolog Backup - Restore Database - from database backup - Recover Database from Redolog Backup - Extend the tablespace by adding datafile or resizing datafile. Max datafiles are 250 in SAP. Each datafile size is 1% of the Whole database (100-200) 2 GB 200-400 4GB... - Tablespace management (Create drop alter. mostly create and drop are not used) - Reorganisation (Create, Rebuild, Indexes Export and Import tables) - Database standard house keeping jobs (DBStatistics, cleanup logs, dbcheck, adapt next extents) - Display profiles, change schema password etc. SYSTEM COPY/ HOMOGENEOUS COPY/ HETEROGENEOUS COPY, DB REFRESH 1. System Copy/ Homogeneous Copy 161 It is used to setup a system similar to a PRD, QAS etc. i.e. the system is completely build from OS, Database and R3 without changing OS or DB. 2. Heterogeneous Copy When ever there is a change in OS or DB then it is said to be heterogeneous. 3. DB Refresh It is the process of refreshing the data of one system (OS, DB, R3) remains the same but only database is refreshed. by another system data. THE REASONS FOR SYSTEM COPY Unicode Migration or Code Page Conversion 1. To setup a new system in the landscape (Only DEV and PRD exists, now we need to deploy QAS as a copy of PRD) 2. To change the hardware. 3. To move out from one OS to another or One DB to another DB which is called as OS/ DB Migration which needs to be carried under the guidance of Certified consultant. 4. While applying patches, Kernel Upgrade to test the objects with Production data. 5. System Copy is performed using export and import of the database. STEPS for SYSTEM COPY 1. Source System 2. Use Installation Master DVD - Use Additional Tasks - System Copy - Source System - select database instance export - specify typical - specify Profile directory e:\usr\sap\sid\sys\profile - specify the password if <sid>adm - Specify the export location for Import. Review the inputs and continue the import. DATABASE REFRESH 162 Let us say there are three systems DEV, QAS and PRD existing in the landscape. The objects which are developed in DEV needs to be transported to QAS and PRD the objects behave differently in DEV, QAS and PRD. Eg. A Small report which fetches monthly sales executes 1 Sec in DEV and in QAS where as in PRD it is consuming 30Min. PRD DB Size 1TB 2TB. The report is good in DEV and QAS but bad in PRD that means quality checks are failed. So we need to copy the PRD (DATA files) system to QAS system from time to time to get proper quality done. Similarly we need to apply patches, Kernel , add-ons in the landscape. We don't want any issues that crops up on the production system. So we will take a copy in QAS and apply before PRD. Process 1. PRE STEPS 2. DB REFRESH 3. POST STEPS Pre steps Pre Steps on the Target system. It is required to keep the dependencies of the target system to restore them later i.e. after refresh. Eg. After Refresh the target system QAS behaves like production System. Se we need to delete the source dependencies and restore the target dependencies, Users, RFC Connections, Batch Jobs, License, Printers, Roles etc. 1. Take a copy of them using transport requests, screen shots etc. 2. Generate the control file from source system. Delete the entire SAPDATA files. 3. Restore the database from Tape or Disk. 4. Create Control file with new database structure of QAS 5. Make the BTC Processes to 0, so that no background job is triggered 6. Start the system and restore the target dependencies Pre-Steps for DB Refresh 1. Create the transport of copies by using SE01 and specify the following objects/ tables USR01, USR02, RFCDES and TBDLS And then we need to release the Transport of Copies. - Copy the cofiles & datafiles in usr\sap\sid\trans 163 - Take the screen shots of SM59, BD54, DB13, SM37, AL11(All the SAP Directories), WE20 (IDOCS), SMLG, RZ12 (RFC SERVER GROUPS), RZ70 (Inorder to populate the backend system details to SLD), RZ04 (Operation Modes) SCC4, SPAM. 4. And then We need to delete all the datafiles related to QAS system. data1, data2 etc. First we need to stop the oracle services the structure should remain same. Directories like sapdata1.... sapdata..n, MirrorlogA, B, OriglogA, B 5. First Activity After taking the backup of PRD server we need to generate control file. > Alter database backup controlfile to Trace. It will generate the Cntrl File under usertrace directory. Copy the cntrl file to quality system and rename it as with .sql extension. If it is offline backup the foldernames offline b.afd online b.afd 08-Sep-09 BRTOOLS ERRORS 1. Tablespace over flow (ORA-1653, 1654) 2. Max Extents reached (ORA-1631, 1632) 3. Archive Stuck (ORA-255, ORA-272) 4. Datablock corruption (ORA-1578)... restore from old backup 5. Missing end backup while performing a backup 6. stats out dated - run brconnect -f stats 7. Oracle listener, Tnsnames port issues 8. Oracle DLL Compatibility issues (Patch Oracle) 9. International hardware errors ORA-600 (Refer to SAP and Oracle) 10. OPS$ issues related to authentication while logging 11. Connection issues between R/3 WP: Oracle Shadow with error ORA-12560 12. Oracle is corrupted or Disk corrupted, External disk not available, datafile missing, Space issues. 13. Missing Indexes in DB02 14. Database backup not successful due to space issues, tape issues 15. Control file missing - Recreate control file Note: All Oracle errors refer to Oracle/ SAP (ORA-XXXX) 16. Oracle shared memory not available issue with SGA 17. If buffer hit ration below 94% (Increase block buffer size) 164 09-Sep-09 IMPLEMENTATION Installation of SAP System 1. Download the Installation Guide from the Market Place. www.service.sap.com/instguide 2. No of users/ Load on the system 3. Perform Sizing www.service.sap.com/sizing 4. Download the software www.service.sap.com/swdc 32 Bit means I386 cmd> memsize/ memlimit 5. Entry in etc\services PORTS Dispatcher Port Message server Port Gateway Port Secured Dispatcher Port Secured Gateway : : : : : 3200 3600 3300 4700 4800 to to to to to 3299 3699 3399 4799 4899 6. Make sure that Installation Ports 21212, 21213 are not used 7. Kernel depends on O/S 32-64, Database, UC/ NUC Exports are OS/ DB Dependent 8. All the entries are stored in control.xml and installation progress is stored in keydb.xml If the installation is aborted/ cancelled then the above two files will help us to start from the point where it stopped earlier. 9. An installation directory sapinst_dir is created which host the log files of the installation Note: SMSY > System Landscape > Other object > create sap* : 06071992 ddic : 19920706 165 10-Sep-09 TADIR - Stores all the repository objects Repository consists of your ABAP objects like programs, function modules. ABAP data dictionary consists of tables, domains etc. Data dictionary is like a part of repository only. From SE11 these are database objects Database tables views datatype Lock objects Searchhelp. Type group Domain. Note: Instance No 00: Port No: 3200 Database O/S R/3 Users sap* : 06071992 ddic : 19920706 DIFFERENCES BETWEEN EARLIER VERSIONS OF SAP AND CURRENT NETWEAVER INSTALLATION 166 1. No Solman Key 2. Pre requisite checker 3. Passwords are default and OS/SB passwords need to be provided in the input screen 4. Central instance and database are installed separately (Central system is introduced with combination of CI and DBI) --------------------------------------NTI386 - Intel Pentium IA64 - Intel Itanium X64 - AMD64 AIX_64- IBM --------------------------------------5. Kernel used to reside in RUN directory and in current versions in sys\exe\UC\NT\I386 6. No screen to review the inputs and change them if required. 7. No interactive / colorful screens 8. Up to 4.6C r3setup is used to install SAP. sapinst is introduced from 4.7 version. 9. Tablespaces are 27 up to 4.6c from 4.7e onwards they are reduced to 6 Tablespaces. 10. SAPDBA is replaced by BRTOOLS in newer versions 11. MMC passwords are required to start SAP in newer versions cmd> startsap name=DEV nr=00 SAPDIAHOST=HOME ---------------------------------------------------------OS = SIDADM SAPSERVICE<SID> ST06 - gets for SAPOSCOLL service Trans - EPS (Electronic Parcel Service) - All the developments are hosted. ---------------------------------------------------------PROFILE MANAGEMENT Usr\sap\SID\sys\profile There are three 3 profiles which are available by default 1. Default 2. start_DVEBMGS00_<HOSTNAME>.pfl 3. <SID>_DVEBMGS00_<HOSTNAME>.pfl Installation Questions 1. Installation Pre-Requisites 167 2. Installation Inputs 3. Difference between earlier and Current Versions 4. Installation Checks 5. Starting of SAP System. Installation Pre-Requisites 1. Download the Installation Guide www.service.sap.com/Instguide 2. Sizing 3. Download the Software from www.service.sap.com/swdc 4. Install JAVA j2sdk_1_4_2_12 5. Set the Environment Variables JAVA_HOME PATH 6. Set the Virtual Memory 7. Install ORACEL 10g 10.2.0.2 Execute OUI.exe (Oracle Universal Installer) (.) Install Database Software Only 8. Install Patch OUI.exe Installation Inputs Sapinst.exe from InstMaster Folder SAP Netweaver 2004s Support Release2 > SAP Systems > Oracle > Central System Administration Select (.) Typical Prompts to logoff to get some privileges Login as Administrator Select the Usage Types AS ABAP AS JAVA BI JAVA DI EPCORE EP MI 168 PI Browse for Java Components Browse for JCE Policy (JAVA Cryptographic Encryption) Prompts for SID and the Installation Drive [E:] Prompts for Master Password Prompts for DBSID and Database Host Prompts for Installation Exports path (Actual Content lies in Exports) Exports varies from Component to Component Prompts for Kernel and Oracle Client paths System Landscape Directory (.) Configure Local SLD IF Local SLD then Object Server Name [Hostname] Parameter Summary If required change the MirrorLogA and OrigLogA, B to different directories Requires SOLMAN Key from Solman System [SMSY] Task Progress.....~~~~~~~~~~~~~~~~~~~ Install SAPGUI (Setupall.exe) Installation Checks 1. Users: Two users are created <SID>ADM SAPSERVICE<SID> <SID>ADM is used to start the SAP system and Administration of SAP SAPSERVICE<SID> is a service user used to run the services. Verify from My Comp> Manage > Users and Groups 169 SAPOSCOL is an operating system collector ensure that sufficient resources are available to start SAP system. SAP<SID>_INSTANCENO used to start the SAP system. 2. Groups: Following groups are created to work on Oracle Database and R/3 Executables. ORA_<SID>_DBA ORA_<SID>_OPER SAP_<SID>_GLOBALADMIN SAP_<SID>_LOCALADMIN SAP_LOCALADMIN 3. usr\sap\trans is created to host the transports. It is a common transport directory where the changes of development are stored as transport requests, provides EPS\in for patching the system. 4. Kernel executables are extracted into usr\sap\SID\sys\exe directory Used to start and manage the runtime of the SAP System. 5. Profiles are created in usr\sap\SID\sys\profiles Which governs the startup parameters, runtime parameters of SAP System. 6. SAPDATA1 is created with datafiles saparch, oraarch, sapcheck, saptrace, sapreorg and redolog files (OriglogA, OriglogB, MirrorlogA, MirrorlogB) Database specific file system. 7. On Windows MMC(Gui based) is created to start and stop the SAP System To start and stop the SAP System 8. On UNIX startup scripts are created on <SID>ADM in Home Directory (startsap, stopsap) 9. Work directory is created in usr\sap\SID\DVEBMGS00\work used to host the trace files(Logs) which are generated during SAP system startup. 10. Oracle database uses (ORASID on UNIX other users like OPS$ Users, SAPSR3, SAPSR3DB) ORA<SID> is the owner of the database in UNIX 170 <SID>ADM is the owner(Administrative Privileges) of the database in Windows Starting up of SAP System 1. On Windows use SAPMMC/ Startsap to start the SAP System 2. On UNIX login as <SID>ADM - Open Terminal - Startsap (Scripts) 3. When engine is started it reads the startup profile which is located in usr\sap\sid\sys\profile\start_DVEBMGS00_<hostname>.pfl Startup Profile consists of a) Starting the database using command strdbs.cmd this command starts the database and writes the log files to stderr1.log which is in the work directory strdbs.cmd - consists of a entry - V9start.sql (From here we can find whether the database is up or not) b) Starts the Message server using executable msg_server.exe and writes the log into work directory dev_ms.log if it is not started it writes the log into stderr.log c) Starts the Dispatcher using executable disp+work and write the log file into work\dev_disp and stderr.log All the log files resides in Work Directory. 4. When the process are started they read properties from Instance Profile SID_DVEBMGS00_HOSTNAME.pfl Such as number of work processes, memory, buffers etc and writes the logs into dev_w0, dev_w1, dev_w2 ... dev_wn-1 11-Sep-09 192/ 172/ 10 Global IP Address (ARPANET) If we assign other than this the system are considered to be public. In future there is possibility for address conflict. We need to buy public IP addresses from ISP's. The IP addresses from 192/ 172/ 10 are private IP Addresses which can be used internally in the companies. 202.65.136.146 171 NAT - Network Address Translation All the servers are managed with Private IP but , they are available externally by using Public IP. Whenever a request comes from Internet to a public IP. It is translated to Private IP or Routed to PVT IP. EPSIBIC - Extended Binary Code. PAM - Product Availability Matrix 32 Bit - Supports - 2GB 64 Bit - Allocates upto 4 GB Virtual Memory (Hard Disk) - Physical Memory (RAM) The Internet communication Manager ICMON started by using icom.exe All the startup logs are stored in Work directory. It is also called as Trace directory or Developer traces. Q. System not started? 1. Check the database is up and running by Start > run > sqlplus "as sysdba" 2. If the database is not started then start the database and look into the log files alert<SID>.log which resides in saptrace\ background directory Oracle\SID\saptrace\background Identify for Oracle errors that start with "ORA" Example 1033 .... DB_Connect Issues. i.e. The work process is unable to connect to the database. Check the connectivity, listener status, listener.log, listener ports, listener hostnames, database startup statuses etc. cmd> lsnrctl 14-Sep-09 172 07-Jul-09 BASIS Recently SAP -Manufact uring -Retail Applicati on Server Allocates Processes Accelerates the requests INSTANCE It's an Agent Communicates 173 with Database with the Native SQL - Dispatcher As the load goes on increases we will go with adding a Dialogue Instance Accessing the BASIS repository over the web... and for this SAP Implemented a component called ITS (Internet Transaction Server) separate tool windows specific. IIS (Microsoft internet information service) SAPWAS: SAP WEB APPLICATION SERVER which is capable of providing internet Including ICM 6.0 (Service) will handle the user request. ABAP BASIS BW into a common supply chain/ Platform The integrated ITS uses the common HTTP mechanism as in SAP Web AS, no additional Web server is required as, in the case of the standalone ITS. 08-Jul-09 BASIS - It provides the runtime environment for all SAP Components. - It provides a platform for User Management, Administration, Monitoring, Analysis, performance, tracing, auditing and development. 174 SU01 SM21 RZ20 SM20 ST03 ST01 SECR SE38 - User Management - Administration (System Logs) - Monitoring (CCMS) Computing Center Management System - Security Audit - Work Load Monitor - System Trace - Audit Information System - ABAP Editor There are various BASIS platforms for R/3 APO (Advanced Planner and Optimizer), - Sub Module of SCM BIW (Business Intelligence Warehouse), EBP (Enterprise Buyer Professional) etc., - Sub Module of SRM All these applications are robust, reliable, stable, and consistent which are built on ABAP language. LANGUAGE *************************** SINGLE CODE PAGE: The database is installed on a code page like 1100 which can support the like minded languages around 10 (En, German, Dutch.....) but each additional languages should be imported. SMLT Languages like Chinese, Thai, Korean, and Japanese cannot be accessed using the above code page, due to this reason we need multicode page (MDMP - Multi Display Multiple Language) on the same system. MDMP has various disadvantages during upgrade i.e., code page conversion. From SAPWEBAS 640 SAP provides only two versions (Non-Unicode and Unicode). SAP Stopped supporting blended (Multi) code pages i.e., MDMP and introduced UNICODE to support all the languages i.e., the characters are stored in more than one byte. Refer TCPDP table and I18N NON-UNICODE: languages. It is similar to single code page and supports only the like minded When there are no plans to expand the business globally this is the best option. In future we can perform a UNICODE Migration. (NON UNICODE to UNICODE) Process: UNICODE Migration 1. Ensure that the version is Unicode enabled like ECC6.0, BI7.0, and CRM2005 etc, 2. Use SAP Installation Master DVD - Additional Life Cycle. 175 - TASKS - System copy - Source system - export NUC 3. Target system System -> Import with Unicode Kernel. Note: We need to perform certain pre post steps. Unicode consumes 40% of additional resources than NUC. Refer UCMIGR... Upgrade Migration - 4.6c to ECC6.0 - NUC to Unicode. Note: As the Kernel is going to be changed during migration the whole database needs to be deleted. **************************** ITS: Internet Transaction Server In order to provide the web functionality to all SAP components ITS (Internet Transaction Server) is introduced by SAP. ITS installed on a separate machine or Application server to handle the web requests. In the earlier scenarios APPS Dispatcher used to handle the user request but in web scenario the HTTP requests are handled by ITS. ITS consists of two gates (WEB Gate and APPLICATION Gate) Process Flow: 1. The web requests are received by Wgate which are in the form of .HTML or .CSS (Cascading Style Sheets). 2. These requests are forwarded to Agate. 176 Diag is a protocol that is used to handle the request coming from SAPGUI on port 3200 Series 3200 + Instance Number 3. Agate converts web request into Dynpro specific requests so that they can be handled by Diag Protocol. 4. The Dispatcher in the Application server handles the request and process it. 5. Response is forwarded to Agate. 177 Time Consuming Not an Integrated Service It depends on IIS (Internet Information Server) to host the pages Non Business User input -> Queue -> Assign a Counter -> Screen -> Withdrawal -> Insert, Update or delete. Instead of ITS SAP included WEBAS 640 and included ICM service within the Application Server. (ICM - Internet Communication Manager) which is called IITS (Integrated Internet Server) Tcode: SITSPMON 178 IE -> [ICM + IITS] WEBAS Introduction of WEBAS Until versions R/3 4.6c (Kernel Version 4.6D) ITS provided the web functionality (APO 3.0, BIW 3.0 are the last basis components) SAP Introduced ICM (Internet Communication Manager) and named the platform as SAPWEBAS 6, this platform is going to be a common platform for all the SAP Applications even the ICM is introduced in SAPWEBAS and its still require ITS to process the web request. SAP introduced IITS which is integrated in WEBAS640. It is accessed by the tcode: SITSPMON BIW 3.5 ECC 5.0 ECC 6.0 XI 3.0 SCM 4.0 SRM 4.0 CRM 4.0 Are the SAP components that are installed on a common platform SAPWEBAS 640. Subsequently SAPWEBAS 700 and 710 are released 09-Jul-09 WEBAS ABAP could not provide Colorful, dynamic, chat, Knowledge Management, Work List, Rooms, WEBEX, offline, Logos etc., 179 Consider an Example - XI - Exchange Infrastructure: Provides communication from one system to another system. Exchange Messages called as Process Integration (or) Intelligent Broker (or) BPM using an adapter. 180 KM - Knowledge Management CM - Content Management TREX Engine - Text retrieval and classification engine searches the information and bring out from Terra Bytes of data. PI - Where the content is fetched either from BI, XI, as and when required The 4 Layers PI, BI, XI, Application Platform called as NETWEAVER 181 MDM ERP ECC SCM SRM CRM - Master Data Management - Enterprise Resource Planning - Enterprise Central Component - Supply Chain Management - Supplier Relationship Management - Customer Relationship Management NETWEAVER - PIPA P I P A - People Integration - Information Integration - Process Integration - Application Platform Note: For Netweaver ABAP is mandatory as the business lies in ABAP. NETWEAVER: Is a common platform which provides EP (Enterprise Portal), BI, PI, ABAP, JAVA & Mobile Integration. SAPWEBAS 640, SAPWEBAS JAVA 640, Portal Content, KM (Knowledge Management), CM (Content Management), PI content etc., provided as add-on. 182 Netweaver is introduced along with SAPWEBAS 640 but most of the components as add-on. i.e., also called Netweaver '04 S, SR1, SR2, SR3 From Netweaver '04 S, SR1, SR2, SR3 or Netweaver '07 all the above content provided on one single DVD. - The software that is required is Installation Master - Exports - Java Components - JCE Policy (Java Cryptography Extension) - Kernel - The respective database (DB2, SQL, ORACLE, MaxDB) After installation the entire content resides in the database only. Kernel resides at OS level. It provides runtime executables/ libraries that are required for SAP Engine (SAPWEBAS) The Installation master provides an option to install all the Netweaver components together with SAP application component (ERP, CRM, SCM, and SRM) Netweaver Components: ABAP, JAVA, XI, BI, PI... However WEBASABAP is a mandatory Note: EP (Enterprise portal is not a business component for Java and it is only meant for GUI and Formatting) and EP doesn't requires ABAP EP = EP Core + JAVA ERP and EP cannot put together in a single box. ERP and BI cannot put together in a single box. (OLTP) and (OLAP) XI - communication between one process to another process. MDM: Master Data Management - Data Consistency Try to populate the data from one repository to different servers MDM5.5, MDM7.0 Netweaver Components accelerates the business components. Usage Types: Provides certain functionality to the business components. Usage types are selected during the installation. Usage types are ABAP, JAVA, PI, BI, JAVA, EPCORE, EP, BI, MI (Mobile Infra), Development Infrastructure. ABAP - Mandatory for all the components except for EP JAVA - Mandatory for PI, EP, Mobile, BI-Java PI - Both ABAP + JAVA required BIJAVA - JAVA, EP, EPCORE EP CORE EP - JAVA Development 183 Infrastructure - JAVA MOBILE - ABAP, JAVA 10-Jul-09 Netweaver alone cannot bring business it should be coupled with one of the SAP Business component like ERP, CRM, SCM etc., However when we choose to install ERP, CRM, SCM they gets installed on ABAP platform which is a part of Netweaver. Netweaver Installation: 1. Use Installation Master 2. Select the respective Sapinst. (sapinst.exe for windows and ./sapinst on UNIX) 3. Select the installation Database (Oracle, SQL, MaxDB..) 4. Provide the following inputs 1. SID 2. Instance Number (00 to 97) 3. JCE Policy (Java Cryprography - which is used to provide secure communication over the web. 4. Master password for the users OS : <SID>adm : SAPService<SID> DB : ORA: Sys, System, Outln, MSS (Microsoft SQL Server): <SID> OS (UNIX) : ORA<SID> R/3 Specific application users : SAP*, DDIC R/3 DB Owners : SAP<SID> upto WAS640 : SAPSR3 for ABAP on WAS700 : SAPSR3DB fro JAVA on WAS700 MSS : <SID> Select username from DBA_USERS; 5. Provide the path for Software dump (Kernel, Exports, JAVA Components) on UNIX we may need to abrupt the installation and install the database but on windows the database can be installed before in hand. 6. Ports 3600 - 3697 - ABAP Message Server 3900 - 3999 - JAVA Message Server 3200 - 3297 - Dispatcher port 184 4700 - 4797 3300 - 3397 4800 - 4897 50000 - Dispatcher security port - Gateway port - Secured gateway port - JAVA instance port if instance number is 00 Say for eg if the instance number is 25 then 50000 (100 + 25) = 52500 04 is for Administration port : 52504 Say for eg 99 - 59904 - 59916 50008 - Telnet Port 50026 - SDM Ports (00 - Instance Number) Eg: https://201.17.12.22:50001 50001 - SSL (Https) ref: help.sap.com Starting ABAP Engine: Windows: UNIX : MMC (Microsoft Mgmt Console) startsap Startsap all : (Includes the Dialogue Instance) Startsap r3 Stopping ABAP Engine: Windows: UNIX : MMC (Microsoft Mgmt Console) stopsap Starting JAVA Engine: Same as starting ABAP Engine Starting Integrated Engine (ABAP + JAVA): ABAP dispatcher starts the JAVA instance provided the parameter rdisp/ start_j2ee is set to true or use SMICM to start manually. Notes (Patch) : This does the small corrections Support Package : Group of patches Support Stacks : Group of Support Packages (ABAP, BW, BASIS) Enhancement Pckg : is an upgrade to the current functionality 700, 7.01 (EHP1), 7.04 (EHP4) 185 Upgrade 640-700-710 Installation of Instances: It is an integrated installation which consists of 1. Central Services Instance 2. Central Instance 3. Database Instance Central Services instances are provided in JAVA Engine which consists of JAVA Message Server and Enque Server to provide load balancing to the web users and central locking for all the JAVA instances. Dialogue Process - Foreground ABAP Instance: Central Instance DVEBMGS (Dialogue, Update, Enque, BTC Message, Gateway and Spool) Dialogue Instance: Except Message and Enque (Dia, BTC, Spool, gateway & Update) Database Instance: Database Processes JAVA Instance: Consists of Dispatcher & Server processes Dispatcher-ABAP is used to handle the requests and process them based on FIFO Dispatcher allocates the requests to work process (Dialogue) for interactive communication. Dispatcher-JAVA is used to handle the requests and process them to server processes. Note: ipcclean in UNIX pagefile.sys in windows is used to clear the pages Resource at the disk level is a Semaphore. 186 187 11-Jul-09 A Business Configuration Set is a set of Customizing settings which are grouped according to logical, business management criteria to a unit. For documentary, quality assurance and re-use purposes which is independent of the original Customizing tables/views which is accessible across the system landscape. Service Desk Creation. SCPR20 - BCSet - Service_Desk_change_st32A13 - Create the change request - expert mode Continue Goto satellite system SM30 Look for BCOS_CUST Help - Create Support Message. ABAP Request Handling - Maintain - OSS_MSG -Save 188 - User submits the request using GUI - The request is received by the dispatcher - Dispatcher keeps the request in Queue. - Dispatcher serves the request based on FIFO - Dispatcher assigns the request to Work Process - Work process handles the request using Work Process Task Handler - Task Handler interpret the request and submit the request to Database - The database process the request and response is sent back to the user. JAVA Request Flow - User submits the request 189 - Request is handled by JAVA Dispatcher - Dispatcher assigns the least loaded server process - Server process assigns application thread manager to process the request - Server process processes the requests till it is completed/ or the memory is exhausted/ timeout - ATM Handles the user request internal process/ Intra process (For Locking) is handled by Server process. - Server process communicates with DB and the response is sent back to the user. - Central services are used for load balancing and locking purposes. (During an update) JAVA Startup - Use MMC - Startsap command - SMICM - or rdisp/j2ee_start=true used to start along with ABAP Engine but consumes at least 10 Mins to 30 Mins. Process of JAVA Startup - Database Instance - Central Services Instance - Central Instance - JAVA Dialogue Instance (Optional) Process Flow 1. User uses any of the above startup methods to start the JAVA Engine 2. The system is started by using startup profile START_DVEBMGS_<Hostname> (Integrated Engine) START_JC00_<Hostname> (Standalone JAVA Engine) 3. It also uses START_SCS01_<Hostname> for starting SAP Central Services 4. It uses default profile to start the engine with minimal parameters that are required by all the Dialogue Instances. 5. It uses the instance profile to start the engine with instance specific (Memory Buffer etc) <SID>_SCS01_Hostname for SCS and <SID>_DVEBMGS00_hostname for Integrated Engine and <SID>_JC00_Hostname for Standalone Java Engine 6. In order to start the JAVA engine Jcontrol process is used to initialize the system. 190 7. JControl initializes the bootstrap process to read the parameters from 8. JControl starts JLaunch process by reading instance.properties JLaunch - Dispatcher JLaunch - server process JAVA Engine Startup Flow Note: JControl reads from SDM/config/sdm_jstartup.properties Error logs are stored in DEV_JControl from the WORK Directory DEV_JLaunch DEV_Dispatcher DEV_Icm It consumes more time to start because bootstrap reads the parameters from the database to instance.properties and bootstrap initializes Jlaunch for dispatcher, jlaunch for SDM and while initializing Jlaunch for server process it synchronize the binaries(All logs) of the dispatcher and the servers. 1. What is JAVA Instance/ JAVA Cluster 2. What are the types of Installations and which of them are recommended based on the usage types? 3. What are the inputs that are required during the installation? 4. What are the various profiles that are used during startup & Explain the significance of them? 5. Explain the process of JAVA Engine startup & Describe the executables, files, logs and profiles that are used.? 6. Explain the JAVA file system? LAB 191 Installing SAP ECC6.0 on Win 2k3 Server Enterprise Edition Install the O/s - Allocate 15,000 MB = 15GB - Allocate the remaining for C Drive for D Drive eg: 223467MB = 223GB During installation of O/S - provide the system name : willsys11 - Organization name : willsys11 - Assign the product key - Assign the computer name : willsys11 - provide the Admin pwd : admin123 Install the LAN Drivers and assign the static IP Address : 172.17.10.11 255.255.0.0 Copy the SAP dump by accessing another machine \\willsys04\d$ Installing ECC6.0 - Install the j2sdk, se v1.4.2_12 - After installing copy the path from c:\j2sdk1.4.2_12\bin Set the Environment Variables from - My Computer - Properties - Advanced - click on environment variables - click on New Set variable name : JAVA_HOME Set variable value: c:\j2sdk1.4.2_12 (without \bin) - ok Now under system variable Search for "path" and highlight it and click on edit - under variable value : c:\j2sdk1.4.2_12\bin - ok Setting Virtual Memory - under Advanced tab - under performance click on settings 192 - select advanced tab - click on change under Virtual Memory and Hit change - select C: drive and set - custom size Initial size: 2046 Max-Size : 8000 If RAM is 2 GB we can select up to 8GB from HDD. Installing Database - Oracle 10G - Access the folder oraclelog\NT\Oracle\sapserver.cmd - D: - provide the SID eg: W11 SAP Installation. - run sapinst.exe During Installation it prompts for various inputs - SID - Master Password - JAVA Components - Exports - Kernel And prompts for SOLMAN Key get this from SOLMAN System. 12-Jul-09 Usagetypes.properties - Used to identify the usage types \usr\sap\<sid>\config\ usage.properties Specifies the configuration of the Netweaver system 1. Usage types ABAP, JAVA, EP, EPCORE, DI (Development Infrastructure), BI JAVA, PI and MI 2. Machine Type 193 NT INTEL, HP UNIX etc 3. Memory available on the system 4. The number of CPU's and CPU speed 5. System ID and Instance Number 6. Hostname and ports used along with backend ABAP Client. It also specifies the users that are created during installation along with the encrypted password. Note: SAPJSF user (Security Framework user) is created in ABAP Engine to communicate with JAVA Engine. This user reads the ABAP user master and ensure all the users are in the JAVA engine. JAVA engine doesn't let us to create users as the Data source will be in ABAP. Note: In an integrated installation (ABAP + JAVA) J2EE_ADMIN is the administrator and on standalone JAVA Engine (Administrator) is the userid that manages J2ee engine. IDM : Identity Management SAP* DDIC SAPCP These are not counted for Licensing DVEBMGS<Instance Number> - Straight away we can see the ABAP Engine It is the Instance directory which specifies the types of processes, engine type, instance number. It contains the following directories. 1. DATA: Used for storing the lock entries, statistical data etc DVEBMGS it is a Kernel directory (Soft link to the physical one) 2. IGS: Internet Graphic Server which is used to provide graphic services over the web. 3. J2EE: It specifies that the JAVA engine is installed on the Machine. It consists of the following directories 1. Admin Directory: Used for administrating the J2EE engine using Visual Admin tool. It also contains the directory Standalone Log Viewer to display the logs of the J2ee engine if its not started. Dispatcher + Server = Local instance (Cluster) 2. Cluster: It specifies the dispatcher, server and bootstrap process. It contains binaries that are required to start the above process. It also contains instance.properties to start the instance (We can find by what time the instance is started) 194 Cluster\dispatcher\log Defaulttrace.0.trc is a file available in the log directory for both server and dispatcher. 3. Config Tool: It provides a tool to change parameters of the instances either globally or locally. 4. Deploying: It is a tool that is used to deploy the small programs in to the JAVA engine. 5. JSPM: it is a tool to apply patches (JAVA Support Pack Manager) 6. Log Directory: sol\DVEBMGS00 it specifies the MMC log/ SM21 Logs with log goto slog - clear all the logs and that is equal to Syslog. SDM: <sid>\DVEBMGS - Software Deployment Manager It is used to apply the patches for various Netweaver640 and 700 and it is discontinued in 7.1 NETWEAVER TOOLS \usr\sap\<sid>\sys\global Sys consists of system executables (Kernel), profiles, global directory. Sys\exe directory : Consists of run time executables (Kernel) Sys\profile directory: consists of profiles to start and also to control the behavior of the instance Sys\global directory: consists of SLD (system landscape directory), XI folders, template config tool, Adobe services etc. \work directory: consists of developer traces, JVM Logs (Java Virtual Machine), Standard error logs starts with std and these are used to debug the startup errors. 1. Template Config Tool : It resides in global directory \usr\sap\<sid>\sys\global It is initialized by cfgtemplategui.bat (.sh in UNIX) This tool is used as a part of the post installation and used to set the system with minimal parameters that are required for an usage type. SAP Provides predefined templates to configure BW, EP, XI, J2EE engine etc. Double click on cfgtemplategui.bat Under choose action 195 Select apply and hit next. Select the template file and click next Used to set memory, CPU etc Note: Should not be executed after setting up the system because it will over write the changes. It is recommended to execute in the initial stages. 2. Log Viewer Standalone tool: It is used to provide the log access at O/S level when the instance is not started and also used to display the logs based on search text, date and time, severity etc., (Displays the logs in user friendly format) \usr\sap\<sid>\DVEBMSG\j2ee\admin\logviewer.standalone 3. SDM : Software deployment manager This is used to deploy and undeploy the support packages, small developments that are coming with extension .sca (SAP component Archive) .sda (SAP Deployable archives), .zip, .jar (JAVA Archives), .ear (Enterprise archives), .war (Web archives) etc. SDM is started as a process using the executable jlaunch. There will be only one SDM in the entire system. SDM has its own directory which contains binaries, config, log and libraries. It is started by using sdm_jstartup.properties in the \sdm\program\config. SDM is initialized by using remotegui.bat from \usr\sap\sol\DVEBMGS\SDM\program. It requires SDM Server data like hostname & SDM port 50018 During initialization it will read the repository information from sdmrepository.sdc (\sdm\prog\config) During deployment (applying the support pack) it takes backup of the repository. The major advantage of SDM is to undeploy the support packages(during conflicts) but its a disadvantage when compared with system consistency because it can undeploy the dependent packs also. SAP recommends to use JSPM from 7.0 onwards. In WEBAS 640/ NETWEAVER 640 JSPM is not available and in NW710 SDM is not available. SDM Directory contains a document related by SDM itself (SDMKIT.JAR) Changing the SDM Password: if SDM password is unknown we can set a new password using command line interface 196 sdm changepassword. Note: In order to change the password SDM should be running in standalone mode. SDM can be started in standalone or in integrated mode using command sdm jstartup sdmhome =<.....> [mode = integrated/ standalone] Note: it is always recommended to logoff from the SDM instead of closing the window. the window is closed but the SDM Client is still connected to the server in this case we need to restart the SDM. Deploying a support pack through SDM 1. Download the support pack from the market place. 2. Deploy (or) copy the patches into the shared folder so that (DEV, QTY, PRD) are accessed (Not mandatory to EPS) directory 3. login to SDM Tool 4. click on Deployment Tab. 5. Click add browse for .sca file and hit next 6. patch location can be a database, file system or J2ee engine. Depending upon the nature of the patch it updates any one of the above Click on next and click on start deployment Logviewer tab provides the deployment status along with the duration of the deployment. SDM reads the files from the specified location not eps/in and it has its own inbox to process the deployment. The patch status is obtained from system - information option in the home page http://<hostname>:50000 SDM startup modes are standalone/ Integrated. Default mode is integrated and standalone mode is used to change the password. 13-Jul-09 4. Config Tool: Used for Offline configuration. It is initialized by using a script configtool.bat /.sh on UNIX It resides in \usr\sap\<sid>\dvebmgs00\j2ee It connects to the database to modify the parameters of the J2ee engine when the engine is offline or online. Modifications will get effect only after a restart of the J2ee engine (the parameters are static) J2ee engine startup is not required to work with config tool. It is used for the following purposes a) To increase the server processes up to MAX 16 197 cluster = disp + server process Note: if we want to have more than 16 then we have to include dialogue JAVA instance. To handle the load we have to add server process. This is required when memory is available to configure the additional server processes. The server processes are used to handle the user requests. b) it is used to configure the JVM (JAVA Virtual Machine) memory settings. It is the only tool used to modify the JVM Settings. JAVA VIRTUAL MACHINE It is a platform specific software provided by sun Microsystems. It consists of java run time environment to interpret the JAVA programs. a) When JAVA programs are defined they used to save extension .JAVA (eg bank.java) it is compiled into bank.class file. This class file will be distributed to the customers irrespective of the operating system Authenticate - login Authorized - Executing tasks These files are interpreted by using JAVA Virtual Machine. JVM contains Byte code verifier and class loader. Initially JVM checks the class files and verify the bytes in the code and then signals to load the class file to display the screens/ Logic executed. This is the reason why JRE is required to execute JAVA Program. (Platform specific JVM should be installed on the customers system) b) It is used to configure various managers and services. c) It is used to store the Administrator password using option secure store. d) It is used to configure the user management to LDAP engine ie, users who are created in AD (Active Directory) server. LDAP protocol is used to transfer the users from AD to the Application platform. (ABAP/ JAVA) e) Offline configuration mode to change certain parameters eg: when all the users are locked, this option is used to enable SAP* user. when SAP* is enable no other user can work on the system. Unlock the admin users and disable SAP* (two restarts are required) f) It works only on the database as it needs to connect to the database using the OS authentication (doesn't require any userid and password) 5. Visual Admin Tool: 198 This is an admin tool which is used to change the static and dynamic parameters (Except JVM) It is initialized by using go.bat /.sh in UNIX which resides in j2ee\admin It works only online because it needs to connect to J2ee engine. It needs admin user , password, hostname and port p4 (50004). It can connect from any system using the above credentials. It is used to configure various services and managers. It can also used to start/stop various services and applications. It is discontinued in 7.10 NW but widely used in 640/ 700. 14-Jul-09 6. Shell Console Tool (or) Telnet tool It is used to login to the system remotely when the system is congested (Hourglass mode). From Command prompt telnet <Ipaddress/Hostname> telnet willsys11 50008 <port number> Provide the login details as J2EE_ADMIN and the password Prompt changes to > > lsc (list services) > man (gives the manual) In Netweaver 7.1 SAP provides Shell Console Tool in the J2ee Directory and up to Netweaver 7.0 telnet tool has to be executed manually from the command prompt. \usr\sap\<sid>\DVEBMSG\shellconsole from 7.1 only 7. JCMON or JControl Monitor It is initialized by using command line executable jcmon suffix with Jcmon pf ="path of the instance profile" Eg: D:\usr\sap>jcmon pf=d:\usr\sap\<sid>\sys\profile\wis_dvebmgs_hostname It provides the menu to administer cluster, memory and restart the processes if required. Command=> 0 to Exit Command=> 30 to refresh the instance data (It is used to clear the shared memory in use) 12 - To identify the processes 199 5 - This is used to monitor the status of the instance 8. JSPM - JAVA Support Patch/ Pack Manager tool It is introduced in Netweaver 7.0 to replace SDM tool. SDM is not available in NW 7.1 It reads the support packages, patches from \usr\sap\trans\eps\in Similar to SPAM but it works on SDM port and password. It is only executed in the <SID>ADM home. (The environment required for JSPM is provided by user <SID>ADM. It is initialized by go.bat which is available in JSPM directory. JSPM has its own patch level similar to SPAM which is updated by JSPM. JSPM is used to deploy business packages like employee self service, manager self service, new software components & additional usage types. It is also used to control the transport of objects between systems in the landscape. The main advantage of JSPM is undeployment is not possible, consistency between support packages are checked and displays the source and target patch levels. The another major advantage is the patches can be deployed arbitrarily like 1 to 5 (i.e missing the sequence). It is also used to upgrade kernel where the system will be restarted as per the requirement (NW Consultant should take the backup of the kernel) Process: Download the respective software into EPS\In directory (.sca, .sda, .sar etc) and place them in EPS\In Ensure that the logged in user is <SID>ADM. Initialize JSPM by using go.bat Specify the SDM Password (SDM and JSPM should not be operated simultaneously to avoid inconsistency of the system). Select the type of the package to apply Eg: Single Support package JSPM reads the EPS\In directory and displays if a valid support pack is available. Specify the patches target level (Select or Skip) Note: In earlier cases before applying any packs need to apply SPAM but here JSPM. 200 Support Packs SOL ERP NW - 18 EHP1 - EHP1 - EHP4 Note: Among the selected packages SAP Identifies which one be prioritized first in this case JSPM goes first. Select the target SP level can click on next to deploy the patches. JSPM maintains its own log files if any dependencies are missing it will abort the deployment. 9. USER Admin Tool It is used to administer the users, groups and roles. User admin is a part of NW Identity Management tool. UME - For user management PORTAL - for Portal engine J2ee - For J2ee Engine ABAP - roles Note: ABAP roles are groups in JAVA Engine. Standalone JAVA engine has various options lie user creation and password management in the user admin tool but whereas in the integrated engine the user management is taken over by ABAP Engine except assigning J2EE roles. 10. NWA Tool (NETWEAVER Admin Tool) It is available since NW7.0 and used for JAVA engine, administration, configuration and monitoring. It is used to perform the post installation activities based on the usage types. Also used to start/stop various services, process and applications. From NW7.10 all the visual admin tool tasks are performed by NWA Tool. It provides reports related to users, memory, performance, components etc similar to ST03. 11. SLD Tool (System Landscape Directory) http://<hostname>:50000/sid It is a landscape information provider service to provide the information of all the systems in the landscape along with products, software components, patch levels, clients information etc. (000,001, 066) 201 It is accessed by using the url : http://202.65.136.146:50000/sld It is effectively used in XI, PI and became a mandatory component as per ITIL/ Standards Infrastructure Library. 15-Jul-09 1. Template Config Tool. 2. Config Tool 3. SDM (Software Deployment Manager) 4. Visual Admin 5. Standalone log viewer 6. JSPM (JAVA Support Pack Manager) 7. JCMON (JControl Monitor) 8. Shell Console (Telnet) 9. User Admin 10. NWA (Netweaver Admin Tool) 11. SLD (System Landscape Directory) JAVA Startup Framework 202 203 DVEBMGS\ J2ee\ cluster\ server0\cfg\kernel Applications lies here for sync. \server0\apps\sap.com Applications only sync by the server process. DTD: Data type definition JAVA Startup Framework 1. JControl Initialization 2. Initialize bootstraps (Cluster) 3. Bootstrap reads properties from DB 4. Bootstrap updates instance.properties 5. JControl Initialises Jlaunch (DISP) 6. Dispatcher Kernel, Libraries are synchronized before they get started 7. JControl initialises JLaunch (SDM) 8. JControl initialises JLaunch (Server Process) 9. Server Kernel, Libraries, Binaries are synchronized before they get started 10.Server Starts the Application Note: Thread Manager is for System process Thread Application Manager is for the customer (Dispatcher cannot handle ATM) Kernel provides runtime which consists of Managers to work at J2ee Engine level The J2ee Engine contains the following Managers 1. Application Thread Manager 204 So each manager/ service has four values and the priority of execution as follows Global Default Global Custom Local default Local Custom Global configuration doesn't have any ID Eg: Have 5 dialogue instances with 5 server process each... It needs to maintain 5 Dispatchers/ 25 server process which requires editing the config tool 30 times or simply use Global configuration and edit only 2 times i.e., one for server and the other for the dispatcher Services: These are similar to SAP Transactions to perform certain tasks on the J2EE engine. These are also used to perform certain post-installation activities. 205 1. Log configuration Service: This is similar to SM18/ SM19 to trace the user activities. It is used to set the log locations for the applications. It is also used to set the traces for certain activities. It can be edited by choosing the server/dispatcher, or using the service in config tool/ Visual admin tool. Set the granularity of the log level (Using Min & Max) Severity is also setup based on requirement. Most of the services are available both in config tool and visual admin tool. VA services are explanatory than config tool services and also VA provides additional functionality. Eg: In Log Configurator Service Tracing option is provided in VA Tool whereas in config tool it is not provided. It is used to set (SQL, RFC, Enque, Buffer ST05 Trace) the traces, logs. Logs: These are by default written to the default log locations without any initiation/ Initiative. These are logged into categories. Traces: These are explicitly switch on by the user to trace the user activities. These are logged into locations. Difference between categories & locations Logs & Traces We can also switch SQL Trace similar to ST05 to identify the expensive SQL Statement. J2ee\cluster\dispatcher\log 2. Log Viewer Service: It is used to display the logs and it is similar to standalone log viewer service. 16-Jul-09 3. Licensing Adapter Service: This is used to apply the license from the text file. Goto Market place click on SAP Support Portal under FOR CUSTOMERS Provide SUSERID and pwd Click on Keys and Request Tab : www.service.sap.com 206 Click on Request Permanent License Key Select the Installation Type Click on New System Provide SID as PRD System Name : Hostname System Type Product: NW Version: NW 7.0 (2004 S) System: NT/ INTEL Database: Hit Continue Note: In earlier versions we use to type the command saplicense -get From Visual Admin Tool Licensing Adapter for Hardware Key Note: It contains 2 licenses one is standard license (Permanent) which is valid till 31.12.9999 and the other one is maintenance certificate which is valid up to 3 months. Maintenance certificate locks the SPAM and JSPM after 3 Months. For ABAP - SAINT & SPAM For JAVA - SDM & JSPM Apply the license through Market place Display license script Download to PC From Visual Admin - Click (Install license from File) and Upload the file. 4. JCORFC Provider Services: It is similar to SM59 used to create RFC connections to the backend systems. Program ID plays an important role to establish connection between the systems. From Visual Admin Tool - JCoRFC Provider Provide : Program ID : JAVA_2_ABAP Gatewayhost : WILSOLMAN Gateway Service : Sapgw00 Service Count :4 207 (Backend EP System) Application Server System Number : 00 Client Logon Lang User : wilsolman : 001 : en : sapuser SMGW is the T-Code to verify whether the connection is established or not. For single Prog ID Max 20 RFC can be generated. Specify Program ID, Gateway Host (If the gateway is installed separately) Gateway service (< Instance>) Server Count (To specify the number of server processes that can work simultaneously for this Program ID, Specify Hostname, Client, Userid, Password, Language (Details of the backend system) 5. HTTP Provider Service : It is used to handle the request and keep them in socket queue. They will wait in the queue until they are processed (or) timeout (This is applicable for dispatcher only). From Visual Admin Dispatcher - Services HTTP Provider Keep Alive time to 75 instead 15 Sec. On server side we have to set Cache Size up to 999 and file buffer size & Other parameters specified bye SAP from VA Tool. 6. Deploy Service: It is used to start and stop the deployed applications. It is widely used in XI/ PI to check the specified applications are running, if not manually run/ start the application. It is also useful to deploy the small application like (*.ear) Enterprise Archive files. From VA Tool - Click on Deploy The small programs which are developed in-house are moved using this service (When NWDP not in place) Netweaver Development Infrastructure. Note: [ANT] is a tool to archive .ear format files 208 7. Locking Adapter Service It is similar to SM12 and is used to identify the users who are explicitly locking the resources for update. We can select the user and release the lock. (Process needs to be followed) Enqueue Table (100MB size) determines the locking table size enque/table_size 8. Monitoring Service It is used to provide monitoring for all the kernel, services and performance of the system. It is similar to CCMS Monitor (RZ20) alert monitor. Eg: If the defined threads are completely used then Thread congestion occurs. If no threads are available the system marks the respective Manager/ Service in traffic light signals (Yellow-Green) in this case it is Red. 9. Performance Tracing It is similar to SE30 runtime analysis of ABAP Program and ST05 system trace to trace SQL, RFC, Buffers and enqueue. We need to switch on the trace explicitly for a specific module along with the user name. 10. JARM (JAVA Application Response Time Management) Used to fetch the information of users, threads, component and requests. Similar to ST03-(Work Load Analysis) 11. Security Provider Service It is similar to SU01, Pfcg which is used to create users and assign roles. It is also similar to SM04 to display the login Users. 12. SLD Data Supplier Service: This service populates the JAVA Engine information into SLD for every 720 Minutes (12Hrs) in ABAP Engine RZ70 is used to populate SLD. 13. UME Provider Service: 209 It is used to set the logon parameters similar to security parameters that starts with login in RZ10 Login\password digits Login\lang etc. Note: Form Netweaver 7.10 onwards VA tool is discontinued instead NWA is implemented. 17-Jul-09 Post Installation Activities for JAVA Engine: 1. Applying license (Licensing Adapter Service) 2. Configuring logs (Log Configurator) 3. Adding Server Process (Config Tool) 4. Configuring Time out period (Http Provider) 5. Configuring JAVA System to send information to SLD (SLD Data Supplier Service) 6. Defining Admin Users 7. Working with UME Provider service to restrict the parameters of userid and password 8. Assigning security roles using security provider service. 9. Define RFC connections from JAVA to backend systems (JCORFC) 10. Applying patches, add-ons using SDM & JSPM (Update the system to level 18) 11. Defined backup schedule using BRTools (Oracle), Enterprise Manager in SQL Server 12. Installed additional dialogue instances 13. Defined process documentation 14. Installed Netweaver Developer studio to start the development. 15. Configured JVM memory using config tool. 16. Defined the user management UME - for Integrated SU01, for a standalone JAVA engine (SU01, LDAP, UME(Java Itself)) define user store. 17. Configured SLD 18. Define System Landscape (http://<hostname>:50000/devinf) usage type DI should be selected. Note: Solution Manager installed with usage type JAVA and SLD is configured on it. Both the systems are used to maintain the landscape information. Need to take complete \usr directory backup for JAVA CIM - Component Information Model. CR_Content - This is content repository This two information's are updated by SAP as per Note 669669 210 Always one patch less than the Market place available patch. 19. Goto DB13 or BRTOOLS to schedule backup. On the SQL Server - Management Studio Select the system Goto Maintenance plan Define the schedule for backup. Or Select database rt click - Backup BRTOOLS Backup Recover Restore tool DB13 calls internally BRTools. System Copy of JAVA Based systems System Copy / Homogenous Copy Existing System PRD Upgrade PRD without touching the box PRD. OS For this take the backup of PRD DB New system build Patches Install central instance Sapinst Tool Install database .......................... Restoring DB Refresh/ System Refresh DEV 120GB PRD QAS 125GB PRD QAS 2009 (500GB) Rename PRD to QAS Repository consists of Functions, Screens, Programs etc.., Scenario: 1. JAVA System Copy 2. Heterogeneous System Copy 211 JAVA System Copy/ DB refresh EP XI BI DI ERP CRM SCM SRM With JAVA Stack SAP Provides system copy option in the installation master DVD from Netweaver onwards. Insert Installation master - Additional software tasks life cycle - select source system (PRD) - Preparation Export Split - select export database 1. File System 2. Database backup Only export the file system - Goto the target system import the database System Copy: While performing a system copy using SAP tools it will prompt whether database can be exported (use database specific methods) This option should be unchecked if we are performing the following. 1. Code page conversion 2. OS / DB Migration changing OS or DB Note: It is a time consuming process because the complete database content is exported into an independent format which will suite to all operating systems and databases. In case of a system refresh select Database specific tools so that the DB can be restored from a valid backup which will minimizes the export and import. In this case it exports the directory structure, SDM and application specific content. (D:\tmp) 18-Jul-09 Discussion class about System Copy. 19-Jul-09 No class 20-Jul-09 212 Memory Management Physical Memory: The memory that is installed on the machine and allocated to the machine by PHYS_MEMSIZE. Virtual Memory: (SWAP) The memory that is installed could not cater to the requirements of the users so a part of disk is used temporarily which is referred as virtual memory. It should atleast 20GB or 3 times the RAM (which ever is larger) Shared Memory: The memory that is shared by OS DB and R3 Processes. Local Memory: The memory reserved for a work process Ztta/ roll_area Extended Memory: The memory that is exclusively measured for all the SAP WP (It is a part of shared memory) 213 Ztta/roll_extension per user context Em/initial_size_mb = 512MB Heap Memory: The memory that is dedicated to a process till the completion of the task or timeout. ABAP/heaplimit ABAP/heap_area_dia ABAP/heap_area_nondia ABAP/heap_area_total Note: If any error encountered like Storage_parameters_wrong_set its a memory issue. Memory Usage sequence: Zttaroll_first Zttaroll_ext Roll_Area ABAP/ Heap 20 KB 500MB 20MB 2 GB PVT Mode DIA - WP congestion or Hour glass Mode WP goes to pvt mode then use DPMON and kill the session. Eg: Note: Use only 50% of Extnd Memory for PVT Minimizing the work process will causes Hour Glass 214 Eg: Search for Rdisp* from Rz10 Rdisp/max_priv_time Rdisp/wppriv_max_no (wont waits for default 600secs) Eg: Say for eg: 4GB 50% 2GB 2GB/ 250 = 8 Note: SM04 is used to find how much memory is consuming with Tcode. ST02 Over all memory Page, Roll, Heap SM50 Refer : SM56/ SM66 Note: All the memory parameters need a restart as the memory is @ OS level. Command soladm> memlimits Multiple instances on a single server Then for eg : 64GB 16 16 16 16 PHYS_MEMSIZE 215 MEMORY ALLOCATION: 1. When a user request for a resource the Work Process rolls the user context for handling the task. 2. In order to roll in the User Context it consumes memory that is configured by memory ztta/roll_first. 3. If this memory is not sufficient then it uses the extended memory i.e., configured by ztta/roll_extension 4. If Extended memory is not sufficient then it uses the remaining part of the local memory i.e. configured by ztta/roll_area 5. If local memory is not sufficient the it uses the heap memory that is configured by abap/heap_area_dia which is a part of abap/heap_area_total 6. if the work process uses the heap memory it is said to be in private mode and its runtime cannot be controlled by Rdisp/max_wp_runtime but it is controlled by Rdisp/max_priv_time If more number of WP goes into pvt mode then memory bottle neck/ hourglass/ WP congestion occurs which can be resolved by killing the expensive work process using DPMON because logon is not possible to kill through SM50. Each WP required around 75MB to 150MB (DVEBMGS) of memory. This memory should be configured by (PHYS_MEMSIZE). Each dialogue WP serves 5 - 10 Users. The above scenario is on process based. JAVA MEMORY ALLOCATION JAVA memory is managed by JAVA Virtual machine. The programs are loaded using class loader, byte codes are verified before they are interpreted. JAVA uses heap memory to ensure that the requests are completed. Heap memory is configured using -XMS 1024M from config tool. It is only configured for Active instances i.e. only local configuration is allowed. Dispatcher and server has their own values. 216 While interpreting the requests if a new content is fetched it uses NEW GENERATION MEMORY which is configured by parameter. - XX:NEWSIZE - XX:MAXNEWSIZE It will be 1/3rd the size of heap memory Eg: for 1GB(1024) Heap 341MB PERMANANT GENERATION MEMORY: If the content that is interpreter is required permanently (JVM) (classes, packages, methods) then it will uses PERMANANT GENERATION MEMORY. It is configure by the parameter -XX: PERMSIZE -XX: MAXPERMSIZE It will be around 1/4th of the Heap memory. Note: Only server process requires more memory because it needs to process the user requests. OLD GENERATION MEMORY: (Tenured Generation) If the content is old and can be reused then it will uses OLD/ Tenured generation. It is calculated by using new generation memory. Heap memory = OLD + NEW GENERATION MEMORY For server process the new generation memory will be 1/6th of the Heap size or 1/4th of the PERM size. If the content is not eligible to store it will be thrown into garbage (GC) Should be careful while changing the memory parameters 1. It effects only after restarting the system. 21-Jul-09 JAVA Authorization Concept - User Master record in SAP system - SU01 or USR02 table authentication in SAP system - It provides userid and password - the data/functions that needs access are provided with the help of Roles and Profiles. 217 - Authorization objects, Authorization fields & Activities Pfcg, su20, su22, su24, surc, pfud - Authorization activities table creation of TACT & TACTZ - JAVA uses (Userid and Pwd) Authentication method comes from user store. User store can be 1. ABAP Engine 2. JAVA Engine itself. 3. Directory server using LDAP 4. UDDI (Universal Directory Description Integration) How to configure user Goto Security Provider in Visual Admin Tool (go. bat) JAVA Authorization Concept ABAP using SU01 JAVA Using UME Directory Server Using LDAP UDDI provider Goto - Security Provider service in Visual Admin tool - User Management Change Mode - Click on Manage Security Store Do not modify the store unless it is recommended by SAP. The default store is UME store (User Management Engine). Universal Description Discovery and Integration is used to populate the users from the third party database (Oracle, Siebel etc). It is an industry standard to populate the users from one database to other using web services. UME resides in J2ee Engine UME can get the users in the following ways 1. Using ABAP SU01 (Mandatory in case of an Integrated Installation i.e. ABAP + JAVA). The details are available in UME Provider Service from VA tool. Note: No need to create RFC's to have the users to replicate in JAVA which has been created in ABAP (SU01) & LDAP. We can also use VA tool to get the configuration of the back end engine. It is also possible to have LDAP in the back end engine i.e. users can be populated in ABAP engine using LDAP. 218 Note: In case of Integrated engine, ABAP engine take over the complete user management i.e. users are created only through SU01 (The back end engine can get users from either LDAP or CUA) Note: No Client Mechanism in JAVA Engine Stand alone JAVA Engine In order to ensure the consistency of user management SAP Allows only one data store to populate the users. UME can get the users from any one of the following Data source. a) LDAP (Light Weight Directory Access protocol) b) SU01 of ABAP Engine c) UME itself d) UDDI (Universal Directory Description Integration) a) LDAP (Light Weight Directory Access protocol) It is used to populate the users from a directory server (MSADS - Microsoft Active Directory), (Lotus-Domino from IBM), IPlanet. Goto - Config Tool (usr\sap\<sid>\jc01\j2ee\config tool.bat) Select UME LDAP data and provide the following info. 219 (datasource_ldap.xml) - Specify the server name ................ willsys.saperp.net - specify the server port ................ 389 (default for MSADS) - specify the active user, password to read the info from ADS - specify the userpath, account and group path. - save and test the connection/ Test authorization Userpath: it shows where the users are placed common name : BASIS The above information is provided by Domain administrator. The same can be configured using User Admin tool. http://<hostname>:50000/ useradmin Click on Configuration_provider and provide the above details. Save and restart to get this effected. b) Users from ABAP engine Goto - UME Provider service / User Admin tool Click on configuration Select the abap.xml file and specify Client, userid/ pwd, Logon lang and host name. SAPJSF - this user contains the role. * SAP_BC_JSF_Communication_RO (read only) we can also cerate our own user but the above role is required to communicate with J2ee. c) UME Engine The UME manages users by itself (Very rare) Goto - User Admin to create user Assign roles etc We can also use Visual Admin tool - security provider service - User management to create users Roles: Roles are used to provide access to data and functions. As discussed above users are only populated from the backend systems we need to assign roles in the J2ee engine to access the functionality over the web so, in order to access a report on the web the user should have permissions 220 both on the J2ee/ ABAP (back end system). If any one of them are missing user cannot access the functionality. R/3 Roles are groups in JAVA Engine UME Roles Security Roles R/3 Roles - To work on JAVA Engine - To restrict the application - are the groups in JAVA Group of roles are controlled by authorization group. SU54 Authorization Group. Refer: TDDAT, TDRG 22-Jul-09 ROLES JAVA Roles ABAP Roles Actions Authority check Permissions Authority Object Defined in programs field value Role: Is the collection of favorites, menus, composite profiles etc. Roles are used to protect the base of the JAVA Engine NOTE: SAP_ALL (S_RFC is not accessed) ABAP roles wont play any role in JAVA authorization SOX: Segregating roles to different users. A business transaction should not be assigned to a single person to avoid the fund misusage 221 Sarbanes-Oxley Act (SOX) 23-Jul-09 AUTHORIZATION ROLES: Roles provide the activities that can be performed by user. ABAP roles does not have any authorization in JAVA Engine. JAVA Roles are defined as 2 types 1. UME Roles 2. J2EE Security roles. UME Roles: J2ee core engine is built with Java programs. Each program that needs control is defined by permissions. - Permissions are grouped into actions - Actions are assigned to the roles Note: There is no need to create UME roles unless SOX is in place. a) User Administration b) Role and Administration c) Support and Administration J2EE Security Roles 222 SAP Applications are ported on J2EE Engine. These applications provide functionality to communicate with backend system (functionality means screens, programs or generic connection to the back end) Each Application should be defined with roles that appears as J2EE security roles. As the programs needs security the developer should identify and define them during development. During deployment the descriptions should specify the roles. In most of the programs web.xml contains the roles and these are displayed in Visual Admin tool - Services - Security provider service - Security roles. These roles need to be assigned to the users using VA tool. Due to the discontinuation of VA Tool, these roles will be moved to portal roles and can be assigned using User Admin tool. Example: SLD: The role name is lcradministrator is now displayed as UME Role. However other application roles will be displayed as portal roles. Portal roles are application roles that are used to protect business packages. Even though full authorization is provided in JAVA engine we may not able to access the content/ functionality in the back end system unless ABAP roles are assigned to the user. Note: ABAP roles are used to protect the sensitive data like HR information, Functional information, Material information, Sale Info etc. Java roles provide screens, pages to display the above data. User should authenticate to login JAVA and Authorized to access the screens. Also should have authorization in the back end engine. SAP_BC_Roles SU, RZ (Profiles, Alerts, CCMS) SM (Monitoring) ST (traces, Transport) LDAP - SM59 1. Execute SM59 2. Define a connection of Type T 3. Specify the connection (LDAP Connector) 4. Create an (System User) not SU01 user 5 Define LDAP Server by using connector 6. Connect to the LDAP server using system user 7. Define LDAPMAP for user attributes (users that are defined in ADS needs to be mapped w.r.t. SU01) 8. The traffic light should be green 223 9. Use LDAPLog to check the user synchronization logs. 10. Schedule synchronization using RSLDAPSync_user 11. Use RSLDAPTEST in SA38 to test ADS (Active Directory Server) JAVA Monitoring 1. Monitor the work directory so that Dev_Rfc; Dev_Rd are not populated largely (the growth indicates the RFC issue). 2. Log files in cluster directory and archive them frequently. Log files such as default.trc J2ee\cluster\server0 3 Monitor the space (there should not much growth on the file system, unless the log files grow abnormally, patch application, tran/eps/in (Can be cleared) 4. Monitor the growth of the Archived logs. 5. The DB growth will be normal as there were no updates but keep an eye on the size of DB if custom updates are defined. JAVA require only memory and CPU no need of DB Request -----> JAVA ----->Stores in the ERP ABAP System Select count(*) from DBA_TABLES where owner = 'SAPSR3DB'; 333 Where as for SAPSR3 29327 6. Use log viewer service to monitor the logs related to the applications. 7. Ensure that traces are not switched on during normal operations(they will fill the OS and the J2EE engine may not be started) 8. Using monitoring service to monitor the user request overview. component overview and identify the critical requests with high response time. 9. The response time is defined as 2 to 3 seconds depending on the system resources.(It purely depends on the backend system database time) 10. The backend system may sabotage(damage) the response time of J2ee Engine so it is also required to fine tune the back end systems (running DB stats, identify the missing indexes etc) 224 11. User creation and role assignment 12. Patching the systems using SDM and JSPM 13. Upgrade the kernel to level 185 14. Upgrade the system to NW EHP1 15. Deployed business packages like ESS, MSS, XMII and BI Note: X Cross APPs - It is a manufacturing, integration and Intelligence 16. Worked with SLD assigned roles LCR* to configure SLD both manually and using NWA Tool. 17. Installed standalone gateway/ and configured parameter Data supplier 18. Configured ABAP engine using RZ70 to populate information into SLD. 19. Configured JAVA engine using SLD DS service to populate info in to SLD 20. Defined technical systems of ABAP, JAVA and NON-SAP systems 21. Imported the latest CR Content into SLD from the Market place. 22. Performed backup of the SLD so that it can be imported during SLD Inconsistencies 23. Defined XI Domain and included technical & business systems. 24. Displayed the SLD Logs during Import errors 25. Defined products, software components for third party vendors. 26. Define the landscape and include all the systems in the landscape. SOLMAN Administration TADM 10_2 SLD SLD is only a landscape information service based on J2EE engine. 225 24-Jul-09 SLD: SYSTEM LANDSCAPE DIRECTORY AND SOLUTION MANAGER SLD provides the landscape information of both SAP and NON-SAP systems. This is required as a part of the ITIL standards. IT Infrastructure library standards. DMTF- Distributed Management task force is an initiative to provide the information of the available systems in the landscape. SLD - DMTF SLD is available using url http://<hostname>:50000/sld. In order to work with SLD we need lcradministrator role. It can be assigned using Visual Admin Tool but now in User Admin Tool. SLD can be initialized by using NWA tool. By default SLD is configured in the J2EE engine. NWA tool is to check the SLD, Startup and also the availability of SLD to other systems. Eg. SLD on a standalone J2EE engine is not available to other systems, because SLD needs a gateway which is available through ABAP engine. To work with standalone gateway to be installed on the SLD. RZ70 NWA Tool - click - deploy and change configuration views 226 - Initial configuration or - All configuration tasks Post Installation activities can be done from here for PI, BI, MI, EP, etc. Installing Standalone Gateway: Sapinst.exe - Netweaver 2004s - Standalone Engine - Gateway - Gateway installation SLDDSUSER (for Directory Server User) SDAPIUSER (for communication) Created with master passwords SLD_UC SLD_NUC RFC's are created to establish communication with SLD. REGISTERING ABAP SYSTEM: We can register a system in SLD, but it is recommended to use RZ70 in ABAP engine 227 Specify the following details 1. BTC job interval (default is 720 minutes) 2. Specify the RFC (Use explicit if there is an RFC customized to communicate with SLD. Automatic (Recommended) RFC to SLD_UC/ SLD_NUC. 3. Specify the SLD Bridge information SLD host and the gateway (we need to install gateway in case of J2EE engine) 4. SAVE and Activate / Execute to send the information to SLD. SAP_SLD_DATA_COLLECT SAP_SLD_DATA_STARTUP 5. It uses SLD_UC RFC connection (Type TCP/IP 'T') REGISTERING JAVA ENGINE 1. Run Visual admin tool 2. Goto SLD Data Supplier Service 3. Specify the details like SLD Host and Gateway 4. Save the settings with interval 720 Minutes. The system is registered in SLD REGISTERING NON-SAP SYSTEMS Systems like XI, Seibel, Remedy can be registered as a third party systems. To define a third party system we need to define Product and the Software component version. Under software Catalog - Click products SLD is used for the following 1. Used to register ABAP, JAVA and NON-SAP Systems. 2. Used as LIS (Landscape Information Provider System) 3. It provides the details of each managed systems like OS, DB, SAP Application, patch levels, client information, logon groups, number of instances, message server etc. 4. It provides the available and current patch level information using CIM/ CR_Content (Component Information Model and Content Repository) This information is updated by downloading from SAP Market place using note 669669. 5. It is also used to import and export the CIM information. 228 6. It is used to define the system landscape and system domain. 7. Used to define business systems (Business systems are associated systems that are used in XI Domain) (Technical system is a system which is pointed to Hostname, RFC and the Gateway) But business system is a technical system pointing to a business client. It is possible to have more business systems from a single technical system. 8. All the systems to configure as backend for EP, XI, BI needs to be registered as Technical systems in SLD. 25-Jul-09 SLD, CIMSAP.zip, CR_CONTENT.zip contains their own versions Goto SLD Administration and click on details to display the versions. TYPES OF SLD 1. SINGLE SLD There will be only one SLD in the landscape which provides the complete information of systems in the landscape. This is used in small mid sized companies where only one landscape is maintained. 2. DISTRIBUTED SLD Companies like HP, P&G, GE, Coke has their global presence through out the world which maintains multiple landscapes across the world. It will be difficult to fetch the information of all the systems using single SLD. So it is recommended to have individual SLD for each landscape and communicate each other using data suppliers. Note: 1.4.31 contains 382 Products and 2189 Software components. Downloads Tab > SAP Distribution Center >Downloads >Support Patches and Contents 229 >My Company Application Component CIMSAP_CR > Import the file to this folder. CIMSAP.ZIP, CR_CONTENT.ZIP provides the product and software components versions that are released by SAP. It is used for comparison with market place products. 3. ISLAND SLD Companies may require Data security. Production systems and they doesn't want the SLD to be shared between DEV, QAS and PRD. All the production systems in the landscape uses a different SLD called as ISLAND SLD. SLD can be started and stopped using the option Administration. It will not effect the operation of J2EE Engine. SLD Log 1. It provides the log settings and filter 2. Used to display the logs of a SLD runtime 3. Export and Import logs 4. To display the SLD, CIM and CR Content Profile It is used to set various parameters that are required by the SLD (Do not change the parameters during import, export and backup) 230 Eg: In a standalone J2ee installed reset the Data supplier parameter. Gateway host, gateway service. Default trace should be false. Note: ABAP should know which gateway it should be used. Data Supplier: We can configure other SLD's in case if we are defining distributed SLD. System Message: SM069 SM02 Content: Import export backup. It provides the product and software component information along with systems that are configured on the SLD. Import: Basically this is used to import the content that is delivered by SAP. But we can also import the content that is exported earlier from the same SLD. Backup: It is used to take the backup of SLD content. It contains only time stamp to differentiate between backups. Backup (Copy of SLD Content) Export: It is similar to backup but versions are maintained between exports along with time stamp. Content Maintenance: Used to define the role of systems in the landscape Eg: XI-Domain, Integration Repository, Adapter Engine, TREX server. Also used to define associated systems in the XI-Domain. Class Browser: It displays the class information of the CIM Model. Change Logs: Used to display the logs of content change based on user name, class name and the time interval. Name Space: Used to define the namespace for developing the objects by default SLD/Active is provided. 231 26-Jul-09 UPGRADE MOTIVATION 1. The product is out of maintenance and support. Eg: R/3 4.6C maintenance is expires on Dec 2005 Each SAP Product is supported based 5-1-2 i.e. 5 Years with normal maintenance fee i.e. 17% 6 Year with additional 2% i.e. 19% and 7 Year and 8th Year with additional 2% i.e. 21% + Country Taxes. The additional fees are based on total cost + additional users 4.7 Enterprise edition normal maintenance ends in 2009 100 Users - 50 Lakhs 150 Users - 50 Lakhs + 10 Lakhs ----------- 2 Years The license is valid till 31.12.9999 SAP Supports support packages, stacks, notes, patches, upgrade, runtime support, license key, developer keys etc. All of the above can be obtained by using suserid of the other company Maintenance optimizer is introduced to approve the patches related to our landscape. From JAN 2009 maintenance certificate will be issued for every 3 months. After 3 months it locks the SPAM. The Hardware doesn't support the current load and users encounter-frequent bottle necks on memory CPU and storage. To get the enhanced features that are provided in the current release. SAP upgrade may involves O/S and database upgrade which drastically improves performance on the new hardware. Upgrade never impacts on the DB Size. The upgrade only upgrades data dictionary and repository objects. The same OS, DB, R/3 patch levels for homogenous. Different OS, Different DB but same R/3 version with patch levels- Heterogeneous. It is not possible to refresh database of 4.7EE on ECC5.0 vice versa because the complete DD and Repository is different. If the DB Schema ID/ Owner is SAPR3... then the version is 4.6C and below. 232 If the DB Schema ID/ Owner is SAP<SID> it is 4.7EE - ECC5.0 If the DB Schema ID/ Owner is SAPSR3 then it is an ABAP system on NW7.0 If the DB Schema ID/ Owner is SAPSR3DB then it is JAVA sys on NW7.0 If the DB Schema ID/ Owner is SAPSR3SHD then it is a shadow instance on NW7.0 SAPSR4 - another instance. UPGRADE PLAN 1. Download upgrade master/ upgrade technical guide 2. Verify the compatibility of OS/DB/SMP/PAM (Product Availability Matrix) 3. Perform Hardware sizing with expected growth of database for next 3 years. 4. Run the prepare well in advance. 5. Download the software from Market place/ SWDC 6. Download relevant JRE 7. Download upgrade notes and known problems 8. Upgrade key from solution manager and upgrade key from master note are required. 9. Decision on support packages 10. Decision on Add-ons 11. Decision on Languages 12. Upgrade SAPUP, R3TRANS, SAPCAR, TP if required. 13. SPDD and SPAU correction needs to be handled. 14. Do not skip any phase in prepare/ modify the logs manually. Read the checks.log for the prepare errors. 15. Upgrade should be performed in the sequence of landscape. 16. The upgrade timelines should be calculated on the mock system with production data. 17. Define the best strategy for upgrade (Downtime/ Resource) minimised 18. Upgrade may involve OS, DB upgrades as well plan them accordingly/ separately (OS , R/3, DB should not be done at a time) Eg: WinNT Oracle 8i 4.6c OS upgrade from NT to 2003/2008 Oracle 8i to 9.2 to 10.2.0.4 R/3 4.6c to ECC6.0 SR3 19. Unicode consumes atleast 40% more than the current system resources. 27-Jul-09 233 20. Development and Technical teams need to certify the upgrade before going live. 21. Prepare and upgrade phase list are provided with expected percentage of time. Use that list to document the phases and to update the status to management and SAP. 22. Document all the interfaces and 3rd party tools like IFS, VERTEX, VIRSA, Background Schedulers like TIDAL, MAESTRO, REDWOOD, CONTROL IN etc. Running Prepare Prepare need to be executed and ensure that all the prepare phases are run successfully. Prepare prepares the system for upgrade by checking all the pre-requisites and documents in checks.log Mount the upgrade master and execute prepare.bat to create a directory and extract executables. On UNIX we may need to create /usr/sap/put with SIDADM as the owner with atleast 10GB of space. Upgrade runs on client - server mode. So upgrade server needs to be started to run the upgrade assistant. Use the following commands to start the server and GUI JAVA -cp<upgrade directory> \ua\ua.jar NOTE: There is no upgrade to ECC6.0 from below versions 4.6c MySAP (CRM, SRM, SCM..) Accelerated Components (XI,PI, BI,..........) All the components are priced based on business suite. A user created in component can access other components with same license key. SR1 ->SR2 ->SR3 ->EHP1 ->EHP2 ->EHP3 Say for Eg: if a product costs 60 Lakhs 50% discount will be given by the SAP 30 Lakhs but the maintenance cost is calculated on the whole (60L) PREPARE Can run during production operations. It is used to run before upgrade 234 I. INPUT PHASE It checks all the pre-requisites and writes into checks.log OS, DB upgrade, Additional Hardware. All the above phases can run individually or can run as a total. It checks for the following OS Versions, DB versions, Disk space, File system, Patches, languages, kernel, readability of profiles etc. Eg: If profiles (Startup, Default, Instance) are corrupted or not readable the PREPARE fails. \put directory is an upgrade directory. In the INPUT phase provide the following 1. SAP<SID>, Instance number, batch host (The instance that provides the background process). Profile paths \usr\sap\<sid>\sys\profile, Host name, Mount point of CD's (Upgrade master, kernel, upgrade languages, upgrade exports) From 4.6c to ECC6.0 II. INITIALISATION PHASE Specify the parameter dir_put (put = \usr\sap\put) put directory is the upgrade directory which hosts exe, log etc. During initialization it checks for OS, DB Versions, checks for enough space in the put directory for import, checks RFC connection using DDIC pwd and the client. Checks the connectivity with the DB. 235 III. IMPORT PHASE It performs extraction of release dependent data and the support package imports. It performs a test import (DDIC Import) activation, distribution, conversion, move name tabs and performs main import. It also checks for incomplete imports. IV. INSTALLATION Provide the following details for upgrade shadow system. 1. Instance number of shadow system, port number, kernel directory, profiles (\usr\sap\put), create DB_user for shadow instance. Include support packages in the BIND_PATCH phase, Add-ons in IS_SELECT phase and languages LANG_SELECT. It checks for unreleased transports, add on conflicts, language compatibility and database issues like table space over flow (ORA-1631 & 32), (ORA-1653 & 54) Archieve Issues Ensure that all the prepare modules ran successfully to proceed for the upgrade. Note: \usr\sap\put\log specifies the log files during the upgrade. During the prepare phase we need to download the upgrade fix FIX.SAR 28-Jul-09 PREPARE also checks the following - Free database size and recommends the tablespaces that needs to be extended. - Free extents in the tablespaces which needs to increase (ORA-1631; ORA-1632) - Checks the Archive directory (ORA-272; ORA-255) - Checks the connectivity to the database (ORA - 12500) - Checks the space in the upgrade directory - The should not be any terminated/ Pending updates - There should not be any unreleased transport requests SPAD/ SPAU During the upgrade it only changes the SAP standard data structure like tables, programs, screens, menus, function modules etc. Customer might have changed the above objects by obtaining SSCR keys (SAP Software Change Registration) or they are upgraded by Note, Patch, Support Package, Stack etc. 236 During the upgrade it prompts SPDD/ SPAU SPDD: for the data dictionary elements (like table, domain and the dataelement). Eg: Employee ID is 25 ; EMPID 25(INT) is changed into EMPID 50(INT) SPAU: for repository objects like (Reports, Screens, Programs RICEF) that is code which is written in ABAP is changed. The SPAD & SPAU changes can be recorded in development system to change requests. which can be included in the upgrade of other systems in the landscape. TIPS 1. TABLE E070 - stores all the change requests. 2. SAPINST.log - stores the installation time taken. 3. From service.sap.com > My Profile > Single sign on for SAP Certificate 4. SDM, SPAM, SAINT TABLE E070 UPGRADATION FROM 4.7C TO ECC6 SICK SE06 RZ10 System name : Can be find from RZ10 Stms Slicense (HW Key) E:\usr\sap\put\us> java -cp ua.jar UaServer us> java -cp uagui.jar UaServer to bring up the Upgrade (Assistant) Wizard From Menu Start > PREPARE 237 Provide the following or follow the on screen for inputs Host : willsysdell User name : administrator Mount Points - Provide SAP Components - upgrademaster\UMN Windows - Kernel - Lang1 - to Lang6 - \upgrade\sap upgrade1\UPG1 - to UPG16 Sapcar -xvf *.sar (TO car the sar files) Usr\sap\trans\eps\in (Support Packs) The standard objects should be corrected within 14days after an upgrade. After 14 days we need to obtain SCCR Keys Upgrade Process: We need to choose the strategy either downtime minimised or resource minimised. Downtime minimised provides high availability to the system which is going to upgrade. ACCTIT Large size tables COEP 29-Jul-09 [TP - R3 Trans] ------Communicates with DB Depends on OS TP Connects to the database using R3TRANS. R3Trans is capable of converting the DB specific data into OS independent/ DB independent cofiles/ datafiles That is why support packages, Add-ons, CRT, Notes, DB Exports are OS/ DB independent. In order to apply them to a specific database and O/S TP, R3TRANS should be capable of communicate with DB Libraries and update database. 238 TP, R3TRANS should be compatible with DB specific libraries to connect to DB for import. Note: No business data @ OS level or file system. > tp connect DEV pf=E:\usr\sap\trans\bin\to_domain_dev.pfl To read parameters from tp_domain_<SID>.pfl TP initializes R3TRANS and writes all the jobs in TRBAT and TRJOB. RDDIMPDP, RDDNEWPP jobs should be scheduled in client 000 using user DDIC (DDIC should not be locked) RDD* Jobs are scheduled in the background which reads content from TRBAT and TRJOB and import into DB R3load - ctf (Create Task File) R3load - I/E *.cmd *.tsk *.log *.tpl *.toc *.str *.data *.tsk.bak T - Table D - Data P - Primary Key I - Index View. These all will be in the Task File STR files are provided by SAP (We can create STR Files during the exports) 1. Structure 239 2. Splitter 3. DB Export with DB specific method 4. DB Export ... DB export method Use option 4 only heterogeneous environment/ Unicode conversion Export the structure Import the structure Perform table splitting The above two options are used to handle large databases to perform parallel export and import. However DB export will be performed by option 3 only. Experienced OS/ DB Consultants can trigger all the above at OS level using R/3 load. DEVELOPMENT INFRASTRUCTURE DI JDI is used to provide development of JAVA programs DI is an usage type which provides JAVA transport Management system (Change Management System) to move the developed objects in the landscape. Programs/ Reports SE38 Domain Data element Tables SE11 Function Module SE37 Screens SE51 Menus SE41 240 Forms SE71 (Medruck) Transaction SE91 Note: Transaction is a logical entity (internally contains Programs/ Reports) [Prog/ Report] in pfcg role Cofiles, Data files, Transport Requests will be in our scope 1. Change request of type Work Bench 2. Customizing - Table entries 30-Jul-09 1. ABAP development resides in the Database. No specific format for ABAP Programs. Refer Table TADIR, TRDIR, DD02L, TFDIR. 2. ABAP requires SE38 transaction to perform development. 3. ABAP requires both compiler and Interpreter (F3 & F8) Save, Activate and Execute. 4. ABAP Development is Central where as JAVA Development is Local. 5. ABAP Objects are consistent because the objects are locked by a developer while modifying the code while others can only display. 6. ABAP development consists of the same program with different versions from developers. Data Inconsistency (In BI, PI there is a locking system) 7. ABAP uses TP, R3Trans to move the objects from DB to OS specific and vice versa. 8. ABAP uses client mechanism to differentiate customizing 241 9. ABAP are not executable outside the SAP environment. 10. ABAP uses transport routes/ transport layers to transport the object. JAVA 1. JAVA development resides at file system. 2. JAVA can be programmed using any of the editor at file system. 3. JAVA requires JRE, javac and java to save, compile and execute program 4. JAVA uses SDM to move the object to the landscape 5. JAVA uses CMS and four system landscape (At least 3 system landscape) CMS - Change management system 6. JAVA uses the entire system to differentiate customizing because JAVA does not have client customization. 7. JAVA Programs are executable provided we have JRE 8. JAVA is Case Sensitive but ABAP is not case sensitive. 9. ABAP uses transport routes/ Transport layers to transport the objects. JAVA uses tracks to transport the objects. 10. ABAP objects are defined in the custom name space 'Y' and 'Z'. JAVA objects are defined based on product/ SWCV version (Software Component Version) that are defined in SLD. Eg JAVA program import java.awt.*.* Import java.net. *.* Public static void Main() JDI - JAVA DEVELOPMENT INFRASTRUCTURE. 1. It is an usage type provided by SAP to develop programs in-house for meeting the specific requirement. INSTALLATION 242 Select the usage type DI during the installation POST INSTALLATION. Select NWA to perform post installation activities. http://<hostname>:50000/nwa form tab Deploy and change option select scenario as DI from the Drop down. Execute. Provide the passwords for the following system. NWDI_CMSADM NWDI_DEV NWDI_ADM These users are created during post installation to work on DI. users require certain roles to work on CMS. NWDI Administrator JDI Administrator NWDI Developer JDI Developer Use url http://<hostname>:50000/devinf devinf : displays design time repository DTR The DTR provides central file and folder based on storage of source code. Version histories and concurrent work on resources. It enables effective team work among developers distributed over different locations. Consider the diagram 243 Each Individual system is a DEV System but development is not done in the DEV system. If any changes required it will be sent back to individual systems which is considered as Development. NWDS (Netweaver Developer Studio) In order to work with DI we need to be NWDI Administrator http://<hostname>:50000/devinf Click on Change Management service Configure check in so that the objects are checked in using the default directory. (usr\sap\trans : usr\sap\jtrans) Configure Check in > NEW Click on Landscape configuration to configure the JAVA system Landscape. Click on DOMAIN DATA and specify the following - 244 CMS Name CMS Desc CMS Url CMS User PWD Transport DIR DEV DEMO http://willsys28:50000 NWDI_CMSADM ********* d:/usr/sap/trans/eps/incmswillsys28DEV Now under Domain Domain ID Domain Name Domain Desc DEV DEV DEB Ext Servers SLD Url http://willsys28:50000 Save the domain. Click on the Tab Runtime Systems Check the following options : Development, Consolidation, Test and Production That needs to be configured as a system in the landscape Provide the details of each system as follows Specify SDM HOSTNAME SDM PORT NUM SDM PASSWORD J2EE Engine URL J2EE Engine User ********** : J2ee_Admin Select 4 systems in the landscape DEV, CONS, TEST, PROD. Developer uses developer studio to develop the programs upon successful completion they will check in the objects into \usr\sap\trans of domain. (Generally domain will be development). The objects are checked into DEV system using the credentials that are provided in runtime systems. Note:/ Mechanism: The Transport Mechanism performed by using SDM, HOST, PORT NUMBER 50018 & PWD. SAVE and Click on SAVE & RESTORE TRACK Track is used to define the path to move the objects. Track is mandatory to move the objects. In ABAP engine the objects are assigned to development class and development class is 245 assigned to a transport layer and layer is assigned to a transport group and subsequently assign the route to a system to define the landscape. In JAVA TRACK is equal to DEV CLASS and LAYER 1. Define software CV/ Product 2. Goto CMS define TRACK 3. Include SWCV defined in SLD Defining a Track From CMS : Click on the Tab TRACK DATA Click on NEW Provide - Repository type DTR - Track ID DEMO - Track Name DEMO - Track Desc DEMO Design time Rep URL : http://willsys28:50000/dtr Comp build server URL: http://<hostname>:50000 SAVE DTR - Design time repository Design time repository is used to maintain the versions. 246 CBS - Component build service used to build the components Note: This DI Configuration is only required when there is a need to develop the products, software components and programs specific to industry requirements. As a new consultant we need to perform the following. 1. Define Product and software component version in SLD 2. Define the Domain 3. Define the tracks 4. Include the run time systems 5. Move the objects between systems either manually or using DI 6. Define users and assign roles so that users can work on CMS Installation of NW Studio on developer PC's Note: Even though DI is introduced for transporting the objects EP, XI, BI has their own transport package, transport mechanism to transport the objects. Eg. BI - STMS EP - Transport of Packages (Export/ Import) PI/XI - Export Objects and Import Objects BI-JAVA - is deployed on portal so it uses transport of the packages. Deploy service is provided in Visual Admin Tool to import the small objects. 31-Jul-09 SINGLE CODE PAGE Each database supports various languages depending upon the code page i.e. selected. SAP components are installed on code page 1100 which supports English, German & Other languages. It is not possible to access the system in Chinese, Japanese and Korean etc using the same code page. MDMP - Multi display multiple processing. If the customer is not satisfied with the Single code page then we need to install additional code pages i.e. blended code page. SAP from 2007 onwards implemented Unicode i.e. all the products will be released on Unicode only. MDMP has various issues during upgrade and migration. There are around 3000 MDMP logon/ system_lang = EN 247 Unicode supports all the languages because if it is installed on double byte code depending upon the language. Zcsa/ system_language Abap/buffersize Unicode consumes 40% resources than a Non-Unicode system. Unicode is installed on code page 4101 or 4102 which depends on Endian [Little Or Big]. Little Endian is used by Windows NT, LINUX Big Endian is used by HPUNIX, AIX, SUN SOLARIS and ISERIES. Big Endian stores the most significant byte in the smallest address. Unicode to Non-Unicode is not possible Blended code page - Multiple language with different code page. Pre-Requisites for Unicode From market place/Unicode (Unicode Media library) SPUMG: It checks for all the tables that needs to be converted to Unicode. It runs for hours 1. Executes the background jobs from the Unicode conversion 2. Execute the transaction SPUMG and schedule the consistency check for all the tables (Transparent, Pooled and Cluster Tables) depending upon the size of the database. It may take hours. Note: Without executing SPUMG Unicode conversion is not possible. 3. Export the database using Non-Unicode kernel. While exporting select Unicode(Little Endian or Big Endian) 4. Specify the parallel process at least to increase speed depending upon the available resources. 5. Install the system with option target system using Unicode kernel. SAP Note: 648016 Conversion to Unicode. * NUC to UC happens only during the Exports. 248 01-Aug-09 Current Environment Problem 1. Too many applications like ERP, SCM, SRM, Mailbox, File Browser, Web browser 2. Too many GUI's (Outlook Client, SAP GUI, Web server GUI, IE etc.) 3. Too many passwords to remember. 4. Lock of Interface and Integration. 5. Less Productivity. How to resolve? 1. Single interface with back end connectivity. 2. Single point of access to all the applications. 3. Single sign on to communicate with all the applications. 4. WebTop i.e. browser used to communicate without any GUI Installation. Motivation of Portal Portal provides a role based, user based, single point of access to all the applications. Portal is meant for - to make effective use of JRE. Customers having applications like Microsoft, Exchange Server, Domino Server, Web Server, File Server, Oracle Apps, Siebel, SAP ERP, CRM, XI, SRM etc. Customer needs multiple GUI to communicate with each of them. Customer needs the people centric, role based single point of access, in the specific language to all the applications. Customer (SONY) should provide the feasibility to work from home for developers, technical consultants, functional consultants and end users. SAP Introduced Enterprise Portal to overcome the above issues. It provides the following. 1. People centric, web based, role based, language specific, single point of access to applications. 2. It provides an interface to communicate with all the applications 249 3. It provides 20 Languages by default. 4. No GUI is required (Browser serves the purpose) 5. Single sign on is configured to communicate with all applications. However authorizations needs to be maintained in the back end systems. SSO provides only authentication (Single Sign on) 6. SAP provides predefined content in the name of business packages which can be deployed by using JSPM. 7. SAP provides development environment using visual composer which is a web based tool. 8. SAP provides administration environment for Monitoring, Administration, User management, Transportation etc. over the web. 9. EP Provides collaborative environment where employees, managers, suppliers, vendors, others customers communicate over the web. 10. EP provides content management which is the part of Knowledge Management to access the documents from various repositories. 11. EP provides rooms, chatting engine, quick poll, FAQ's, user forums, news, announcements' etc. 12. EP provides Interactive environment where logos, banners, screens and desktops can be customized. 13. It provides personalization to select our own themes, fonts and colors etc. 14. It provides user friendly navigational features, history of navigation, favorites etc. 15. It provides self registration features for the guests. 16. It resides on the proven JAVA Engine there by using all the features of JAVA. 17. Its License cost is around 1/5th of the ABAP license cost and cost depends upon negotiation. ABAP engine user can use EP without any license. 250 INSTALLATION Similar to JAVA Engine we need BI functionality is required over web then Include BI-JAVA usage type. HARDWARE SIZING Sizing is an activity that is calculated over web using sizing tool provided by SAP. It is used to calculate the hardware resources that are required by the selected application based on number of users. Users are categorized into 3 types 1. High Users (concurrent users) 2. Medium Users 3. Low users Users are segregated based on the answer time between pages. ABAP Users 1. Low users 0-480 dialogue steps/ 40 hrs 2. Medium users 480-4800 Dialogue steps/ 40 Hrs 3. High users 4800 to 144000 Dialogue steps / 40 hrs 480 dialogue steps = 40 * 60 * 60 seconds Each DS = 40*60*60/ 480 = 300 seconds Assuming each PO high volume consumes 12 dialogue steps. User creates 8 POs per day. But in general PO is created with 8 DS 96/8 = 12 PO's per day. Dialogue steps 1. Logging in - One dialogue step 2. Issuing SU01 Tcode - One dialogue step 3. Selecting field - One dialogue step *ST03 Work load analysis We can find number of dialogue steps 2. Medium Users Each DS = 40 *60*60/4800 = 30 Seconds I.e. 120 PO's per day 251 3. High Users Each DS = 40 * 60*60/ 14400 = 10 Seconds 360 PO's per day JAVA SIZING As it is web based the time taken to flip between pages is considered. Low Users Medium Users High Users Consumes 600 Seconds Consumes around 180 Seconds Consumes 30 Seconds. User SAP Proprietary tool (QUICK sizer) 02-Aug-09 SIZING Tools 1. Specify the customer number 2. Name the project 3. Cust info like contact no, maid, Country Name 4. Platform/ Hardware details like OS DB, Backup mirroring, RAID, CLUSTER, STANDBY Server, Network Connectivity, Band width etc. 5. Specify the component (Usage type BI, EP, XI) 6. Specify the users low, medium, high 7. Save and calculate the result Results provide the following 1. Hard ware details like CPU, Memory and Storage 2. Storage Capacity 1000 GB 3. Memory - 32000 MB 4. CPU systems of SAP (SAP APP) benchmark for performing standard It is calculated based on SD Module i.e. for every 2000 sales document that are created 100SAPS/ Hr Sales order contains more dialogue steps. SAP's is an unit to measure CPU, CPU could not arrive as a direct measurable unit like memory and Hard Disk which is independent of the Hardware vendor. CPUS specific to Hardware, Vendor (Pentium, Cytrix, Celeron and ) each processor has their own unit. SAP S is an understandable unit of hardware. Vendors to calculate the number of CPU's required. 800 SAP's are generated by I Series CPU (IBM) similarly DELL, HP, SUN has their own measurements for CPU calculation. 252 Ordering the Hardware Do not order the sizing output directly, you need to 1. Calculate the OS, DB and other applications utilization. 2. Database growth for the next three years 3. Storage size should be net storage/ not gross storage. Example. A company buys 10 HDD of 160GB Total 10 * 160 = 1600 (consider only 1400) Remaining will be for format etc. a) Space is reserved for firmware (10% of the disk) b) OS mirroring and Log Mirroring (One disk each) c) SWAP, DUMPS and other software (One disk each) d) RAID one disk for parity (Hot swappable drive) 160 * 6 = 960 * 90/100 = 850 GB (NET STORAGE) 253 Note: Consider the number of interfaces on the system (Job Scheduler, Mail Server, Paging, SMS, BIW, CRM, XI, SRM and SCM) (Memory required at CPU Level) In Principle add 30-40% more the net calculation while calculating sizing for portal 1. Calculate the number of interfaces 2. KM repository & CM repository (Stores in the Portal) 3. CPU and memory are major bottle necks on the portal. Note: The purpose of JAVA standalone - It is a platform and we need to have an application installed on it. If the component is SAP-APPL then its an ERP Component BPP-CRM CRM Component BICONT BI Component ABAP, BASIS, SAP_BW, BI_BASIS We can view these from System > Status POST INSTALLATION ACTIVITIES 1. It does not have any specific steps in NWA like BI, PI, MI and SLD. 2. EP is an application that resides in JAVA Engine. EP consists of portal, Knowledge Management and Collaboration. 3. EP by default cannot contain any business transactions. The business packages need to be deployed to communicate with backend systems. 4. Most of the EP content is available through roles 5. UME provides portal roles to access the EP content. There is no single role which provide access to the entire content. 6. The deployed business packages contains roles, webdynpro connections which needs to be configured. 7. The collaboration and KM features are available which needs activation/ enablement for access. 8. Front end customization can be performed based on requirement. 254 9. Portal is accessed by using URL http://<hostname>:50000/irj 03-Aug-09 Starting and stopping EP As portal is installed on JAVA Engine, the same process is applicable startsap stopsap Portal logs (Config tool, VA tool, Telnet tool, SDM, JSPM, NWA Tool for monitoring, Visual composer for development etc.) Portal User Management JAVA UME is used for user management. Portal Security Portal roles are available to access the portal content. Memory Usage Memory concept is as same as JAVA stack. Portal utilizes the J2EE engine runtime along with deployed portal applications (BI, KM, Content Management, Collaboration, Visual Composer, RTC Real time Collaboration, EP, EPCore.) http://<hostname>:50000/irj (integrated run time java) PORTAL DESKTOP/ HOME PAGE SAP provides default desktop for the portal which can be customized. The portal desktop elements are the following 1. Header Area 2. Content Area 3. Navigational Elements 1. Header Area a) Mast Head 255 It is the first strip on the page. It contains salutation, banner, home, logoff, personalize and SAP logo. LOGO, salutation can be customized. We can change banner and logo. Personalization is only available when EU_ROLE is assigned. b) Tool Area It is the second strip on the page. It contains collaboration, search and advanced search collaboration need to be enabled. c) Top level navigation The third and fourth strip on the page TLN is a role based and tab strips are displayed based on assigned roles. Third strip contains the header and fourth strip contains detailed actions under that role. Eg: Home ----- Third strip contains company, work, team documents and portal information on the fourth strip. d) Page title bar The fifth strip on the page and it contains page title, history of pages navigated and flexibility to move forward and back. It provides an option to save the screen as favorite. 2. Content Area It is used to display the content and it will be around 2/3 of the page. 3. Navigational Elements It is used to provide various navigational elements. They resides on the LHS to the page. Save favorites detailed navigation. PORTAL DESKTOP It is default desktop that is provided by SAP. SAP provides various themes to customize the desktops. SAP also provides theme editor to create and edit the themes. SAP best practices provides 3 Three themes 1. RED 2. BROWN 3. BLUE 256 Goto System Administration > Portal display > Theme Editor Theme editor provides options to create, import, export and edit themes Goto Themes import > specify the path and import the theme into the portal. Change the theme according to the requirement. Goto Theme Editor and select a theme , save it as a new theme and customize accordingly. PORTAL ACTIVITIES 1. Development 2. Customization - Developing the pages for E-Filing Tax returns, Dealer management, Developing pages internally for training, Update etc. - Screen desktop, logos, banners, login screen, branching and Images etc. 3. Content Manager - Knowledge management from various repositories, personal, Public, common folders and Taxonomy (displaying in a structure) 4. Administration - Single sign on Deploying business packages Patches Establishing connectivity to backend systems, ESS, MSS and XMII configuration (Manufacturing Integration and Intelligence) Defining roles and User assignment Enabling various functionality of portal like (Personalization, collaboration, RTC, content management etc) Working with user management (LDAP, ABAP engine) Installation and Post Installation Activities/ -----Install Portal Apply patches......... 18 patch Deploy ESS, MSS and XMII Customize portal. -----TASKS 257 List down the JAVA Activities List down the SOLMAN Activities What is the purpose of DI? Explain the process of upgrade (326) include prepare Explain HW sizing Explain the functionality of Market place with respect to customer environment. Motivation for portal. Netweaver 04 Installation (based on 640) 1. JAVA Engine 2. KM 3. Collaboration. 04-Aug-09 SAP Netweaver certification books (TEP10_1, TEP10_2) MDM: SAP introduced MySAPBusiness suite 7.0 (SCM7.0, SRM7.0, ECC6.0, SR3 EHP4, CRM7.0) All these components need to be maintained customer, vendor, supplier, material master records in various systems and synchronization is becoming difficult. SAP provides MDM where the synchronization starts from MDM to all the systems i.e. one Master data for all the systems Note: Web dispatcher identifies the least loaded ICM when going for BSP 258 Note: Central Services Instance Central Instance Dialogue Instance --------- Rough ---------Refer ST07 UME - User Management Engine Note: If SAP * is enabled we cannot login with the other users. User Groups Roles Tcode: SUGR Authorization > transfer > change Authorization of Group check S_USR_GRP --------------------------------05-Aug-09 259 ENTERPRISE PORTAL PERSONALIZATION It is used to setup the portal desktop along with specified language, Fonts, themes and manage personal data. Every user needs EU_ROLE (Standard End user role) which can be customized according to the requirements. Add the role to the end user group and assign the group to every user. Due to the performance issue on the web the personalization is restricted to change the password and contact info only. TCODE: SU2, SU3 authorizations required for that user. Under "Personalization Tab" Portal Theme: It is used to change your portal desktop. User Profile: It is used to change the general information like email-id, contact info, address and organizational elements. On a standalone JAVA change password is also provided. User Mapping: (Remote Iviews) While accessing the data remote systems specify the userid authorized in the backend systems. Eg: Users uses standard HR user to get the HR related information from the back end. Work Protect Mode: This option is used to set the work protect mode i.e. when a user partially entered data in the screen while navigating away from that screen it should prompt whether to save changes or open up a new window or discard the changes or save the data. Enabling Collaboration Option Http://<hostname>:50000/irj Click on content administration> Portal Content > Portal users > Standard Portal Users > Open default Frame work page Check - Tool Area - open - objects Select tool area > open + Enable collaboration launch pad (CLP) Set YES 260 Enable RTC Real Time Collaboration Set YES SAVE. Unlock the object System Administration. Home > Documents Collaboration is used to provide various options to communicate with employees, Instant messages, sending email, create tasks, assign the tasks, monitor the tasks etc. 06-Aug-09 DEFINING SYSTEM Each back end system needs to be defined as a system in the Portal. System Definition 1. Login to the Portal 2. Click on the Tab System Administration - System Configuration - System Landscape - Portal content > Rt Click > Create new folder to identify our objects (Your custom portal content). It is also used to move the objects based on the folder name. 3. Select the folder > Rt click> and select create "New system from template (new system from portal achieve) par file. 4. Select the template - SAP with dedicated application server/ load balancing when more than one instance is available. - i.e. logon load balancing is configured in SMLG/ RFC server groups configured in RZ12. 5. Select SAP with dedicated application --> Next - Specify the system name: ERP - System ID: EWD - System ID Prefix EWD (System should have atleast two dots like com.saperp.com or EWD.willsys.net) 261 6. Select the language - EN - Specify description [ ERP system as a backend system ] - Click on next - Finish SAVE - Open the object for describing the backend details and specify application host [Willerpdev] gateway host [ ] gateway services [ ] sapgw00 SAP Client Client 800 Port 3200 System type SAP_R3 Save. THERE ARE 3 SYSTEM TYPES 1. SAP_R3 2. SAP_BW 3. SAP_CRM Note: Supply chain management (SCM), SRM can be considered as R3 systems Now > GOTO property type : [ User Management] Select type : [SAP Log on Client] Logon Method: UIDPW Mapping type [ Admin; User] [Save] Display System Alias Add Alias name: BAS Save - Close System aliases is a name that will be used while defining the portal content objects. Aliases is a pointer to the backend system. When the content is defined like ESS and MSS they will use alias name which intern points to the real system. The real system will be customer system. The alias name will be unique through out the landscape. 262 Defining the portal Content Portal content provides the data that needs to be displayed over the portal. Portal content contains the following iviews, pages, layouts, worksets and roles GOTO > Content administration Portal Content Select the folder that is created above > Rt click the folder to create PCD objects. PCD is the portal content database which are in the directory structure i.e. portal content directory. Browse > Select Folder > Rt Click >Create > New Iview. Select Iview template, specify the iview name For Eg: Name - Monitor Specify the prefix Custom mon.saperp.net Select the GUI type > Next> select the system ERP .......... FINISH. IVIEW: It provides an internet view to the content. It is displayed in the content area. Iview can be SAP transaction, webgui, url etc. Iviews are pointed to an alias > Rt click the Iviews and preview. Iviews are created as an copy or as an delta link. Iviews are defined from a portal template when we copy from an iview it is completely copied pointing to the template. The properties are inherited from the Master template only, not from the copied iview. Using delta link the properties are inherited from linked iview and master (template) iview. Portal content is built using templates and delta links. ---Portal + ERP ESS, MSS configuration ---07-Aug-09 PORTAL CONTENT DIRECTORY 263 Enterprise port contains predefined content that is available through PCD. (Portal Content Database/ Directory). PCD contains folders, views, pages, worksets and roles. There are locate name prefix which is displayed in Quick Info. SAP also recommends to use the predefined prefix to identify the objects uniquely. DEFINING THE CONTENT. Goto > Content Admin > Portal Content > Select the folder and create the respective content. * Portal provides user based, role based and secure interactive content. ADD SYSTEM LANDSCAPE TO FAVORITES. System Administration> System Configuration > System Landscape Select the System Landscape > Right hand side corner click to add to favorites. Once you add it refresh it till you get in under portal favorites. 1. Create System 2. Provide an user mapping ID in user admin to access the content without userid and password. Goto User Admin Tab > Identity Management > Add Identity Search name: ABAP J2ee_Admin Hit modify Goto User Mapping for system access > System : Your Back End System Eg: NW6 Userid : Superuser Passwd: Admin123 Note: When you copy the system to the FOLDER the alias will not be copied. so you need to create alias one again. Now Goto > System Administrator > Support > Sap Application > Select type > Transaction > RUN Now Goto your Folder > select RC > IVIEW > (.) Transaction Iview > Next > Select the system [ALIAS] > FINISH > select the iview and preview. Select the iview and paste same. 3. Copy copies the content without any references. 264 4. Delta link also copies but with reference & inheritance. 5. Similarly define page, worksets, role. Page define the layout, worksets define the activity, role defines a group of activity and mostly a position in a company. PAGE : Select the Folder > RC > page > give the details > Next (.) Default page > Next > light : 2 Columns > ADD > T-Layout > Next > Finish. Select the Iview > RC > Add to page. (.) Role needs to be assigned to the user. Importing Packages. (BP - Best Practices) System Administration > Transport > Transport of Packages > Import. > Give the path > Select Import. It provides two options. 1. From Client 2. Server which reads from directory D:\usr\sap\nw\sys\global\pcd\import. BP Best Practices provide predefined content, documentation, roles, users to implement in the landscape with high productivity. EPA - Enterprise Portal Archive. After Import > Goto Content Administration > Portal Content > Content provided by SAP > Specialist > Here you will find all the roles and iviews. Now Goto > User Administration > Identity Management > Select the user J2EE_ADMIN > modify > Assign role called Finance Manager select Finance manager ADD similarly add material manager. Now Goto > System Configuration > System Landscape > Assign the alias name as SAP_R3_BP > SAVE. Now Goto > Identity Management > Find out the user J2EE_Admin > Goto > User Mapping for source system tab > Give the mapping users & password > Mapping user id sapuser -- Back end system user and Password. DEPLOYING ESS/MSS AND XMII 1. Download the content from Market Place 2. Copy it into usr\sap\trans\eps\in 3. User JSPM to deploy 265 4. Check the dependencies before deployment. 5. Define the webdynpro connections, aliases, single sign on et. 6. Backend system is recognised only when it is configured in SLD to create JCO. (Java Connector) 08-Aug-09 Questions PORTAL 1. How do you install Portal? OS and DB? 2. How did you perform Sizing? 3. What are the factors considering Sizing? 4. What are the post Installation activities for Portal? 5. What are the various tolls available to work on Portal? 6. What is the difference between config tool and visual admin tool? 7. Name the significance of Services and Managers? Explain some of them? 8. How the user request is handled in portal when compared to ABAP request? 9. What is SDM & JSPM and explain the difference between them? Which one of them are consistent and why? 10. What are the various patches that you have deployed? 11. What is the significance of BP/ 12. How did you configure UME in the portal? Explain with steps? Expected user store in Visual Admin, Config Tool, LDAP, ABAP 13. What is the difference between Knowledge Management & Collaboration? 14. What is meant by personalization? 15. What is ESS and MSS and how do you configure them? 16. What are the various mechanisms for fine tuning portal? 17. What is SSO and how did you configure between ERP & Portal? 18. What is the significance of the portal number. How they are calculated? 19. What is the significance of memory in JVM. How do you configure them? Explain the ratio between them? 20. Explain the directory structure (VA, CON, Shell Console, Standalone, log, template, cluster, boot strap, server, dispatcher, global config directory etc.) 21. My Portal could not be started? How do you start and where do you start from? What are the developer traces? 22. Explain the significance of JAVA startup (Jcontrol, Bootstrap, Jlaunch) 23. Explain Portal branding techniques (Logo Banner etc) 24. What is portal content views, pages, roles, worksets, groups etc. 25. How security is controlled in Portal? 26. What is meant by system alias and how do you create systems in portal? 27. What is the significance of SLD in Portal? 28. What is webdynpro (JCO Destinations) in portal? 29. What is the significance of NWA Tool? 30. How do you transport packages (Export and Import) in portal? 266 31. How do you configure BI in portal? Explain the steps? 32. How do you configure CRM in the portal? Explain the steps? 33. What is the purpose of Portal? Explain few differences when compared to ERP Engine? A. Portal lies in JAVA Engine where as ERP lies on ABAP engine. To use portal we need only internet explorer where as for ERP we need SAP GUI. 34. How do you monitor the portal? What are the various tools available? 35. How documents are stored in Portal? How do you create documents? 36. How do you work with Quick Poll, Favorites, Forums, News, Rooms? 37. What is Visual Composer? Adobe SVG Viewer? Iview - Internet View which displays the content. Page- Page is a layout to store and display the iview. Page can contain page and iviews. Note: Iviews cannot contain anything Workset: It is used to display an activity. It can contain iviews, pages and a workset. Role: It is a synonym of a position. It can contain iview, page, workset and role. Roles are assigned to users and groups. All the above can be assigned as a copy or as a Delta link. It is recommended to use delta link because inheritance from parent to child exists in Delta link. Import and Export: The developed content can be exported to global directory to transport to other systems. SAP Provides transport of packages option to include the content in the package and transport. Client : Path Server The extension is *.epa (Enterprise Portal Archives) Permissions Editor : Used to assign the permissions to the content. Allows us to set authorization permissions on portal objects, components and services to portal users, groups or roles. Goto > Permissions Editor (System Administrator Tab) Select enduser role, Role assigner (Include it for a group, user role) No user gets access to the portal content without defining permissions. 09-Aug-09 267 SDM - SOFTWARE DEPLOYMENT MANAGER It is used to deploy the patches up to version NW7.0. It is discontinued from Version 7.10 Note: NW7.0/ NW640 becomes NW7.10 when is it upgraded where as it comes 7.01, 7.02, 7.03, 7.04 (EHP1, EHP2, 3, 4) when EHP is applied. - On 7.10 PI, BI are available Eg: XI3.0 to PI7.10 and BW3.5 to BI7.10 - SDM uses port 50018 and password to deploy the packages. SDM is also used for undeployment which is a great disadvantage/ because of dependencies may not work. JSPM - JAVA SUPPORT PACK MANAGER Used to deploy the patches/ support packages, support stacks and business packages. JSPM reads from EPS\IN where as SDM needs to be feeded with the path ESR - Enterprise services repository. 4 associated patches. Deploying Business Packages SAP Provides predefined packages that contains views, pages, worksets, roles, JCO Connections, Webdynpros etc. We need to import the package and define the JCO connections, user mapping or Single sign on etc. Identifying the Patches. 1. BP ERP is required to deploy ESS/ MSS 2. ESS/ MSS package is required to get the portal content. 3. PCUI (People Centric user interface) need to be deployed to get the interface in the Portal. ESS, MSS, PCUI needs to be downloaded from the market place. - Copy the content to usr\sap\trans\eps\in. - start JSPM using go.bat - select the business packages & select the system in the system landscape if NWDI is in place. If DI is not configured then select no NWDI control. - Deploy the packages. - When the BP is deployed the predefined content is also deployed as well. 268 - Goto Webdynpro (in Content Administration Tab) - select the JCO connection and Create There are 2 types of JCO's Application Path Connection should be created using dedicated application server. Meta Data/ Dictionary Data Connection should be created using logon load balancing. Application data should be created using a dedicated Application server. Eg. SAP_TRAVEL_METADATA: SAP_TRAVEL. Test the connection Refer to ESS/ MSS documentation and create systems and aliases accordingly. Define the permissions for the deployed content. Predefined roles are available only we need to set the permissions (Role owner, End user etc) Assign the roles to users and ensure that the respective tabs are displayed. SINGLE SIGN ON The portal is role based, user based, people centric, language specific, personalized, web based interface to the users. Single sign on provides an access to all the back end systems without any password. SSSO cannot provide Authorizations, it provides only authentication. Mechanism: 1. The user login to the Portal 2. The user credentials are authenticated (UID, PWD) and user is issued with a logon ticket. 3. The logon ticket is stored as a non-persistent cookie on the browser and valid till the browser is closed or logoff. 4. User sends a request to modify the leave request. the request should go to the backend ERP system. The logon ticket is send through the request and gets authenticated on the back end system. 269 5. The backend system will provide authorization to modify the leave request. 6. The login ticket does not contain passwords. It contains userid, authentication scheme, date of expiry, digital signature, information about the issuing system. CONFIGURING SSO EP to BW 1. STRUSTSS02 1. Create RFC's in BW and EP using program id (SM59, JCORFC provider service) 2. Maintain the portal setting in RSPOR_T_PORTAL in SM30 back end systems 3. Export the certificate in STRUSTSS02 and import the certificate in EP Key store administration. 4. Create BW system in EP 5. Similarly export from keystore admin and import in STRUSTSS02. 6. Perform user mapping. In order to setup SSO, we need to setup single sign on parameters from RZ10. 7. Execute RSPOSRT. SU01 Types of users 1. System User - To transfer the data or client copy with in the system or local clients in the system 2. Communication User: To transfer the data from one system to another system. like RFC users. 3. Reference Users - To Provide additional rights to the user. SU01 - Under Role tab. When the user is absent the reference of the other user will take care. 4. Service User: Is also called as reporting user. PWD doesn't expires, login is possible. Production target/ bonus. 5. Dialogue User. 10-Aug-09 DEPLOYING MSS/ ESS Deploy using JSPM: The content deployed contains predefined roles, issues, JCO, pages and worksets. Configure SLD RZ70 - Repopulate info to SLD 270 The user from Enterprise portal communicates with backend system using mapped user. The mapped user should have a valid employee ID which can be assigned in Transactional HRUser. Regarding Permissions> System Administration > Employee Self Permissions > Permissions Permissions > 1. Each Portal Content is assigned with a role 2. The roles are controlled by assigning them to end user. Role assigners and administrators. The Content can be administrated by using a user, role or a group. Content --------- Directly to behave as owner, end user, role assigner, read only. Content Assignment to group ------ users ---- to behave as owner, end user, role assigner, read only. Content -------- Roles ---- Users ----- to behave as owner, end user, role assigner, read only. Groups - Group of users - Assigned with roles Note: Even though roles are defined on portal they are used to only to control the access to tabs. The Data access is controlled in the backend engine. Role - Role, Iviews, pages, sets. 271 11-Aug-09 NO CLASS 12-Aug-09 * SU01 users should belongs to ESSGroup 272 Collaboration: Enable the collaboration launch pad/ real time collaboration From Content Administration Using default framework page >Open > Rt side select > Enable the collaboration > SAVE Restart the engine Collaboration provides the following - Show the status of the users - Send email Collaboration means communication between people. Note: Portal provides runtime for any kind of JAVA or Webdynpro ESS/ MSS - For Knowledge Management JAR files, JSPM or SDM - Webdynpro is deployed through. There will be a SMTP server built-in. 13-Aug-09 What are entry points? Entry points are those in the home page of the portal like public documents, Folders, Favorites etc. COLLABORATION It is available by default when the portal is installed. Collaboration brings the integration between people and provides all the features which are available with yahoo, Google etc. It can also be server as Intranet portal for the larger companies. Collaboration provides the following : Work : 1. Instant Messaging to the users who are logged on to the portal. 2. We can check the users availability to send email, meeting invitation etc. 3. Contracts Management (Add, Delete, Edit) 4. Create tasks to the subordinates and check the status of update from time to time. 273 Navigation: Home > Work > Documents etc. Here we can create the documents. Http://<hostname>:50000/ user admin Identity Management LDAP Server. Teams: It is used to collaborate between group of people. We need to configure rooms before we work with teans. Goto > Content Admin > Collaboration Content > Room Creation (in Right Hand Side) Give the description and details > Hit Next > Add User > Finish. Now click on Enter Room http://<hostname>:50000/irj Content Management - Quick Poll Administration. Documents: Home > Documents SAP provides entry points to store and access the documents. It provides 6 entries. 1. Favorites: It is used to store the accessed in links/ documents and provide navigation in one step. 2. Common Folders: It is used by a team or group to store the documents between them. 3. Personal Documents: We can store our personal documents and can display from any part of the world provided access to portal is available. 4. Recently used: It provides the list of documents that are recently accessed. 5. Taxonomies: It is used to organize the date in categories. The information is fetched and organized by topic. Eg: Science/ Physics, chemistry, biology. If you click on physics you need to get statics and dynamics. TCODE: SCOT to configure mail server in SAP. SAP also uses TREX to search and classify the information. Note: All collaborative activities using system administration > System Configuration > Collaboration in RHS and click on group ware transport. Group ware transport are used to configure the Microsoft exchange server, Lotus domino server or any other mail servers. Click on NEW > Provide the user logon domain. 274 14-Aug-09 PORTAL DAY TO DAY ACTIVITIES Transportation of Portal Content Objects. It can be enterprise portal archive or webdynpros. Webdynpros mainly transported using JDI. (Use transport studio to transport objects or SDM to deploy them manually) User management (End user requests from suppliers, vendors, employees, customers and business process owners) - Password rest, User creation, Role Assignment(in portal and backend system), user mapping, defining roles based on content, assigning to a group and group assignment to users. Eg: A company with 30,000 portal users will be maintained by using user groups. (like SD group, MM group etc) Understanding the user and security mechanism. - Users are created in ADS (Active Directory Server) ---> Populate What is the difference between JSPM and SPAM? SPAM is for ABAP and JSPM is for JAVA. JSPM is cumulative/ growing and SPAM is incremental. JSPM we can jump from 6 to 9 Directly where as in SPAM we need to follow sequence. Portal ---- Assign Portal Roles ---- User Mapping --- ensure backend system mapper user (Service User) has relevant authorizations. Customization, Content Manager role to change the NEWS, FAQS, QUICK POLLS etc. Monitoring the user load on the system. https://<hostname>:50000/irj. System Administration - Monitoring - Portal Users - Request Overview. Goto Security Provider service and monitor the user sessions and if we require to terminate we can terminate the session upon approval. Releasing the object locks similar to SM12 approval is required. It is always advised to terminate the user session instead of terminating the locks. Portal Thread Weaver is a monitoring toll. We can download from Market place and apply. Modifying the system IP Address (Host Name) in systems if required --- Rare Job (Sys Admin ----System Config) Apply support packages/ business packages etc. using JSPM and update Kernel. 275 Monitoring content overviews - It is used to display the components that are accessed. System Administration - Monitoring - Content Overview Identify the component which consumes more gross time, CPU time and No. of Calls etc. Each component should not consume more than 2 Seconds on all average. Component, Request, User uses only CPU and Memory of the portal to get the content displayed. It contains time because the database engine is a backend system. ST04 > DB Buffer init ratio DB02> Missing index, find out the missing index and recreate. We can recreate the index by using BRTOOLS also. CPU time more than 40 to 60% of the response time then consider CPU is expensive. i.e. it is running expensive Iviews (Embedded Iviews). Request summary is used to identify the CPU time, Average response time, total number of calls.... If the calls are more and response time is high we may consider deploying of a proxy server. 1------- 10000 2 ------ 2000 3 ------ 2000 4 ------ 1000 5 ------ 200 6 ------ 200 As the calls are more Response time will come down Request overview provides the user and component accessed along with CPU time and duration. We can display the content based on search criteria like duration., Userid etc. It is used to identify the expensive users at that point of time. Fine Tuning the Portal. 1. We need to work with OS and their Patches 2. We need to work with DB and their Patches 3. We need to work with JVM and their Patches 4. We need to work with Browser IE/ Mozilla Patches 5. We need to work with Backend systems... DB Statistics, SGEN, Missing Index and buffers are small. 6. We need to work with Iviews 7. We need to work with Cache Note: Tune Performance of Enterprise Portal - Search in Google. 8. Server Procurements is not as per Hardware Sizing 276 9. Never exceed 80 to 85% of CPU load for extended period of time on ABAP 70% 10. Thread managers are used to serve the user requests. 1. User Submit the request. 2. Requests are handled by server socket queue of http provider services. 3. Request is handled by dispatcher and assigns to Thread Manager 4. Thread Manager assigns the request to server process 5. Server process assigns the request to Application Thread Manager So we have enough threads to process the user request. Configure Thread Manager in Config Tool. Threads min is 500 and Max is 10,000 as per the Industry standards. 15-Aug-09 BUSINESS INTELLIGENCE/ BUSINESS WAREHOUSE / BUSINESS INFORMATION WARE HOUSING Versions 3.0 3.1 3.1C are the Basis versions .... BIW From WEBAS 640 it is by default available with the Platform i.e. When ABAP is installed (SAP-ABAP, SAP_BASIS, SAP_BW) comes by default. SAP Provides BI_CONT (BI Content) which contains predefined info cubes, Roles etc.(In Netweaver 7.0 It became a part of architecture with Information Integration) Motivation 1. Analytical Reports 2. Decision Making System 3. Graphical Representation with help of BO (Business Objects), Bar Charts, Pie diagrams, Line Charts and graphical representation , Dash Boards etc. 4. Web Broadcasting 5. Business Cockpit (In BI7) New 6. Archiving system (Date from legacy systems is achieved into BI Systems. 7. Reporting system to run the heavy background jobs. Eg. ECC/ ERP system is consuming more time to run the background jobs. So, BI is used to run those reports with out effecting the performance. 8. Compare the date that is available in market DUN & BRAND street to define the competitive reports. What does BI do? 277 BI is an SAP ABAP application system with platform ABAP. It becomes intelligent by deploying the business content through SAINT. 7.03 (Deploy atleast 703 because upto 702 are out of maintenance) current is 710. BI Communicates with various backend systems (ERP, Flat files (*.txt, *.csv, *.xls, CRM etc) and fetch the data into FACT and Dimension Tables. These tables are used to define various reports as per customer requirements. Now it supports XML files through PI BI is an Analytical system it is based on OLAP Technology (Online Analytical Processing). Small tables are grouped in to (DeNormalization) Big Tables. Normalization is a process of splitting up the larger tables into small tables upto sixth normal form to have the granular information and establishing the key relationship between tables. The Data is not eligible for fro updates. The data can be a master data with transaction data The report fetches data from various data sources so more memory and more BTC work process are required. Front end can be BEX or an Enterprise portal, Crystal reports, XCelsius can also be used to fetch the reports from BI system. Installation of BI System 1. Select the usage type ABAP for a normal BI system. 2. If BI Portal is required then select ABAP-JAVA-BIJAVA-EPCORE-EP 3. If BI Portal along with webdynpro development then select DI as well. 4. Download the BI-Cont and deploy through SAINT (SE06, STMS etc) other wise SAINT wont work. 5. Set up the Master client in table RSADMINA --- goto SE12 Specify the table --- specify the field MANDT = <CLIENT> SE11 - RSADMINA - Change - BWMANDT = 1 save. BW User = BW user 6. Initialize RSA1 to replicate and activate the BI System. 7. Define logical system to client (BI uses ALE Mechanism to transfer data from ERP to BI) so the communication happens between logical systems only. 8. Establish connection between ERP and BI system 278 9. RSA1 > Goto Source systems Select SAP > Create RFC Connection Available destination: DEVCLNT001 SID: DEV Sys No: 00 Users ALEREMOTE, BWUSER are created with password provided. Check test and activate the connection. RSPOR_SETUP is a program (BI and EP) Maintain settings for Integration into SAP EP. 16-Aug-09 --------- NO CLASS ----------17-Aug-09 DOWNLOAD BI CONTENT www.service.sap.com/ SWDC - downloads - sap software distribution center - downloads - Installation & Upgrade - My SAP Application Components - BI Content 7.03 around 500 MB Select download - Add to download basket & Download BIADMIN also from the Market place. With this we can admin BI System through Portal. BI ADMIN is a business package provided by SAP BPBI Administration - > Select -> Download Once downloading copy it to usr\sap\trans\eps\in (It is in .sca format) Now goto JSPM & initiate go.bat Select business package -> Next > SAP BI/ ADMIN (next) - Deploy will be finished. Once deployed goto > /irj > User Administration > Identity Management > Find the user > Modify > Assign roles > Search for "BI Administrator" role > Add > SAVE. Now Under system administration > Monitoring > you will find Business Intelligence . RZ20 . ST03 279 RSC_COl is a background job runs to pump the date to ST03 MONI is the table from here the data will be read by the above Job. 1. Installation of ABAP System. 2. Installation of ABAP, JAVA, BI-JAVA, EP, EPCore when EP, BI-JAVA functionality is required. 3. Define Master Client in RSADMINA Table. 4. Download BI Content from Market Place 5. Activate the content by using SAINT 6. Perform other post installation activities like (SE06, STMS, SMLG, SR13, SMLT, Backup, Standard Job Scheduling (SE36) and DB13 etc. 7. Define source system i.e. a backend system in TCode RSA1 8. Implement Usage of BIADMIN cockpit. Download the BP[BI ADMINA] from Market place copy it to \usr\sap\trans\eps\in directory Use JSPM to deploy the Business Package [BI ADMIN] BI ADMIN COCKPIT 1. It is a web based BI Admin Tool introduced in Netweaver 7.0 2. Easy Administration for Complex BW's Navigation Goto > SPRO Why do we need EP for BI Administration? 1. For WEB Monitoring using Business Packages 2. Business Explorer, Analyzer, Broad Caster can be used over the web. 3. BI Integrated planning that is modeling can be performed over the web. We can perform Technical , Modeling & Administration etc. Now goto> SPRO > SAP IMG Reference SAP Netweaver > Business Intelligence > General BI Settings Setting for Administration Cockpit. Execute > Setup call to BI Admin cockpit. Click on new entries. Reporting retrieval settings > Overview Integration into Portal. Assign the roles to users in the Enterprise portal. 280 The roles are : BI Administration, BI Intelligence, BI Explorer. Define JCO Destinations in webdynpro (Four Connections 2 Metadata and 2 Applications) Goto ....../irj > Content Administration > Webdynpro > Maintain JCO RFC. Define SAP_BW as a system and create alias. Define the Integration between portal and BI Engine (Reporting Setting) in SPRO Use NWA toll to perform, BI_JAVA, post installation activities. Note: Don't change logical systems name once they are assigned to client. Instead use BDLS to change the logical system. Note: Logical system names are required to change only during system copy. System Copy in Landscape The above figure shows it is a system copy in the landscape. After performing system copy in the landscape we need to change the logical system name. To perform this we need to go with BDLS and change LSN RSPOR_SETUP (SA38) is a report specify the steps that needs to be followed to integrate BI with JAVA Engine. You cal do it by using NWA , /nwa RSPOR_SETUP (SA38) SPRO in BI System Or manually in BI System. 18-Aug-09 SARA : Tables and Archiving objects TDM_365_BW : BW Security 281 BI SECURITY 1. New Security Features 2. Web tools for modeling, development, administration and deployment BI Security is similar to R/3 Security which consists of SU20, SU21, SU22, SU25 with authorization field, activities, authorization objects, authorization classes, authorization profiles, composite profiles, menus, favorites, user assignments, user comparison, roles, composite roles etc. The area that differs is to protect the info objects at field level. SAP Provides around 20 authorization objects which are required for reporting administration. RSR and RS - is the prefix for all reports. S_RS_COMP - Info Area, Info Provider, reporting component. S_RS_COMP1 - Reporting component, Qry Owner S_RS_LCUBE - Info Area, Info Cube, Info cube Sub object SAP Provided RSSM and RSSMTRACE upto 3.1c version of BW. Solution Manager is a CRM System, BI System & Solution Manager System. If you install Solman we will get all the above components. From BW3.5 i.e. Netweaver onwards the above transaction is obsolete. Now it is RSECADMIN. - In BW3.0 the RSSM, RSSMTRACE, RSSMQ has been moved to RSECADMIN in Netweaver 7.0 Eg: To Create custom authorization object we use SU21 in R/3 where as in BW(BI) we use RSECADMIN. 282 In order to protect the reports at object and field level we need to make them authorization relevant in RSA1 where as SU20 in R/3. PFCG will defaultly we need to use. Goto > RSA1 - BI Content - Info Object RSA1 is the TCode which is used to activate the content and replicate the content. It is also use to define key figures, Chars, Info Cubes, DSO, Info Objects. It is also use to define the transport connections and editability in the Target systems. In RSA1 - Transport Connection - Select the grouping , objects - Select the object click on Truck BEX we can transport in this way. We have another button Object Changeability with this we can give the object as a edit compatibility. DEFINING CUSTOM AUTHORIZATION Goto RSA1 - Info Object - Select Info Objects - RC - Change - Goto Business explorer tab Authorization Check relevant. Note: Every user will have the default tcodes (SU53, SU56, SP01, SU3). We need to provide this to every user. Now Goto > RSECADMIN > Maintain > Create Give the description - Select the char which is in authorization relevant. Save. Now Goto > PFCG -- Define Role -- Include Authorization object manually or - We can also include authorization object in a Transaction SU24. - Save and generate the profile in PFCG and assign the role to the user. - Perform user comparison Goto PFCG - Create Zrole - Goto Authorization Table - Click on change authorization tab -> X - In the next screen - Add manually - give the object which is authorization relevant - Assign the user - do the user comparison. TRANSPORTATION OF OBJECTS In RSA1 define the objects -- - Collect them in package and transport -- Use Object Changeability tab in RSA1 to ensure that the object can be modified in PRD system. 19-Aug-09 SYSTEM COPY (FOR BI SYSTEM) 1. Take the backup f the production system (Source) 2. Pre-Steps on the target system (The tables/ Data that need to be restored after a system copy) 3. Clean the database (SAPDATA1, SAPDATA2,..............) 283 SQL> Select username from DBA_USER; SQL> Select table_name from dba_tables where owner = 'OPS$willsys99\NWADM'; 4. Restore the database from backup /or physical copy of the datafiles (SAPDATA1, SAPDATA2..............) 5. Generate control file (Alter database backup control file to trace) A trace file is generated in saptrace directory Rename the file to control.sql (Change the SID and path name of datafiles accordingly) 6. Remove the entries before "startup nomount" and after "Characteristics WE8DEC' Run Control file on the target system 7. Run "Oradbusr.sql" to setup permissions on the database to create OPS$USERS a. Up to 4.6c SAPR3 is the owner of the database. b. up to ECC5.0 SAP<SID> is the owner of the database. c. From Netweaver 04S (WebAS 7.0) on wards SAPSR3 is the owner of the database for ABAP. SAPSR3DB is for the JAVA system. Mechanism: 1. User i.e. work process connects to the database as user "OPS$<Hostname>\SIDADM to get SAPSR3's password. 2. SAPSR3 is the schema user whose password stores in table SAPUSER which is owned by OPS$<hostname>\SIDADM Note: OPS$ mechanism provides a means to connect to the database without any password i.e. user with prefix OPS$. The OS user is created in the database with prefix OPS$(OS Username). The connection is only possible when ... SQL> select count * from dba_table where owner = 'SAPSR3'; SQL> select bname from SAPSR3.USR02; Remote_OS_Authenticate = True 3. The Process gets the password and disconnects the session. 4. Process relogins to the database with user SAPSR3 who owns the complete SAP database. 5. Now the user can access the complete SAP Schema. 6. When the user log in with userid/ password/ mandt/ language it goes to the table USR02 (Internal security of SAP) to validate users. 284 Note: If any of the 1-5 fails then R3Trans -d results (0012) snote : 400241 SAPSR3 password resides in two tables. 1. DBA_USERS 2. SAPUSR TABLE SAP recommends to change the schema user password using BRTOOLS/ SAPDBA. If it is manual we need to change in two tables. SQL> Insert into table 'OPS$<hostname>/SIDADM'.SAPUSER values SQL> Alter user SAPSR3 identified by "New password" When you insert password it is alphanumeric(It will be in the encrypted format after restart) Goto > Tcode SECATT Test [ ] create Description [ ] Component [BC] [SAVE] Question: We have 300 user and every month their password needs to be changed. Or You have different users with different roles and profiles. How can you achieve this? This will be achieved from SECATT Tcode. Click on Execute F3 In the main screen >> In the toll bar. Now go to change mode > click on Pattern www.erpgenic.com/ecatt ------------------SM35 Create new recording - Give tcode SU01 - give the record name. SAVE Goto that particular SU01. Change - Change password - Save. Now goto SM35 you will find all the activities on SU01. Export that data as excel sheet. Change the password & username and ... ------------------Ensure that R3Trans -d results in 0000 POST ACTIVITIES 1. Truncate the table RFCDES. This is sued to truncate all the RFC connections. If not the restore system behaves as a source system and triggers the jobs. 285 SQL> Truncate table SAPSR3.RFCDES; SQL> Insert into "OPS$willsys99\NWDADM".sapuser values < 'SAUSER','ADMIN123'; 2. Alternatively you can set rdisp/ wp_no_btc=0 before you start the system or set the time to rdisp/btctime = 0 (Don't worry as SICK results in error) 3. SMQ1, SMQ2, CDCLS(Cluster Table) we can truncate strictly Backup need to take USR02, RFCDES, SLICENSE, DBLS (Used to change logical system names) Client information, STMS configuration, system specific programs, reports transactions. Use 1. Table - TOC (SE01) Transport of copies 2. Programs - Relocation of objects SE01(Relocation of objects) 3. Screenshots. Pre-Activities SM51 - Global Instance SCC4 - All the clients SMLG - Logon Load Balancing RZ04 - Operation Modes STMS - Transport Group BTCTRNS1 - Is a report to pause the background jobs BTCTRNS2 SM37 - List of Background Jobs RZ11 - Profiles. While client copy in ECC error: FINB_TR_DEST type 3. For this we need to create a self RFC. Specify the RFC name in FINB_TR_DEST. 20-Aug-09 BI MONITORING BI uses batch processes to execute the reports, queries, etc. which consumes more time and resources. Technically batch process uses heap memory, extended and roll memory sequentially where as dialogue uses roll memory, extended and heap memory. If the memory is not sufficient in both the cases the process gets terminated or hangs up. BTC uses Dialogue uses abap/heap_area_nondia where as abap/heap_area_dia 286 ST03n is used to identify the response time of the users, Transaction of reports and processes. Response time depends upon the data to be fetched, query being used, or the duration of the report. (From Date - To Date) Scheduled: When the jobs are defined the status is scheduled. Released: When the execution time is specified for a defined job then its status is released to execute at a point of time. Ready: When the specified time elapses then the status will be ready. Process Flow 1. BTC jobs are defined in SM36 2. The jobs are saved in table TBTCT, TBTCS...... TBTC* 3. A background job SAPMSSYST which runs periodically for every 60 seconds or the time specified in the parameter rdisp/btctime = 60 Secs. This period job runs in the dialogue mode and collects the jobs and runs them into active mode which are in the ready state. Active: The job is actively running on the system. Finished: The job is successfully completed/ Terminated Cancelled: The job is failed The possible reasons for Job Failure: 1. The memory is not sufficient 2. User authentication/ authorizations/ validity ......... issues 3. The variants are not properly defined. Variant is a selection criteria to provide the inputs runtime without user intervention. 4. The dependent jobs are not completed in the process. 5. Database specific issues related to space during the data extraction from backend system. 6. File system issues when extracting the data from flat files (File corrupted, file not opened, file system permissions are not as per ETL format. CDCLS is the cluster table which is having huge data DB02 - We can find the top 50 Tables. TCodes RRMX - It is used to start the business explorer and analyzer. RSRV - To repair the info objects 287 RSPC - It is used to monitor the process chains and check for the links that are broken. RSA1 - ADW RSPC Variant RSPC Process Log Note: Each BI System has its own process before you start working ensure that you are well aware of the process of DTP, Source System, Process Owner, Critical Jobs and their priority and escalation levels. Capacity Planning: DB02--------- Space Analysis------- Identify top 50 table and record them every week to identify the growth of the table. (It is also used to identify the accidental data growth) ST04 : Buffer Monitoring ST30 : Global Performance Analysis 22-Aug-09 DATA TRANSFER TECHNIQUES RFC: Remote function call (SM59) it is used to call the other system using the gateway to fetch or send the information. There are 4 types of RFCs 1. ARFC 2. SRFC 3. TRFC 4. QRFC ARFC : Asynchronous RFC: It is used to communicate between two systems but the source system process may not get the acknowledge from the Target. Some times the data may be lost in transition. The source system process does not bother whether the information is received by the target system. It is similar to a post card. It is not reliable and consistent. SRFC: Synchronous RFC: It is used to communicate with receiving system and wait for acknowledgement. If the acknowledgement is delayed it will go into RFC/ Sleep/ CPIC Mode. It is reliable but the resource gets blocked at the target system. If the target system is not available (Example BTC Process waiting too long in the active state) - All BW Systems uses SRFC. 288 SM58 - To find all the IDOCS TRFC: Transactional RFC : It is an advanced version of ARFC. It is used to communicate with receiving system and if the system is not available it will generate a Transaction ID in SM58. and a background job RSARFCSE runs for every 60 Seconds. It is reliable, gets the acknowledgement and data transmission is consistent. Example: Central User Administration Parent client creates users and send it to child clients. If child client is not available it creates a transaction ID in SM58 and ensures delivery when the child client is available. QRFC: Queued RFC: It is an advanced version of TRFC to ensure the jobs are processed in a queue. To execute QRFC we have a job called QUIN Scheduler - We have SMQ1 (Outbound), SMQ2 , SMQR - Quin Schedulers QRFC generates the process of LUW's in the sequence. When the sequence is mandatory in the data transmission QRFC is recommended. SAP Implemented all the above services to ensure the quality in the data transmission. SAP named it as QoS (Quality of Service). SAP consider SRFC, TRFC and QRFC. 1. SRFC --- BE (Best of Efforts) - With best of efforts it will deliver to Target system. When you find BE it is SRFC. Majorly we are going to use in BI and XI Systems. 2. TRFC -- EO (Exactly once) - It checks exactly once. 3. QRFC - EOIO - Exactly once in Order. ALE: (Application Link Enabling): It is used to transfer two loosely coupled systems (SAP to SAP systems) Eg. BW to CRM; ERP to ERP etc. SALE/ BD64/ BD54 it is used to define the logical systems and sending/ receiving systems. Each system that participates in the data transmission is identified by it's logical system name i.e. SIDCLNTCLIENTNO. Transfer ----------- Exchange -------------- Transmission => Are Same And is recommended to define the RFC's using logical system name to uniquely identify in the landscape. 1. Define the distribution model (In Sale TCode) in BD64 (Change) - Create Model View - Give the tech name - Continue. 289 2. API's Application Programming Interface: It is an interface in BD64 select the model click on ADD API defined based on your application either to send or receive data based on the business it is called as BAPI. (Business API's). The BAPI will be assigned between the sending and receiving system BAPI contains one or more methods. Methods are similar to function modules to perform certain tasks. EDI: Electronic Data Interchange: It is used to transfer the data between SAP to Non-SAP systems and vice versa. In order to monitor the EDI used TCODE WE05 IDOC: Intermediate Document: It is in the understandable format of both sender and the receiver. Non SAP systems could communicate directly with SAP systems. They required adapters (File Adapter, J2EE Adapter, IDOC Adapter, HTTP Adapter etc) When the supply chain market is growing the necessity of 'E-Commerce' Electronic business EB's) is gaining importance and the vendors, suppliers wants the documents flow electronically with out any paper In order to monitor multiple senders and recipients it will be difficult to use SAP Standard transactions, SAP standard systems and mechanisms. XI/ PI EXCHANGE INFRASTRUCTURE/ PROCESS INTEGRATION It is used to communicate between SAP to NON-SAP and vice versa. It communicates with both sending systems and receiving systems via Intelligent Broker. XI Communicates with out Adapter for the versions based on WEBAS 640 and above i.e. 4.6c is involved then it requires an adapter. SLD : http://<hostname>:50000/SLD 290 1. Why SLD is mandatory in XI? - SLD is to define technical system (Hostname) & Business system (Client) that are going to participate in Integration . - It is used to define the roles of business systems in the XI domain. - It is used to define the XI Domain - Architectural components need to be defined. Integration Directory is nothing but customization Integration Repository is nothing but Development. 2. How to open the XI home page from ABAP? - By using Tcode SXMB_IFR => To Open the XI Home Page. We have default user PISUPER Password : Master Password. Design means IR Customize means ID config time. 23-Aug-09 XI 2.0 very limited XI20 to XI30 is called as Migration. XI 3.0 very limited based on WEBAS 640 XI30 to PI7.0 called upgrade. PI 7.0 Immediate release on WEBAS 700 which required both ABAP & JAVA Environment. It required both command on ABAP & JAVA Environment. XI is Used to exchange the information between SAP to SAP and NON-SAP systems vice versa. 291 - XI/PI is an Intelligent broker to communicate with systems using adapter with RFC Mechanism...... (BE, EO and EOIO) - XI/PI has not penetrated into market because ALE, EDI, IDOC, file transfer, Batch inputs, BDC (Batch data transfer communication) are in place. To replace them we need a new server i.e. landscape (DEV, QAS, PRD) environment which is expensive and technology required.. Where as companies are habituated to use TIBCO, ROSETTANET etc. Eg. In India Reliance, Hero Honda is using XI3.0 Xchange Infrastructure 3.0 based on WEBAS 640 Process Integration 7.0 based on WEBAS 700 PI 7.10 based on WEBAS 710 PI 7.10 based on EHP1 WEBAS 710 It requires both environments i.e. ABAP and JAVA. XI Architecture: Integration Builder -------- Integration Server Integration Directory ----- Business Process Engine Integration Repository --- Runtime Work bench Central Adapter Engine. PI is deployed through Integration Repository (IR). - Integration Builder is used to build the objects that are required for Integration (Source and receiving system). It contains two areas IR and ID. - IR is often referred as Design Time (Integration Repository) which is used to create and design the integration objects. NOTE: XI/PI license is based on date transfer like size -- 2GB, 5GB, 10 GB. XI Uses global format (XML Format) Extensible Markup language with the help of SOAP (Simple object access protocol). XML is an industry standard which is in the understandable format (Using meta data (Data about data)) It uses its own tags <address>, <price>, <customer>, <shannu><willsys> - ID (Integration Directory) is referred as config time (Integration directory) which is used to configure the run time objects (Sender, Receiver, Interface, Agreements). - To avoid complex developments SAP Provides predefined XI-Content which can be deployed using Integration Repository. The content provided will be in ZIP format which contains ".TPZ" Extension. 292 Note: 1. How did you deploy XI-Content? Through IR. 2. Architecture of XI? 3. How did you apply patches? Through JSPM 4. How did you transport the objects. Extensions: CAR SAR JAR WAR SCA SDA EPA .ZIP EAR TPZ - Compressed Archive --- Mostly for Patches - SAP Archive -- Mostly for SAP Kernel. - JAVA Archives - Web Archives - SAP Component Archives - Deployable archives software SAP - Enterprise Portal Archives - Zip Files - Enterprise Archives - XI/ PI Content Tools Visual Admin Tool. Usr\sap\sid\dvebmgs00\j2ee\admin\go.bat On UNIX ./go (JAVA parameter need to set like environment variable) Config Tool. Usr\sap\sid\dvebmgs00\j2ee\configtool\configtool.bat SDM Usr\sap\sid\dvebmgs00\SMD\remotegui.bat JSPM Usr\sap\sid\dvebmgs00\j2ee\jspm\go.bat NWA http://<hostname>:50000/NWA SLD http://<hostname>:50000/SLD Template config Tool. 293 Usr\sap\sid\sys\global\templateconfig Standalone Log Viewer Usr\sap\sid\dvebmgs00\j2ee\admin\logviewer\standalone\logviewer Questions IMP 1. Difference between SDM and JSPM? 2. Difference between config tool & visual admin tool? 3. How do you apply kernel? 4. Users created in standalone JAVA & Integrated engine Administrator, J2EE_Admin? 5. UME in standalone JAVA & Integrated Engine (JAVA - ABAP Engine)? EP Url's IR http://<hostname>:50000/irj Useradmin: http://<hostname>:50000/user admin J2EE engine: http://<hostname>:50000 XI Url's IR: http://<hostname>:50000/rep (SXMB_IFR) Tcode ID: http://<hostname>:50000/dir (SXMB_IFR) Tcode RWD: http://<hostname>:50000/rwp MDT: http://<hostname>:50000/MDT - message Exchange Profile: http://<hostname>:50000/ exchange profile In order to ensure SOD (Separation of Duty) XI creates users during installation only. For XI we have XI Super and PI we have PI User Users in PI - You can find in SU01 -> PI* Press F4 PI_JCO_RFC - RFC User PIAF User - Adapter User PIDIRUSER - Integration Directory User PIREPUSER - Integration Repository user PIISUSER - Integration Server User PILDUSER - Integration Landscape user PISUPER - Super User PIRWBUSER - Runtime Workbench user. (In the above user names take out PI and use the AF, DIR, REP etc for user name analysis) 294 Note: All the system that need to participate in the integration must be registered in SLD along with software component version and products. If the participating system is ABAP a technical system pointed to business system is mandatory. There are two roles in the XI System 1. Integration server to process the messages 2. Application system which is a sender or receiver 24-Aug-09 PCK: Partner connectivity kit. This can be installed at partner landscape. This is used to communicate with XI/PI to transfer data to SAP systems. XI Installation 640 - XI3.0 Install ABAP Instance (Central and Database Instance) Create a client and perform ABAP - Post Installation Activities Install JAVA as an add-on on that client Install XI_Content Install Adapter Engine PI 7.0 In PI7.0 all the above can be selected during the selection of usage type. - Select ABAP, JAVA and process integration.. XI requires both ABAP and JAVA components. XI Landscape XI Usually connects to ERP and SRM There should be at least two systems in the landscape one for DEV and one for PRD. Production Landscape 295 XI, EP, BI maintains their own SLD. POST Installation Activities 1. These can be performed manually or using NWA tool. Note: CPIC_MAX_CON=500 (Environmental Variable) to avoid the error max connections reached. 2. You can use NWA Tool to perform the post-installation activities automatically. Note: In PI 7.1 it is recommended to use NWA tool only (like creation of Users (SUSERS), generation of roles and profiles and assignment of roles to users. Earlier these activities are performed during installation, now moved as a part of post installation activities. 25-Aug-09 1. MANUAL PROCESS. Post Installation Activities 1. Check all the services are running from Visual admin tool. 296 Com.sap.aii Com.sap.lcr Com.sap.rprof.remoteprofile Com.sap.xi Note: Deploy service is also used to deploy small applications. 2. Config SLD - Assign LCR roles to users (P1APPLUSER) 3. Define RFC connections "T" from ABAP engine to JAVA Engine. 4. Define RFC type "A" 5. Assign user in SZDAPICUST (PIAPPLUSER with LCR Rights with assign password) 6. Assign roles to PISUPER (4 Roles) 7. Execute transaction SWF_XI_CUSTOMISING to configure the basic settings for XI/ PI - It is used to set RFC destination, Time Unit, Number ranges etc. 8. Assign application role to user group in SLD data Supplier service click on user group icon. 9. Configure ABAP system to SLD using transaction. RZ70 with the help of RFC "SLD_UC" 10. Use SLD data supplier service to populate information of JAVA engine to SLD Note: 9 & 10 are mandatory for all systems that are going to participate in the integration. 11. Define a technical system in SLD & assign the product and software component. 12. Define a business system i.e. a technical system with specific client. 13. Define the role of a system in SLD.. Application system integration server. Note: There will be only one integration server in the XI Domain that is used to process the messages, Senders & Receivers are configured as Application System. - Define RFC type "H" INTEGRATOIN_DIRECTORY_HMI to refresh the service in J2EE Engine. AI_DIRECTORY_JCOSERVER: Points form integration server to the integration builder. The Program ID corresponds to the entry under for the J2EE Engine (Used to refresh the runtime cache) AI_RUNTIME_JCOSERVER (SLDAPIUSER_<SID>, LCRSAPUSER 14. Create RFC connection of type "H" for PMIStore (Process Monitoring Infrastructure) - Use the URL: http://<hostname>:8000/sap/bc/spi_gate With user PIRWBUSER & password - It is used to populate the monitoring into ABAP Engine. - We can use ABAP/WEB to display the end to end monitoring of a message. 297 15. Configuring Integration Server on ABAP Engine - In principle XI Domain is defined in SLD & associated. - Integration server & application systems are defined in SLD itself - Each system is registered in the SLD, but ABAP engine process the messages flow between them using Integration Server. - So each system that needs to participate in the integration define itself with a system role. - Execute transaction SXMB_ADM (Integration Engine Administration) Each ABAP engine is a Integration Engine. If the integration engine is configured as an Integration Server then it is called as XI Engine & other are called as Application system (Senders or Receivers) Similarly as Master system in BI (RSADMINA) SXMB_ADM Configuration - Integration Engine Configuration (Change Mode) Menu - Edit - Change Global Configuration data Select the business system roles and save it. Set to integration server. 16. Register Queues SXMB_ADM Administration - Manage Queues - Register Queues (Should say Registration Complete) 17. Triggering the self registration of Adapter Engine Deploy comsap.aii.af.cp .cpp to trigger SAL self registration. 18. Importing content to Integration repository Resides at sys\global\XI\repository server\import\.tp2 file The XI Content is available in the shipped DVD or download form the Market Place. - Unzip the content into .tpz files - XI Content contains predefined integration objects to avoid the design & development of objects. - XI content should be relevant to the backend engine version ECC6.0 So to - Integrate Repository - Tools - Import Design objects Development. 1. Initialize integration Repository 2. Import the design objects provided by SAP 3. Import the landscape information for custom development, define technical system, business system, product, software component. 4. Define URN (Uniform Resource Name) Com.sap to define the objects - (Infocube objects) 5. Use RFC/ IDOCS to communicate with backend to import the IDOC/ RFC structure to use the sending/ receiving system data structure. 6. Message mapping 298 7. Generate proxy objects (sproxy in ABAP) (Tools- Java prog (IR)) ABAP - SPROXY (Tcode) 8. The interface objects are cached in the table which can be monitored by transaction. SXI_Cache (Status of XI runtime Cache) 19. Transaction SLDCHECK is used to check the SLD Connectivity 20. Patching XI/ PI Use SPAM to patch ABAP Use JSPM to patch JAVA Maintenance certificate is mandatory for all the patches in NW04S SR3 form January 2009 onwards.. Maintenance certificate locks SPAM & is valid for 3 Months. XI/ PI should be updated (kernel, Patches), SLD, CIM should be updated before any other system in the landscape. 26-Aug-09 INTEGRATION REPOSITORY 1. Import XI Content 2. Export XI Content 3. Import the system landscape (Products & Software components) into Integration Repository. 4. Define the uniform resource name 5. Clear the cache if required for SLD Note: IR requires JAVA webstart which is around 30MB on each XI Consultant desktop. Transport Organizer User Interface INTEGRATION DIRECTORY It is used to define the configuration that will be used at runtime. Go To > Int. Repository > Environment > Configuration of Integration Directory It is also JAVA webstart on all the client machines Business System 299 The system that is defined in SLD (assigned with client no. to a technical system). Party in a company customer. Business Service - The service defined in SLD. Receiver Determination to define namespaces, interface. When the data is not updated in the messages during runtime. Then we will go to ID to clear SLD. 1. Configuring Logs severity Goto T-Code : SXMB_ADM Integration Engine Configuration Click on specific configuration Click on change - new entries Select the category Specify the parameter value QM1 - Process Monitoring Info. Category : Parameters Monitor : PM2_Monitoring Tuning : EO_ 2. Configure delete procedure in SXMB_ADM - It is used to delete the messages (Activating the delete switch) - Each XMI Message in flagged for archiving or deletion upon processing. 3. Defining Interfaces for archiving & retention period. It is used to define the time period before it gets archived. We can specify the sender & receiver whose messages can be flagged for archiving. (In ERP we use DB15, File, SARA, SF01 to configure & Schedule the archiving) 4. IX0S & DARK are third party tools for archiving. 5. Scheduling Archiving Job It is used to schedule the archiving based on time and date. Goto : DB15 Tables in Object : SD_VDDAT 6. Schedule delete jobs Job Name: SAP_BC_XMB_DELETE_<Client> 300 It is used to delete the messages that are flagged for deletion. 7. Error Analysis Settings It is used to trace based on users, client & condition also set for tracing. Create specify condition Username : DDIC Action: Trace level. Argument: 3 If the message id is 235 then logging in 1 If client is 000 then logging is 0 Display pipeline definition. It is used to process the message from Sender to the receiver. There are 6 Pipeline (Central, Central_back, Sender, Sender_back, receiver, receiver_back) Each pipe line internally contains pipeline elements. Message processing is based on LTM L - Logical Routing T - Technical Routing M - Message Mapping Process Flow of Message The message is sent by a sender using by calling a outbound interface (Sending System). It uses pipeline call integration server. The message is received in IE or Server by using Inbound with logical routing & the message is processed through the outbound processing using LTM. The message is received by the inbound proxy of the receiving engine & it acknowledges back to the integration server. 27-Aug-09 http://<hostname>:8000/sap/xi/engine RUNTIME WORKBENCH 301 It is used to monitor the XML messages from one end to another end. It provides the following monitoring elements. 1. Message Monitoring 2. Component Monitoring 3. End to End Monitoring COMPONENT MONITORING: (INTEGRATION SERVER) It is used to monitor the Integration repository. Integration directory Runtime Wrokbench SLD Integration Server Note: We need to see the icon as green Yellow means warning Red as error. XSMB_ADM Message Monitoring: It is used to monitor the XML message use transaction SXMB_MON1/ SXI_MONITOR to monitor the message or the web option (rwb0 to monitor the message. Messages can be filtered based on status, data and time, sender, receiver. The status determines whether the message can be processed or not. It specifies where the message is stuck in the error category. On day-day basis we need to identify the messages that are not processed and escalated to the respective trans. Message Flow: 1. Sender sends the message to integration server, this should be displayed in the message monitoring. 2. The message is received in the inbox of the integration server. which will be displayed in the message monitoring 3. The message is processed with receiver determination to identify the receiver who is configured in the integration directory. (Register in the SLD) 302 4. Interface determination Interface has to be determined so that the message will be pick by that API. 5. Mapping: The sending message data structure should map with the receiving message data structure. There are mapping failures (in IR). 6. Technical Routing: This is where the exact business system of a sender and receiver is identified. 7. Call Adapter: If required central, adapter engine is called (CAE). It consists of various adapters (File Adapter, J2EE, J2SE, HTTP, SOAP, RINF, ROSSATANET), If third party adapter like Tipco is used, PI supports it. 'BE' - cannot be resent. No receiver - case - ASYNC - exactly are the message has to be transferred. BE - restart not possible. TOO_MANY_RECEIVE_CASE_BE There should be only one receiver in a synchronous message. i.e. too many receivers are not allowed in BE SYNC (Synchronous) i.e. It is possible to define more than one receiver E010/ E0 Technical routing fails with message outbound binding not found. If receiver agreement not found than this error occurs. Check and refresh the cache using SXI_CACHE or check the configuration in the Integration Directory. Mapping Errors No_Mapping_Program_find (Indicates problem in the mapping programs) RFC ERRORS Check the RFC connectivity, Userid and Password, Gateway. QUEUE MONITORING SMQ1, SMQ2, monitor the status of queues, if the error is like SYS_FAIL - Full disk or database errors. ICM - Connection Exceeded (Increase the ICM Threads/ Soft shut down RZ10) ICM/ Min - Thread Adapter Problems 303 Check the adaptors and connection between IS, Receiver and sender. IDOCS: If the messages are still processed using IDOCs use SM58, WE05, WE21/ To check IDOCS. IDEX5 is used to identify the XML Messages (IDOCS) in the adapter. We also need to refresh adapter cache in SXI_CACHE into adapter engine cache. Technical Components An SAP system consists of several application server instances, as well as one or more databases. In addition to multiple dialog instances that execute user requests, there is a special instance that contains the message server and the enqueue server - the SCS (System Central Services) for the AS Java, the ASCS (ABAP System Central Services). It cannot process any dialog requests. A dialog instance with AS ABAP and AS Java consists of the following components: ● The Internet Communication Manager (ICM) sets up the connection to the Internet. It can process both server and client Web requests. It supports HTTP, HTTPS und SMTP protocols for the AS ABAP. In AS Java the ICM supports the HTTP(S), P4, IIOP and Telnet protocols. The SAP NW AS can act as a Web server or a Web client. ● Central services (message server and enqueue server) are used for lock administration, message exchange, and load balancing in the SAP system. ● AS ABAP components (in the graphic on the left): ○ The dispatcher distributes the requests to the work processes. If all the processes are occupied the requests are stored in the dispatcher queue. ○ The work processes execute ABAP or Java programs. ○ The SAP Gateway provides the RFC interface between the SAP instances (within an SAP system and beyond system boundaries). ● AS Java components (in the graphic on the right): ○ The Server Processes execute Java requests. ○ The instance controller controls and monitors the life cycle of the AS Java instance. More information: Internet Communication Manager (ICM) Work Process (BC-CST) SAP Gateway Java Cluster Architecture. The graphic below shows the components of the SAP NetWeaver Application Server (in grey). To retain clarity a few communication channels are not included in the graphic. 304 Upgrading Integration Develop * Basis Platform Customization 305 Advantages of SAP 1. Tightly integrated with rich set of modules SD, MM, FI, CO, HR, PS, PM, Oil, Insurance BI, PI etc., 2. Unicode system (Multi language Support) - I18n 3. Non Unicode / Unicode 4. High level Security 5. Supports (24/7 * 365) 6. Netweaver 7. OS Independent 8. DB Independent 9. Industry Specific Solutions 10. Exchange information between SAP to SAP and NON SAP 11. Continuous improvement by releasing Support Packs, Upgrades and Enhanced Patches 2.0 3.0 3.1a b c . .....i 4.0 a 4.0 b 4.0 c 4.0 i BW 2.0, 3.0, 3.1, 3.1c, 3.5, 7.0, 7.1 Portals 4.7 ECC5 ECC6 ECC7 5.5, 6.0, 7.0, 7.1 12. Intranet and Internet (Web based) 13. Supports MCOP [OLAP/ OLTP) Supports all kinds of interfaces Will use XI to communicate with other GUI Developed in PHP or JAVA 306 14. High Level Security (SOX) 15. Supports all third party tools mobile... 16. IS Textile, Pharmacy, Oil, Insurance, Chemical, Fabrication and Banking 17. SMB (Small Customers) - Small Midsize Business BI (Netweaver) latest in BI Suite7 Notes / Packs Support Packs Solution Manager EHP Good Feedback from the customers Good service provider from service.sap.com Internet/ Intranet http://<hostname>:8000 EWA MCOD/ OLTP BASIS NETWEAVER Requirements in the Market Basis Consultant Netweaver Security Consultant Enterprise Portal Tech Solution Manager Basis: A foundation layer for all SAP systems and with out Basis there is no SAP System Role of the Basis Admin 1. Installation of all the above components 2. Post Installation Activities + Specific post installation for (CRM, XI, BI, Solution Manager and CRM) ECC- Enterprise Central Component 307 3. Patch Management 4. User Administration 5. Role Management 6. Performance & Fine Tuning 7. Administration & Monitoring 8. Load Balancing 9. Customize and Development. | Security | Different level of Designations in SAP 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Web Application/ Portal Engineer SAP Business object Consultants People Soft tech lead-security/ Portal/ Admin SAP MM Consultant SAP SD Solution Architect SAP Basis Senior Consultant SAP FICO Consultant SAP Security Engineer SAP Development Lead SAP Security Admin Lead SAP technical architect consultant SAP Abap Principle Consultant (Exp in Life Cycle Stages) SAP XI/PI/ Enterprise portal lead developer/ programmer SAP BW Migration SAP Basis & Virtualization Consultant Basis Layer up to 4.6D (3.0, 3.1, 4.0, 4.5, 4.6) ECC BI SCM B A SRM S I CRM S Note: Application Server provides Internet and Intranet to BASIS SAP Web Application Server - Integration of BASIS and Internet/ Intranet all functionality of SAP defined in ABAP so called as SAPWEBAS ABAP SAPWEBAS JAVA to be more interactive through web. 308 Enterprise portal 640, 700, 710 PI 7.0, 7.10 XI 2.0, 3.0 SAPWEBAS ABAP Provides Business Functionality SAPWEBAS JAVA Interactive/ Dynamic, Multilanguage SAPWEBAS Application platform to host all SAP Application components. WEBAS ITS Basis Layer Netweaver 7.0 (SAP Stack) BI7.0, PI7.0 SOLMAN, MDM7.0, EP NETWEAVER is a PIPA Application Platform People Integration Information Integration Process Integration BASIS Netweaver ERP Security User Management Engine SD, MM, PM, FI, CO, PS, PM, SD, SOX J2EE Roles HR Security/ Structural Authorizations Single sign on LDAP User Administrative Monitoring BI Security, XI Security WEBAS Java Security. SSCR - SAP software change registration. 309 24/Jun/09 SAP R3 4.0B, 4.5B, 4.6B, 4.6D and so on .... /usr/sap/<SID>/SYS/exe/run—the directory that holds a local copy of all SAP instance executables, libraries and tools How to know the kernel version of a SAP R3 system ? Goto transaction sm51, and click (not double click) on the Database server and then click on release notes. There you will see the SAP R/3 kernel and patch level etc. 310 Kernel or Shell : The core that provides basic services for all other parts of the operating system. or KERNEL: The kernel is the part of the Operating System(OS) that interacts directly with the hardware of computer through device drivers that are built into the kernel. It provides set of services that can be used by programs insulating these programs from the underlying hardware. Major functions of kernel are: 1. To manage computer memory 2. To control access to the computer 3. To maintain file system 4. To handle interrupts 5. To handle errors 6. To perform input and output services (which allows computers to interact with terminals storage devices and printers) and 7. To allocate the resources of the computer (such as CPU and input/output devices) among users. -SAPMnt: 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 on Netweaver it is created automatically) SAPLoc in Windows This SAPmnt is shared because it needs to share the transports, support packages, profiles, executables etc between systems in the landscape. [Dev] ---------->[Qlty]---------->[Prod] SAPmnt 311 Default Users <SID>ADM -- SAP start (OS Level Access Related to SAP) ORA<SID> -- For UNIX SAP SERVICE <SID> Sys system Master Database J2ee_ADMIN Java Web SAP* DDIC SAP R/3 SAPSR3 SAPSR3DB Unicode - Multilanguage Support This requires additional 40% of resources. Earlier case Individual passwords need to be set but now day's only one Master password for all the userids. Multiple Components on a Single DB repository A host is either a client or a server. A host has its own address on the network, and is its own machine. A server has its own address and sometimes multiple addresses. It provides access to services and information. A client accesses the servers. It requires its own address. Interface / Screen Exports/ System Copies Kernel [ Dependent] 312 Install Mstr Java Comp JRE Exports [ Dependent] [ Independent] [ Dependent] [ Independent of OS, DB] Multiple components on a Single DB SID - SMN EPDB Owner 1- SAP<SID> SID - EPD SMNDB Owner 2 - SAP<SID> First Shipment Customers - 150 Customers (Beta, Alpha Versions) Libraries (Linux) ~ Exe (Windows) R/3 Architecture Eg: Consider the Reservation Counter. GUI Presentation All the passengers Mobile IE Debit Card Application Resrv. Counter <They do not carry Any thing> Database Centralized (Native form of Database) ATM * Commit occurs then only amount (Synchronous update) will be debited from the ATM. Caching/ Buffers Note: If one App server is down no need to worry we can access another application server. It process data rather than carrying data. App server doesn't contain any data on its own. 313 Sql Server Oracle - Transact SQL - Pl/ SQL Presentation Server: Submits the user request Application Server: Process the user request by interpreting the request and it has a queuing mechanism based on FIFO. Frequently accessed/ rarely changed (Master Data) Eg: Address, Company name. Used to convert the data in to Native SQL Statements. Users always communicates in OPEN SQL which is SAP Specific format and not dependable on any database. It is intelligent to store the frequently accessed data as in Cache/ Buffer - Rarely changed. Kernel Set of Executables (OS, DB, Unicode, 32/64 bit dependent) \usr\sap\sol\sys\exe Start - Run - sqlplus "/as sysdba" Select username from dba_users; Select BNAME from SAPSR3.USR02; (database users) (Sap Users) SAP K E R 314 DB OS Kernel Provides communication between SAP, DB and the OS. Usr\sap\sol\sys\exe\uc\NT1386 25/Jun/09 Installation Logs C:\program files\sapinst_instdir\solman\system\ora\central\as Sapinst.log Sapinst_dev.log - Specifies the installation success / failure - 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 file Eg: Sasapappl0.tsk.bck Sapappl0.tsk Sapappl0.cmd Sapappl0.log Sapappl0.str - Structure of the DB Control.xml Keydb.xml -Helps to restart installation from the point where it is failed. What happens during installation? 1. Extracts the software. 2. Sapinst tool is used to install the software if required we need to download it from service.sap.com/swdc 315 3. 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 userid Note: The user who initiates the installation should have the privileges as Local administrator to install the software, create users, create groups, assign groups, create services etc., (This problems occurs in a Domain) If the user does not exists it creates now. On Windows OS <SID>ADM is also responsible for database but on UNIX ORA<SID> is the owner to work on the database. ORA<SID> provides the runtime environment for Database. Windows App Server <SID>ADM Database <SID>ADM UNIX App Server <SID>ADM Database ORA<SID> Note: 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 Number 5. It creates local groups and global groups and assigns them to users 316 Global groups - Domain Level Local groups - Locally SAP_LocalAdmin SAP_SOL_GlobalAdmin SAP_SOL_LocalAdmin From Computer Management -> Local Users and Computers we can view this 6. 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) It is 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 to ABAP CCMS (Computing Center Monitoring System) It is only used in JAVA and ABAP stack. Users Groups Services Creating directories Executables - OS Dependent - DB Dependent Note: - 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 Sets the user as nr=00 SAPDIAHOST=willsys28 SAPSR3 for ABAP SAPSR3DB for Java Engine 317 Where the systems are installed with these schema owners i.e., these users owns the respective databases. 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 scripts 8. Creates the tablespaces and datafiles on DDLORA.TPL Tablespaces are just like almoras in a house. 9. Now command files are created pointing to .str and data on the exports 10. 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 -- Installation Directories D:\usr\sap \USR directory is created with a shared folder SAP with shared SAPMNT & SAPLOC Eg: SAPMNT: SAPLOC: \\willsys\sapmnt ~ d:\usr\sap Both in Win and UNIX Only in Windows not in UNIX These are shared between systems and accessed locally and globally CCMS 318 PRFCLOG PUT SID HOSTS Trans CCMS - 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 upgrade SID Hosts - the complete SAP Application Server. Trans - is used to host the Developments 26/Jun/09 TASKS Installing SAP Component on SOLMAN On Windows/ SQL Server On Windows/ Oracle Windows/ DB2 Linux/ Oracle HPUnix/ Oracle AIX Solution Manager Connects all the three systems (ERP i.e, ECC6.0, Netweaver & CRM2007) I. Installation Inputs SAPInst SID 319 Instance Number (Default 00, 01) Mater Password JCE Policy Path for the CDs. II. Installation Logs Significance Sapinst_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, RFC's POST INSTALLATION To Check/ Test the installation Pre- Requisites for the Installation (JAVA, VMACHINE, RDBMS (Structures)) 1. Login to the system as <SID>ADM with the specified password 2. Check the disk space, utilization and upgradability Eg: root in Unix C:\ in Windows 3. Check the installation Logs 4. Check the Hardware conflicts using OS Utilities Run - cmd - DXDIAG Tool on windows to check the consistency of the hardware 320 5. Check the two Installation users on OS From Local Users and Computers <SID>ADM, SAPSERVICE<SID> 6. Check the groups SAPLOCAL_ADMIN SAPGLOBAL_ADMIN ORA_SID_DBA ORA-DBA ORA_SID_OPERATOR 7. Check 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 SAP 3. 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.msc 8. Check the USR Directory (SAP Instance files..... App) predefined shared SAP Directory with SharedMnt, (SAPMnt), and SAPLoc on windows Run - Cmd - "\\Willsys\Usr" 9. Trans Directory - Used for transporting the Objects Note: SID Specifies the Application Server and is possible to have multiple <SIDS> differed by the instance number Queries: SQL> Select status from V$Instance; Checks the DB Status SQL> Startup followed by enter key SQL> shutdown immediate Note: Only one SAPOSCOL per system Max of 97 Systems on a single box SAPOSCOL_00 - ABAP Instance 98-99 for routing 321 SAPOSCOL_01 - JAVA Instance Note: Each SID uses different Ports Note: In the console tree of SOLMAN if all the three entries (SERVICES, USERS and GROUPS) are available then only we can confirm there are 3 Instances in one single system. 10. <SID> Directory \usr\sap\<SID>.......... Config..... Usagetypes.properties - used to specify the usage types that are installed on the system. \usr\sap\<SID>\config ERP <SID1> ERP<SID2> EP BI JAVA ABAP EP BI JAVA ABAP on a particular <SID> Note: Now-a-days its 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 direntories then it is Integrated Engine (ABAP + JAVA) Note: Portal is only an application that is not based on ABAP Engine Eg: Consider Hero Honda Land Scape BI - ERP (ECC5.0) Enterprise Portal - CRM - SRM Suppliers - PI Dealers 322 12. SYS Directory Contains executables and profile parameters to start and stop the system EXE Directory - hosts all the executables from netweaver exe dir contains UC/ NUC and 32/64, i386/ ia64 In 4.7 we can see only exe directory 13. Work Directory This stores the startup and error logs -------------------Starting and Stopping SAP System Open up the services file from windows\system32\etc Startup: What happens during the startup? 1. Checks the DB startup User issues a command called startsap 2. It starts database by using command strbs.cmd Note: Exe directory holds commands, scripts and executables \USR\SOL\SYS\EXE\UC\NTI386\ strbs.cmd In order to start the system it looks in to the profile START_DVEBMGS00_WILLSYS28 <Instance> <Host Name> 3. It starts the database and writes the logs into the work directory Note: Stderr1.log (Standard Error Log) \USR\SAP\SOL\DVEBMGS00\WORK Eg : ; sapstart.log 323 If the folder name changed as NTi386 to NTi3867 sap wont startup 4. Starts Application Server (Central Instance) It is started by using msg_server.exe and writes the log into Dev_ms, stderr2. 5. Starts the instance i.e., dialogue by using disp+work and writes into Dev_disp, dev_w0, dev_w1..... 6. Starts internet communication manager by using icman.exe and writes Log file into dev_icm. STARTUP Sequence 1. Database Server/ Instance 2. Central Instance 3. Dialogue Instance 4. ICM SHUTDOWN Sequence 1. ICM 2. Dialogue 3. Central 4. Database. 27/Jun/09 Note: Solution Manager Connects all 3 Sys - ERP (ECC6.0, Netweaver & CRM 2007) Netweaver components (EP, XI, BI, JAVA) 1. Pre-requisites 2. Installation Inputs 3. Installation Steps 4. Installation Logs and then Significance 324 5. Installation Check/ Test 6. Starting and Stoping System 7. Startup Errors and Resolution 8. Installation post steps 1. Pre-Requisites 1. Hardware 2. CRM/ SOLMAN/ XI... Installation Guide Www. Servicemarketplace/instguide 3. Sizing H/w (If user increases) 4. Swap memory 20GB RAM * 3 Times 5. IP Address/ Hostname - Ports should not be used 6. JAVA, JRE and set the path 1.4/2_12 7. CD with Lable.asc 8. CPIC_MAX_CONV = 500 CPIC Protocal (Common Programming Interface for Comm) In Linux # setem CPIC_MAX_CONV 500 and press enter Inputs: Steps: Logs: Checklist: Master Pwd, SID.... Kernels SAPInst.Log, SAPInst_Dev.Log Directories Startup Startup Uses MMC ->Select SID -> RT Click - Start It reaches from the Startup Profile Start Database --- Strdbs.cmd - v9start.sql Listner control -> Lsnrctl Lsnrctl start Look for services Oracleservice <SID> and Oracle Listner. Why the Database is not started? 1. startdb.log; stderr*.log; strbs.cmd We should logon as <SID>ADM/ ORA<SID> win/ UNIX to start database. (Root and Administrator) - we cannot startup the database Database terminated or Aborted which may requires restore & recovery. 325 Database can be started using command startup or startup open SQL> startup Says- Oracle Instance started. Causes: 1. There is no sufficient space to start database 2. Memory could not be allocated as per the Oracle Profile Parameters 3. Changes or corrupted profile parameters. 4. Certain scripts need to run after upgrade else the db many not start Export Shared Drive Oracle/ HP Unix Import DB2 Linux Kernel takes care of Migration Exports OS/ DB Independent CreateDB 5. Analyze Alert <SID>.log for Oracle errors like 0ra-1578, ora-600 etc., D:\ Oracle\ SOL\ Saptrace\ background\ alert_<SID>.log Starting Message server Started by using msg-server.exe and writes log into Dev_ms.log/ stderr log file It could not be started due to the following reasons. 1. Hostname/ Ip address change 2. Port number 3600 is not available 3. Fully qualified host name FQHN dev_ms the host name should suffix with at least two dots (Eg: www.willsys.com) 4. Dev_ms should be logged with customer key 5. File permissions on the profile/ file or Dir does not exist. Starting Dispatcher and work process It uses disp+work to start the instance and writes the logs into stderr/ dev_disp/ dev_w0........ 326 Various Reasons for the Failure 1. Hostname/ IP Address change 2. Message server/ DB down 3. Connection to Database failed due to authorization/ listner 4. Dispatcher is started by using parameters from <SID>_DVEBMSGS00_hostname. 5. If any of the memory, buffer tuning parameters are not configured properly then instance could not be started. DVEBMGS00\Work [ Available.log ] From this we can find when the system is up or down. Dev_disp {started - connected} If the logs could not be analyzed to debug on error situations then Rt click on the process -> Select Developer Trace. Set the parameters rdisp/trace = 0,1,2,3,4 It will write enormous log file into work directory. We need to set this value to Zero immediately after debug. (Work directory can be deleted and recreated) Each work process goes to the db and db will listen the workprocess OracleSOL01TNSListner - need to started on Linux Manually Refer- dev_rd, dev_rfc, dev_w0. System Profiles There are three profiles 1. Default.pfl 2. Start_DVEBMGS00_Hostname 2. <SID>_DVEBMGS00_Hostname Default Profile Startup Instance Resides in \usr\sap\<SID>\sys\profile Default profile is used to provide default parameters to start the system. It provides value globally to all the instance when more than one instance is configured. 327 Dialogue instance is something like extending reservation counters when users increase. Dialogue Instance Database Central Instance Dialogue Instance Dialogue Instance Default Profile: Eg: Common Dress Code applicable to all Start_Dev Eg: Started Individually : <SID>_dev... : Eg: Senior , Junior depending on the resources There will be only one default profile. Startup profile will be available for all the instances and it contains database, msg server, dispatcher, work process, ICM startup. Instance profile depends upon the resources and it contains only dispatcher, work process, ICM Startup. Say for Eg: 20 Instances - the profiles will be = 20 * 2 + 1 20 Instances * 2 (Startup and Instance) + Default Instance is a set of services with a dispatcher and work process. DISP+WORK Instance profiles governs the instance such as work process/ memory/ logon parameters/ ICM parameters 328 RZ03 - look for all the instances. Shutdown: 1. During H/w Migration 2. During OS/ Database updates 3. Maintenance Activities 4. Power Outages 5. Changes in SAP Parameters 6. Offline Backup Schedule Downtime 1. Notify all the users using email. [SM02] 2. Stop the dialogue instances 3. stop the central instance 4. stop the database. 28-Jun-09 Architecture of R/3 R/3 Multilayer PS PS - AS DS It is a GUI from where the user submits the request. It is also referred as an Interface Eg: SAPGUI It has various versions: 4.6c, 4.6d, 620, 640, 700, 710 From Netweaver onwards to provide Web functionality <<internet communication framework>> ICF is provided so that the system can be accessed through web browsers. Similarly Netweaver also include Mobile Infrastructure to provide mobile interface. Installation of SAPGUI Use the presentation server DVD to install SAPGUI, there are three types SAPGUI for windows, JAVA, HTML - JAVA (Non Windows, Unix) 329 We need to maintain the following initialization files. 1. SAPLogon.ini - Mandatory 2. SAPMSG.ini - Used for load balancing 3. SAPROUTE.ini - to access servers over router 4. SAPDOCCD.ini - to access sap library 5. SAPRFC.ini - for RFC these files govern SAPGUI and requires on each end user desktop based on the need. Solman\gui\press\gui\... SAPLOGON.ini copy on the desktop, open it and try to add some items. Activating Webgui/ SOLMAN functionality over the web. Goto SAP Internet Communication Framework (SICF) Tcode: SICF Login to the system with the user DDIC with the Master password and create a super user similar to DDIC Use SU01 Tcode to create a user Note: Dont allow to perform by the DDIC SICF and press enter Under SAP ->Public ->BC (Basis connector) ->Rt click activate. ->BSP (Business server pages) ->PING Activate All the functionalities over the web. Goto SE80 and publish system/ Internal Note: Download SAPNote to activate SICF services. The system name should be FQHN (Fully qualified with atleast two dots eg: www.sillsys.net) Ports 8000: ABAP 330 50000: JAVA ICM/ Hostname_full = willsys28.sap.net, this parameter needs to be set in RZ10. SE80 - Select - Internet service System Under object name folder "System" rt click -> publish complete service. Select - webgui -> publish complete service Application Server: It is a physical entity used to handle the user requests. In sap terms it is an instance. Instance is a service that represents the sap runtime. Instance provides memory, CPU, buffers, Interpretation of user requests. Queue mechanism based on FIFO etc., Instance has its own instance number and it is possible to install multiple instances on single application server based on available resources. Instance is represented by its dispatcher & work processes (Disp + Work) Central Instance: There will be only one central instance in the sap system. It provides Message server and Enque server along with other services. Database Layer/ Database Server/ Database Instance: There will be only one database instance in the SAP System. It is used to store the Data. Dialogue Instance: It is required to handle additional load on the SAP System. CI - Client Oracle DB DI - Client 331 We need to have a client to communicate with the Native SQL Each instance is monitored by its own DPMON (Dispatcher Monitor) For Net weaver JCMON ICMON [SMICM] ICM Monitor. Post-Installation Activities 1. SE06 Post installation Activity 2. SE03 System settings(Modifiable and Non-Modifiable) In most cases PRD/ QAS are set to not Modifiable DEV/ SAND/ TEST are set to modifiable. 3. STMS Used to configure transport management system. 332 4. RZ10 Import profiles from OS Level to DB 5. Create Super Users 6. SM36 Schedule standard batch jobs 7. SMLT or I18N Additional Languages configuration 8. SR13 Library configuration 9. PFCG Define custom roles and assign to users. 10. RZ10 Define work process, memory, buffer parameters 11. SCC4 Define client 12. SCCL Client copy 13. RZ04 Define Operation modes to effectively utilize resources 14. SM63 Assign Timings 333 15. BRTOOLS Take offline backup 16. SICF/ SE80 Enable WebGUI 17. Install Dialogue Instances if required DB Client software 18. SMLG Configure logon loadbalancing 19. Apply license through transaction SLicense (Access Market Place to apply License) 20. SPAM Applying support packages 21. Upgrade Kernel and SPAM version Kernel software and SPAM - 35 ABAP - 16 BASIS - 16 PI-BASIS - 16 SAP-BW - 20 BI-Cont - 13 Add-on System-status: - Component Version - from System-component information We need to apply patches (Kernel Info) Database Kernel R/3 Kernel 22. Hotpacks Patches that are applied online without restarting the System In UNIX # mount IP: / oracle/dump /oracle/share 29/Jun/09 23. Notes These are small corrections to the programs which are applied through transaction SNOTE 334 24. Support Package Group of notes, program corrections, bug fixes, Enhancements and additional functionality. 25. Support Stacks It is a group of support packages that includes ABAP, Basis PI Basis, Kernel, SAPM et.c., Licensing 8 Licenses for SOLMAN 8 Licenses for Netweaver Valid till 31-12-1999 service.sap.com From the tab called - Key and Requests - Request Permanent license key - provide type of system like (SAPERP,SAP Netweaver,SAP SOLMAN) TCODE - SLICENSE System - status - Solmon click on mirror icon 335 TCODE - OSS1 or SM59 Go through: SAPOSS - Connection Test (Online SAP Service) Note: ARAMCO - is having the following system landscape SAND TEST CUST (DEV) QTST TRNG PPRD PRD MIGR/ PRL LICENSING 336 Standard License Maintenance License - till 9999(YYYY) - 3 Months Each user license cost - 4000 USD In India tag is 2000 USD for min number of users Eg: 10 + 1 is minimum Developers are charged differently 10 Users - 40000 USD - 8000 USD + 1 Developer 48000 * 50 = 12, 00,000 4% VAT 17% Maintenance /Year 48,000 2, 04,000 ------------------------14,04, 000 10.3% Service Tax + Customs 2,04, 000 20, 000 ------ --14, 68, 000 22% Maintenance cost across the globe except INDIA 5 22% 1 24% 2 26% Eg: Telco Bajaj ARAMCO - 5000 - 270 -50000 One License - SOLMAN, ECC, SRM, BI, EP, PI, MI License is user based Once the license key is received then goto SLICENSE Tcode -> INSTALL And click Install new licenses button 337 From cmd prompt Soladm> saplicense - get It checks for 1. SID 2. Hostname 3. Hardware Key (Installed by SAP - Its an executable) Note: All the executables resides in - D:\USR\SAP\SOL\SYS\EXE\UC\NTI386 Note: In Linux SAPDB/ MAXDB will be the cheapest SAPDB/ MAXDB is a DB that comes along with the SAP USMM - System Measurement for the users SUSER - Password never expires (Service Userid) SAP Solution Manager Note: Patches should be applied on Test/ Cust first after 3 - 4 weeks will be applied on PRD. 1. It is a free tool for only the customers provided by SAP. Current version is 4.0 but from MAY, 2008 it is referred/ Renamed as Solman7.0 to ensure the consistency and bring all the components to version 7.0 like ABAP 7.0,BASIS 7.0,BI7.0, PI7.0 (Process Integration), EP7.0 (Enterprise Portal) 2. It provides Road map for Implementation, Upgrade, Suport. Road map is step by step guide along with the required documents (.doc, .ppt, .pdf, url.) /rmmain (ASAP Implementation Roadmap (V3.6.....) 338 3. Every Implementation should be started with SOLMAN 4. Required for generating upgrade/ Installation keys whereas Netweaver doesn't Requires a key. 30-Jun-09 SM36 Default Scheduling Totally 14 Jobs RZ10 Will be OS level i.e., we need to import into database level Utilities -> Import Profiles SM21 step by step process of startup Static parameters - requires a restart Dynamic parameters - doesn't require a restart. 339 --- Notes -- Note: First Message Server comes up, next enqueue and then the dispatcher (Or) Goto - work directory - dev_ms log file Network works for Message server and Message server searches for the least loaded dispatcher for load balancing SU53 Contains what all the notes, screens, programs owned by the user. 1. Dialogue work processes only communicate with the user. 2. Dialogue writes the entry of the background job in the following tables TBTCP and TBTCS Each dialogue - 5 Users Each work processes (15 - 150MB) 3. ABAP Instance comes with 0 Java instance comes with 1. 4. Post Installation activities should be done on 003 or other and not on 001 5. Client - 066 Early Watch Client - 000 Master Client CLient- 001 Production Client Wont be used in PRD 6. In the post installation only STMS is configured 7. CTS is ran before STMS (SAP Transport Management System) 8. DEV - QTY -PRD 340 3 system landscape DEV PRD QTY 2 system landscape SCC1 instead of STMS in case of 2 system landscape STMS QTY - PRD 1. Done from the Domain Controller 2. Dev will be the Domain Controller Some times whenever the system is always available say for eg: PRD will be considered to be DC. TP Used to transport Mass data @ single shot SGEN is a tcode to wake up all the programs availability SMLG for load balancing incase of two instances HalfPeak Hours 2 Background process Dialogue is converted to Background SR13 Help (Before this we need to run an executable RZ04 Maintain operation modes Operation mode - Night Dia to Bck SM63 - DbClk on Starting Interval and Ending Interval SMLT or I18N Language Installation Languages -> Classify Just provide the language ARABIC Then save it GOTO I18N System configuration 341 ADD And provide AR ARABIC Click on simulate RZ11 Parameter setting Display profile parameter attributes Zcsa\installed languages System Language \usr\sap\trans .car, .jar files (Parameter) - place the dump here 01-July-09 SM63 Select the interval Operation Mode - Select Interval and Assign 342 Note: Ports for Oracle Listener (1527 to 1521) Oracle\sol\sapbackup - Oraarch (SOLMAN 4.0 SR3) CD - RMMAIN Solution Manager 1. It is a free tool for only the customers provided by SAP. Current version is 4.0 but from MAY, 2008 it is referred/ Renamed as Solman7.0 to Ensure the consistency and bring all the components to version 7.0 like ABAP 7.0,BASIS 7.0,BI7.0, PI7.0 (Process Integration), EP7.0 (Enterprise Portal) 2. It provides Road map for Implementation, Upgrade, and Suport. Road map is step by step guide along with the required documents (.doc, .ppt, .pdf, url.) /rmmain (ASAP Implementation Roadmap (V3.6.....) 3. Every Implementation should be started with SOLMAN 4. Required for generating upgrade/ Installation keys whereas Netweaver doesn't Requires a key. 5. Define a Solution and include systems for the following 1. System Monitoring 2. System Administration 3. Service Level Reporting (SLR) 4. Maintenance Optimizer (MUPZ) 5. Early Watch Reports (EWA) 6. Configure the satellite systems (SMSY) 343 (Hanging systems in the landscape are called satellite systems) 7. Configured the service Desk to raise the issues as tickets and forward them to SAP if required. S_SMC_47000017/ CRM_DNO_Monitor Tcodes System should be registered with Solman to get the support 8. Project Management for implementation 1. Project Preparation (Solar_proj_admin) 2. Business Blue Print phase (Solar01) 3. Realization Phase (Solar02) 4. Documentation (Final preparation/ Go Live are not captured) 9. Solution Manager Diagnostics (SMD) 10. Business process monitoring (BPMON) 11. SAP Router 12. System Landscape Directory (SLD) Eg: Logon to Solman and administrate everything on the landscape Creating Satellite systems 1. Satellite systems are the backend systems which are defined in the SAP Landscape. These are required to Monitor, Administer the systems from a central location called Solution Manager. 2. It is a landscape information provider and specifies the following. 1. Hostname, Instance Number and Installation No, 2. Support pack levels, Client information etc., 3. We can also document the hardware info, sizing, H/w manufacturer and service Level agreements. Once the satellite system is configured there will be a trusted connection b/w the systems. Solution manager will be in a separate system. Note: Except exe's everything will be stored in DB. These exe are required to be at OS level to startup the engine. VSCAN Tcode - interface to upload the documents without any virus. 344 Goto - Tcode - SMSY and it is used to define the following. 1. License Keys or / Installation Keys/ or Upgrade Keys 2. Satellite systems 3. Define the logical components 1. License Keys - It is mandatory to provide the installation key for all the Netweaver system without which the installation cannot be continued. Goto SMSY - Goto - Other Objects a pop up box is prompted to provide the inputs Provide SID, MsgServer Hostname, Instance Number and Click on generate Installation or upgrade key. This key is called as Solution manager key and it is system specific (SID, Hostname, Instance Number). It is required only for Central Instance as it is tied up with the Message Server. Subsequently we can define systems, servers, databases manually but, all of those are created automatically when a satellite system is defined. 02-Jul-09 Configuring SOLUTION MANAGER SMSY Goto SMSY - Under landscape components - Select main Instance (RT Click) - Create New System with assistance. Put a check mark under SAPECC Server. Under relevant Continue --> 345 Provide System Number Message Server 00 wilerpdev (Satellite system host name) Continue --> Generate RFC Destinations Assign Logical components Clients Establishes put a check mark the connections put a check mark b/w R/3 and Solman - 800 Continue --> Select use scenarios: Select - Trusted system RFC Connection Continue --> Note: SOLMAN will connect to the back end system either trusted/ Logon screen Outgoing RFC's RFC Connection for Read Access Option : Generate Username and password User : SOLMANSOL001 Continue -->> RFC Connection for Change Management Option : Generate Username and password User : SOLTMWSOL001 Continue -->> RFC Connection for Trusted Connection Option : Generate Username and password User : SOLMANSEWD 346 Additional RFC Connection Data Continue -->> System Monitoring Connection Check Mark - Assign System Monitoring Continue -->> Complete -->> It brings up the password screen 3 times - need to provide the password for the back end system. To create users and RFC connections in the Satellite system (it 3 times knocks the door of the back end system) and the 4th time need to provide the username and password for the solution manager. The user should have the authorization objects S_RFC; S_RFCACL in the role to create and communicate with the back end systems. SAP* and DDIC doesn't have this authorizations Goto - PFCG - Role Maintenance Provide the role name ZRFC and click on Single Role Prompts to Save this - Just save it. Provide the description and Click on Menu Tab 347 Assign the transaction by clicking Transaction Button and assign SU53 Tcode And click on assign transactions Click on Authorizations Tab and click on change Hit on manually and Include Authorization Objects Select S_RFC and S_RFCACL and save. Click on generate profile..... back Click on User tab and assign the user the perform User comparison SMSY Continuation -Creating the Logical System Logical components are more important to communicate with specific client, specific role in the back end system. 348 Main Instance Logical Component SAP ECC Server SAP ECC 6.0 Role Development Client 800 Assign Logical components to the system that is created. Select the system --> Assign Logical Component --> Specify client --> Specify role etc SM59 - RFC Configurations Even we can delete RFC connection from SM59 Note: Ensure that RFC Connections are created earlier, users are not existing Delete the user by ensuring that they are not pointed to any RFC and similarly RFC Connections as well. Logical components specify the client number and the client role. SMSY is used for the following 1. Installation Key/ Upgrade Key 2. Create systems, servers, databases for the satellite system 3. Configure satellite systems Eg: DESC V$DATABASE Select DBID, NAME, Created from V$DATABASE; 4. Assign logical components 5. Create products, software components, refresh data, and regenerate RFC's and Delete RFC's 1. Create solutions (Early Watch Alerts) Solutions are required for Monitoring, Administration, Reporting, Change Management, Maintenance optimizer etc., 349 Goto T-Code DSWP/or Solution_Manager 1. Click on create to create a solution 2. Provide solution (Any name eg: ECC Solution) Lang - English SMSY is called as system landscape where we try to include a landscape. Solution Landscape which is used to include logical components (<SID>Client) so that all the above activities are carried out based on Solution. 3. Click on Maintain Global data Type under the url as : service.sap.com It is used to communicate with SAP Market place using SAP Router. 4. Click under or on Solution 5. Select solution landscape/ Maintenance (Search for SAP Router) 03/Jul/09 STMS - Transport Management System From Menu Help -> Create Support Message and this message will land up in Solution Manager. 350 Note: Group users can only be modified by that owner of the group i.e., group_admin and SID Admin Note: System - Status (From here we need to apply patches) in Solution Manager Note: Maintenance Optimizer is used to find the next level of patches available. Service Level Reporting means Eg: Consider the domestic cylinder. Database is filled 80% and need to send me an email. Note: process will be slow down because of some expensive reports (select * from ...) might be running even the processor is good enough to handle. - Memory Bottle Neck - Expensive reports bottle neck - Spool bottle neck Critical Business Process Note: We can also integrate ticketing tools like Remedy, Synergy with the Solution Manager. Solman has its own Service Desk (Ticketing Tool) Continuation from 02/Jul/09 T-Code: DSWP Click on Solution Landscape Solution Landscape Maintenance 351 Specify the Logical Component names and select the SID:Client Number (Put in Solution) Under logical component Select SAP ECC save it and click on Solution Settings - TAB Provide - Time interval 5 Mins under Monitor graph refresh period And click on CCMS MONITORING OF EWA (Early Watch Alerts) Select the system - save and activate Go back and save -goback comeback - Solution Settings TAB CCMS MONITORING OF EWA. NOTE: Interface Scenarios is for Project Management Save the solution and we should able to see the system/ solution in EWA and the system and server information should be fetched into solution directory. SM59 to verify this system is monitored by SOLMAN or not. If not Gowith SMSY and create the logical system Systems > Rt Click SU53 What user is having SU56 user buffers Yellow Color - Task not assigned Red Color - Task assigned but activities are missing Green - Successful * Note: Through SMSY we can find whether the logical systems are assigned or not. Setting up Operations Goto: DSWP/ Solution Manager Maintenance Select the solution Click on operations setup Select solution monitoring Click on early watch alerts Create SAP Early watch alert Service Create - Confirm Sap Specified Alerts - Check Mark - Check Mark 352 The early watch alert service runs the transaction SDCC (Service Data Control Center) in the specified systems and brings the alerts based on SAPS threshold values Eg: Expensive transactions, Users, Reports, Sql Statements etc. System Monitoring Goto: Solution Manager Select the solution Click on operation setup Select system monitoring Select setup system monitoring Select the SID and Installation number and it should be in Active. SID SMD | INSTALLATION NUMBER 0020311138 | ACTIVE Check Mark Save it. Once we save the solution under > Solution Structure | > Copy Customizing | Provide The SAP System with all the details are displayed It is an option to copy the customizing of alerts From another solution. Source| Destination If CCMS(Computing center Monitoring system) connectivity is in red or CCMS destination is blank then Goto RZ21 Monitoring Properties and Methods From Menu - Technical Infrastructure Display Topology It displays all the systems that are subjected for monitoring through this system. Click on create Target SID .. RFC Destinations SM_WISCLNT001_READ SM_WISCLNT001_ONLINE 353 This requires the satellite systems required patch up (ABAP, BASIS, ST-PI, PI-BASIS etc.,). This is to ensure the compatibility between Solution Manager and the Satellite systems Eg: Back end 4.6 c is a Basis P | A T C H E S | Front End Netweaver7 ADP HP ARAMCO - Printing bottle neck - Background jobs bottle neck - Dialogue process bottle neck Go through other options under Setup system monitoring | - User defined Alerts Select all the alerts and their threshold values - Save It. 04/Jul/09 SAP Router It is an executable file downloaded from service market place. It will be in the run directory (Older versions). For latest version we need to download from the Market place. Prerequisites (Till 6th point is from SAP Website not from Willsys Notes) You have the latest version of SAProuter (available from the SAP Service Marketplace (http://service.sap.com/patches) The SAProuter version must not be under 23. Procedure ... 1. Create the subdirectory saprouter in the directory <drive>:\usr\sap. 2. Download the latest version of the SAProuter from SAP Service Marketplace. Read the README file in this package. Copy the executables saprouter.exe and niping.exe to the directory you have just created. 354 If there is no SAProuter there, you can get a version (may be obsolete) from your directory <drive>:\usr\sap\<SID>\SYS\exe\run. 3. If SAProuter has already been entered as a service with srvany.exe, remove the definition of the service from the Registry and restart the host. 4. Define the service with the following command: ntscmgr install SAProuter -b ...\saprouter\saprouter.exe -p “service -r <parameter>“ Please note: The points stand for <drive>:\usr\sap <parameter> can be replaced by other parameters with which SAProuter is to be started. It is important that the parameters are within the character string enclosed in double quotation marks. 5. Define standard service properties in Control Panel ® Services, set the startup type to “automatic” and enter a user. SAProuter should not run under the SystemAccount. 6. To avoid the error message “The description for Event ID (0)” in Windows NT event log, you have to enter the following in the registry: Under HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services Event Log Application enter the key saprouter and define the following values for it: EventMessageFile (REG_SZ): ....\saprouter\saprouter.exe TypesSupported (REG_DWORD): 0x7 Or In usr\sap directory create a sub folder called SAPRouter. We have to maintain maintenance optimizer in Solution Manager and should get an approval to download SAP Router with our host name and IP Address (This info need to send to SAP) We have to download Cryptographic file so that it will connect to SAP System by converting the password related information. SAP Router are meant to login to our SAP System (remote) by the SAP to resolve any issue that may occur. Keep the files in TRANS Directory and usr\sap\trans... Locale -a will tells us what language the system will support 355 Checking the Routing connectivity with SAP Trans-OSS1 is used to configure the connectivity with SAP. Earlier OSS1 is used to serve as a Market place to the customers but due to the network congestion between the customer and say systems SAP discontinued the usage of OSS1 and service market place www.service.sap.com is recommended for connectivity. The entries in OSS1 (It is a transaction) reflected in RFC Connection SAP-OSS Copy SAP OSS RFC to SAP-OSS, SAPSNOTE and provide the logon security details that is language EN, Client 001, user is SUSERID, if this RFC doesn't work we can't establish connectivity with SAP. Note: Any changes in the route tab require the router to be restarted. Service Desk It is a tool used to create messages from the satellite systems and monitor from the solution manager. This tool is similar to Remedy, Clarity, Synergy ticketing tools. The major advantage of this tool is It picks up the complete information of the users-screen so that the processing is simplified. S_SMC_47000017 (To Check the messages in the SOLMAN System) Or CRM_DNO_MONITOR Also refer BCOS_CUST table End user can create a message by using the T-Code: NOTIF_CREATE Note: SPRO1 is used to perform post installation activities for the Solution Manager. SPRO stands for - SAP Project Reference Object OSS - Online SAP Service AISUSER - Maintain Optimizer Setup Provide SUSERID: without zeros With this user only the maintenance optimizer will work. 356 5-Jul-09 TASKS 1. Satellite Systems 2. Solutions - Activating EWA (Early Watch Alerts) 3. EWA (Early Watch Alerts) 4. System Monitoring 5. Administration 6. SLR - Service Level reporting 7. Service Desk - Activating - BCSET - IB52 - Installation BAK - Entry in Table 8. Maintenance Optimizer. MOPZ When ever we need Read permissions for CCMS monitoring we have to define topology. SOLMAN_DIRECTORY Goto solution manager and use above tcode to find the solution. /SCPR20 is a transaction which is used to activate the business sets that are provided in the system. We need to activate business sets for service desk, maintenance optimizer, change request management etc., In the current version of netweaver most of the components are activated. But when we install the system with lower package levels {Solution Manager 4.0} with base level 6 then we need to activate upon upgrading the patch levels. Installation Base We can use this to identify the installation base of the satellite system. Goto IB52 or DSWP Select solution Goto the menu - Create Installation Base Initial data transfer for IBase 357 Creating Business Partner Use transaction BP to create Business Partner. Goto DSWP Select the solution Goto edit Create business partner Select the users - create That user will be a partner in our solution manager. Goto the Satellite system Tcode: SM30 Table BC_BCOS_CUST this table maintains the RFC connections for the service desk and CHAMS i.e., if a service desk message is raised it uses the above RFC to land the ticket. Goto Backend system Create an RFC pointing to Solman S_SMC_47000017 to check whether the tickets from various systems are landed in Solution manager. AIS user is used to maintain service market place userid to communicate with SAP and the RFC Connection will be SAP-OSS 06-Jul-09 Configuring Maintenance Optimizer It is a tool provided by SAP to ensure that all the support packages that are released after April 2007 related to Netweaver will be approved and downloaded through MOPZ we can add support packages to the download basket in the Market place. https://websmp203-sap-ag.de/swdc Support packages and patches entry by application group Maintain the table AISuser In order to maintain this table SAP_MAINT_OPT_ADMIN role should present. Ensure that your solution manager is having support package ST[Solution Tools] minimum 10 level. Goto TCODE AISUSER 358 User Contact Person Sapuser 5013295 The user with which we login or the user in the user master record. Assign SAP service Market place userid without "S000" SAP-OSS (RFC connection should also use the same userid to communicate with the market place) Activate BCSET or MOPZ is upgraded through Solution Manager Goto SPRO or SCPR20 activate.... SOLMAN40_MOPZ_TTYP_SLMO_000 SOLMAN40_CHARM_PROXYFACT_001 Note: BCSET should be activated only once because it over writes the existing data Tcode: /$tab /$sync deletes the buffer on the application server. (Need to use carefully in the production system) 1. Create Maintenance Transaction 2. Select the component and system 3. Allow the solution manager to choose the support packages or choose download manager to select the support packages. Click on continue to confirm the files in the download basket. 4. Goto download manager and download the files and perform the maintenance i.e., applying the patches manually. 5. Maintenance optimizer is only an authorized solution. 1242931, 1296589 (notes) Start - SAP Download manager - Download Manger. Project Management SAP Solution manager provides project implementation tools through ASAP methodology (Accelerated SAP) ASAP Methodologies : It contains 5 steps 1. Project Preparation 2. Business Blue Print phase 359 3. Realization Phase 4. Final Preparation 5. Golive / Support 1. Project Preparation: During this phase the business requirements are gathered and documented. The core team is defined from SAP, implementing partner, customer, business owners, etc also referred as Steering Committee (With some management skills) These committees assemble from time to time & review the progress of the project. Key process indicators, persons (Responsible persons), Milestones are defined. SAP uses tcode: SOLAR_PROJECT_ADMIN Click on create 1. Provide project name 2. Type of project Implementation, support, upgrade etc.. Project type can be implementation, upgrade, template or support. Companies such as IBM may create a template project so that all the projects follows the same. 3. Select the solution: EWD solution for eg Hit okie 4. Select Led by (Customer or SAP) Provide plan days say 2000 PD 5. Define the scope of the work under SCOPE tab Note: Include the logical component that is going to be involved in the project From system landscape tab define the logical system 2. Business Blueprint In this phase the project is documented and the blue print gets signed off from the customer. Tcode: SOLAR01 is used to define the business blue print This is a phase where the required scenarios are selected. Scenario is nothing but a group of transactions that are related to a specific module like SD, MM, FI, HR, BI etc The scenarios are provided through SAP BPR (Business Process Repository) 360 07-Jul-09 3. Realization Is a place where the actual configuration takes place SOLAR02 Note: Solution Manager is also called as frontend platform to configure all the back end systems. The configuration takes place and change requests are generated in the target system subsequently a support message is raised to release or import the transport request before testing. 4. Testing Testing takes place either in the testing client, integration client and test cases are built during the configuration only. 1. Unit testing: Used to test the customizing in its test client within the same system. Tcode: SCC1 is used to copy the requests between clients before change requests are released. 2. Integration testing: It is performed in a separate system QAS Non _ Modifiable Note: Netweaver 2004 Netweaver 2004s Netweaver 2007 3.0D Basis 300 3.0E Basis 300 3.0F Basis 300 3.1H Basis 310 3.1I Basis 310 4.0B Basis 400 4.5B Basis 450 - ERP - Includes SOLMAN - Includes SOLMAN, BI, EP etc., 361 4.6C Basis 460 4.71 Basis 6.20 4.72 Basis 6.20 5.00 Basis 6.40 (ECC 5.0 - Enterprise Core components) 6.00 Basis 7.00 (ECC 6.0) - actually in RampUp SAP GUI FOR WINDOWS 6.40 Test Case documents - (Solar_testplan) We can maintain the project documentation and the general documentation using the respective tabs. 5. Final Preparation: It is used to prepare the quality and as well as production system. The integration testing signoff from the users, MTP (Mote to Production) and readiness of production system communicating with SAP to conduct GO-Live sessions, End user training, End user acceptance, SAP Early watch report, internal and external security. Internal security is obtained by defining roles and assigning those to the users. External security obtained by deploying routers, proxy, firewalls, filters and SAP Router etc., 6. GO-LIVE During this phase the system is subjected for parallel run i.e., both Legacy and SAP runs together for certain period of time. Data Transfer to SAP system is performed periodically fro legacy systems and the legacy systems are discontinued in due course of time upon final acceptance from the business process owners. ROAD MAP (Tcode - RMMAIN) It provides the complete implementation steps which are discussed above along with accelerators. Accelerators are nothing but predefined templates, url's, PowerPoint's, pdfs, word docs, MOM's (Minutes of Meeting) Etc., GOTO - RMMAIN - Select the ASAP Methodology - Goto Project Prep and Db click - From Menu GOTO - Select Accelerator Note: Need to focus on these points considering Solution Manager 1. Installation 2. Post Installation Activities 3. Administration 4. BCSET 5. Service Market Place. CHARMS - Change Request Management System - to apply patches... - User request a change (Say for Eg - Modify a storage location) 362 -- Service desk message - Mssg lands in SOLMAN - Based on the Priority approval for changing the location - Now it is also be treated as an Issue (Issue Management) - Management declared that there is no change in location (Issue Closed) - Management approves location change - SOLAR01.. a change request to change location - change request submitted for unit test, Integration test - Issue/message closed