Thursday, November 13, 2008

How to apply SAP patch on SAP server

Some people ask me how to apply SAP patch level on Production SAP system. Actually it is possible. But it is high risk task. It is better you apply them when no user is logging in to your system.

OK, here is the step by step.

1. Make sure that you have download all SAP patch you need to be applied.
2. Apply SAP Basis Component (SAP_BASIS - usually named SAPKBxxxxx) and Cross-Application Component (SAP_ABA - usually named SAPKAxxxxx) first. And also from my experience and some best practice, apply them on the same patch level. For example when you're applying SAPKB62059 then apply SAPKA62059 too.
3. Consult to your functional consultant and functional team before applying Logistics and Accounting component (SAP_APPL - usually named SAPKXxxxxx). I repeat this warning again. Consult first before applying because this patches will affect to your customizing setting. If you're not sure about this, then don't apply them.
4. Use DDIC user to apply and login to client 000. Start from your Development server.
5. Last thing, pray...

I hope this few tips will help you.


Wednesday, November 12, 2008

How to define backup strategy on SAP R3 based system

Backup your backup strategy ? Its sound cool...huh. But actually, this is hard thing to do. As SAP Basis which usually also work as DBA, you cannot decide this by yourself. You'll need to manage this through deal with other people from different department and also from your company management. May be you'll think like this.

Why do I have to get permission from other department ? Why not just from IT Manager and Company Management ?

This is complex job and all people on your company rely on your IT system. When this system is down, all of them will get the effect. All you need is to define precise backup strategy. Few things need to consider before deciding backup strategy such as :

1. How many hours that your company will compromise about downtime ? 1 hour ? 5 hours ? a days ? Check this !
2. How many hours do you need to restore your data ? Check your tape backup speed to restore. Do this regularly for example once in 3 months.
3. How many budget do you have to perform this backup strategy ? Backup tape and backup drive also has its limitation on read and write activities.

This just few things need to consider. You can found differently on your company. Depend on your company policy.

Saturday, October 25, 2008

How to check BRTOOLS version

Some SAP Basis newbies ask me about how to know which version they are using right now. Although I am not SAP Basis expert, I'll try to get information to you.
You can follow this step :

Enter your SAP system on OS. You can use root (for UNIX/Linux) and Administrator (on Windows system). I am going to guide you on UNIX/Linux only system.

Switch you user to ora[sid] user :

#su - oraids

Type this command :

>brtools -V

You'll see something like this :

host:oraids 1> brtools -V
BR0651I BRTOOLS 6.40 (40)

Patch Date Info

36 2006-01-11 Small functional enhancements in BR*Tools (note 914174)
38 2006-03-29 BR*Tools support for MDM databases (note 936665)
40 2006-08-30 Wrong message numbers in BR*Tools 6.40 (note 976755)

release note 680046
kernel release 640
patch date 2006-08-30
patch level 40
make platform hpia64
make mode OCI_920
make date Sep 5 2006

host:oraids 2>

As you can see that I am using BRTOOLS version 6.40 and have patch level 40. I am using HP-UX on Itanium platform 64 bit. Now, check your own BRTOOLS version.

Wednesday, October 22, 2008

System Copy with Oracle 10g from 64-bit to 32-bit on Windows E-mail Print PDF

Following procedure helps you to do a system copy from a 64-bit to 32-bit hardware with Windows/Oracle Platform.

Introduction To System Landscape

When we design the landspace for a SAP Project, generally we prefer to have same platform for Development, Test and Production system.

This includes,

  • Hardware (32-bit or 64-Bit and also IA64, X64, or Unix 64 Bit platforms)
  • Operating System
  • Database
  • R3 Kernel

This helps, system administrators to identify system related problems causes functional problems.

For example, if a 64-Bit Kernel for Netweaver 700 on Windows/Oracle causes a problem, you cannot simulate it on your Test system if it is a 32 Bit platform.

Also you have to make sure that the kernel patch levels are all same on all systems.

System Copy Experience with 64-bit to 32-bit


Recently, one of our Customer asked us to copy Production System to their Test System.

Here is the systems environments:

Production System (Source System)

64-bit Intel Xeon (x64)
Operating System
64-bit Windows 2003 R2 SP1
Oracle 64-bit
SAP Kernel
700 64-bit PL 133

Test System (Target System)

32-bit Intel Xeon (x86)
Operating System
32-bit Windows 2003 R2 SP1
Oracle 32-bit
SAP Kernel
700 32-bit PL 72


Here is the brief procedure. For details, please download System Copy Guides from

  1. Stop Production System to copy files or use a recent online/offline backup to copy database files from production to test syste
  2. Run "alter database backup controlfile to trace" on source database to get control file creation script.
  3. Generate new cntrl.sql and run on target system with modified paths
  4. Recover if backup is online via "recover datbase using backup controlfile until cancel;"
  5. After recovery shutdown database on target with "shutdown immediate". Do not use "shutdown abort"
  6. cd ORACLE_HOME/rdbms/admin on target system with adm
  7. sqplus "/as sysdba"
  8. SQLPLUS> startup upgrade
  9. SQLPLUS> @utilrp.sql
  10. SQLPLUS> shutdown immediate
  11. SQLPLUS> startup
  12. SQLPLUS> @utlrp.sq
  13. If databaase scheme name is different from SAPSR3 on both systems, then you've to change dbs_ora_schema environment value to the one on Source System.
  14. If schema name is other than SAPSR3, than you have to re-configure OPS$ me. For this please check the reference section which gives OPS$ mechanism notes.
  15. Check connection with "R3trans -d"
  16. Start SAP System and apply, post-copy procedures.

That's it.

Hope it helps you to understand that it is not necessary to use R3load Procedure even platforms are different in bit level.


Note 050088 - Creating OPS$ users on Windows NT/Oracle

Note 361641 - Creating OPS$ users on UNIX

Taken from

Tuesday, October 21, 2008

Effective Optimizer Statistics Update

Following command is very effective, as its not estimating, doing a real calculation on tables including all indices to find the right path for R3 Systems.

brconnect -u / -c -f stats -t all -m +I -s P10 -f allsel,collect,method,precision -p 8

Taken from

Friday, October 17, 2008

SAP Basis Task List Part 1

Some people ask me about "What kind of job SAP Basis do ? "
It is difficult question to answer because it's not general answer. SAP Basis task list depend on :
  • company size
  • avalaible resource (size of your Basis group)
  • infrastructure such as database, network, desktop support
Practically, SAP Basis task are split into two (2) type SAP directly related and SAP indirectly related. On this post, I just explain about SAP directly related task. I'll post another task list on my next post. Some of SAP directly task list are :
  1. User Administrator - manage SAP user accounts
  2. Security Administrator - manage roles and profiles which related with all SAP user activities
  3. System Administrator - monitor and maintain your SAP server health and performance
  4. Transport Administrator - maintain and monitor SAP change request
  5. Job Scheduler - maintain and monitor SAP jobs
  6. Backup Operator - maintain and monitor about SAP server and data backup
  7. Disaster Recovery technical manager - plan and testing SAP disaster recovery plan
  8. Database Administrator - Some of Basis are also work as DBA for its SAP database
Some Basis may have vary job. This just sample of SAP Basis task list related with SAP directly. I hope you enjoy it.

Monday, October 13, 2008

Uninstall old version of SAPGUI for Java

Today I’ll show you how to uninstall old SAPGUI for Java version. To install newer version of SAPGUI for Java, you can check my previuous posting. On this posting, i am going to show you how to uninstall the old version of your SAPGUI for Java.

Coz I use root level to install SAPGUI for Java, so I need to switch my user (ardhian) to my root user :

ardhian@edp-ardhian:~$ su -
edp-ardhian:~ #
edp-ardhian:~ # java -jar PlatinGUI-Linux-710r4.jar uninstall

This last command will uninstall my old (SAPGUI for Java version 7.10rev4) version. Just simple command. I hope this could help you.

Thursday, September 18, 2008

Installation and Configuration of SAPGUI for Java on Linux

Based on many questions in my email inbox, asking how to install and configure SAPGUI for Java on Linux, here I’ll explain it briefly.

Prepare these stuffs before you can proceed to installation :

  1. You have to make sure that your Linux system has been installed with JRE (Java Runtime Environment) from SUN Microsystem ( If you don;t have it, just download it from here. Some of linux distros such as Fedora, Ubuntu, OpenSuSE etc using JRE from GNU called GIJ (GNU for Java). We can’t use this JRE. We need to replaced it. I’ll show you how to changed it later.
  2. You also need SAPGUI for Java installer. You can download it freely from

After you have all prerequisite, you can proceed to next step to extract and change your JRE. This step is valid for Fedora, Ubuntu, and OpenSuSE. Please let me know if these doesn’t work for you.

  1. Logon as root
  2. Copy your JRE installer file to /opt folder.Please use .bin extention file.
  3. Change file permission if needed to executable. Use this command : #chmod 755 (xxx = refer to JRE version you’re using).
  4. Extract JRE files. Use this command : #./
  5. Install JRE you just extracted inside alternatives system. Use this command : #/update-alternatives –install /usr/bin/java java /opt/jre1-xxx/bin/java 2
  6. Update java command configuration on alternatives system. Choose java number 2 because usually GIJ had number 1 position. Use this command : #update-alternatives –config java
  7. Use this command to verify your JRE configuration. You can use this command : #java -version
  8. If you get something like this on your screen then you are succeeded. java version “1.6.0″
    Java(TM) SE Runtime Environment (build 1.6.0-b105)
    Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)

After you finish this step, you can proceed to SAPGUI for Java installation.

  1. Logon as root
  2. Use this command (on terminal) to install SAPGUI for Java. #java -jar PlatinGUI-Linux-xxxx.jar (Use the latest version).
  3. Installed on /opt folder as default (usually on /opt/SAPClients folder)

Next step is configure your SAPGUI for Java and try to test to SAP R/3 server connection.

  1. Run executable file called guilogon (reside on /opt/SAPClients/SAPGUI700rev1/bin). It willpop up SAPGUI for Java window.
  2. Click New button.
  3. Fill the Description column as you like.
  4. Click Advanced Tab.
  5. Give check (V) to Use Expert Configuration
  6. Fill the connection string. If your server using load balancing configuration, use this connection string conn=/M/(IP_Address_Message_Server)/S/36(system_number)/G/(nama_group) and use this connection string configuration if yor SAP R/3 server are not using load balancing system, conn=/H/(IP_Address_server_SAP)/S/32(system_number).

There you go ! Now, you can use your SAPGUI for Java to access your SAP R/3 server. Comments and suggestions are welcome. I’ll try to update this tutorial as best as I can.