Tuesday, November 26, 2013

SAP Transaction Codes (T-CODE) for Basis Admins

If you are a Basis Admin/ABAP developer you must have some knowledge of SAP Transaction codes(T-CODE).

Each function in SAP has a Transaction code (or t-code) and it consists of letters, numbers or both. By suing the Transaction code you can go to task and start the faction in a single step.

Before you learn about SAP Transaction codes, you need to understand transaction Control in SAP.

Transaction Control in SAP - Below commands are commonly used

n + Transaction code – To end current system task and go to new task
/o + Transaction – To create new session and go to new task without closing prior session
/o  – To list all existing or open sessions
/n  To terminate the transaction ( F 15 or Shift +F3 )
/i  To terminate the current session
/nend  – To terminate all separate sessions and log off.
/h To turn on Debugging mode

Below are the few transaction codes I have used and come across during the Basis Administration.

SAP User/Group/Role/Profile Administration SM01 – Lock Transactions
SM04 – Overview of Users
SU1 – Maintain Own user Addresses
SU3 – Maintain users Own Data
SU01 – User Maintenance
SU02 – Maintain Authorization Profiles
SU03 Maintain Authorizations
SU05- Maintain Internet Users
SU10 – User Mass Maintenance
SU12 – Mass Changes to user Master Records
SU20 – Maintain Authorization Fields
SU21 – Maintain Authorization Objects
SU22 – Authorization object usage in Transaction
SU24 – Authorization object check under Transactions
SU25/SU26 – Upgrade tool for profile generator
SU53 – Evaluate user Authorization check
SUIM – User information System
SUGR – Maintain user Groups
SUMM– Global User Manager
SUPC – Role Profiles
PFCG – Role Maintenance

SAP Jobs, Events and Batches
SM36 – To Define Background job
SM37 – To view Background job Overview
SM50 – Work Process Overview (Alternatively you can use SM66)
SM66 –System Wide work process over view
SM51 – To Display list of SAP Systems/Active application servers
SM34 – View cluster maintenance
SM49 – Execute External Operating system Commands
SM69 – Maintain external Operating system commands
SM62 – Define and Display Events
SM64 – Release of an event or administration of events

SAP System/Client Administration, Analysis , Run Time, Logs
SCC4 – Client Administration
SCC5 – Delete Client
SCC8 – Client Export
SCCL – Local Client copy
SCC9 – Remote Client Copy
ST01 – System Level trace
ST06 – Operating System Monitor
ST22 – ABAP dump analysis
SM21 – Online System Log Analysis
AM13 – Administrative Update requests
SE30 – Runtime analysis

SAP Database Administration, Backup/Recovery, Performance, Logs
DB02 – Tables and Indexes Monitor
DB13 - DBA Planning Calendar (Schedule Backups, Maintenance jobs)
DB12 – Overview of Database Backup Logs and Status
DB14 – Display DBA Operation Logs
DB15 – Data archiving from Database tables.
DB16/DB17 – Database system Check
DB24 – Administration/Monitoring of Database Operations
DB 26 –Display and history of Database parameters
DBCO – Maintain Database connection information
DBACOCKPIT - Start DBA Cockpit
SM12 – Display and delete locks
ST04 – Database performance Monitor
ST06 – Database Tune Summary
ST06 – Monitor Memory Resources
ST05 – Performance Trace

SAP Object Level, Paths, Connections
SUC3 – SAP table History/change log
SCMP – Table comparison.
SM58 – Transactional RFC
SM59 – RFC Destinations/Connections
AL11 – SAP file Directories
AL22 – Dependent objects display
FILE – Cross-Client File Names/Paths
SCU0/OY19 – Customizing Cross-System Viewer
SM56 – Number range buffers
SNRO – Number range Objects

Satishbabu Gunukula, Oracle ACE

Friday, November 1, 2013

OPATCH prereq failed with checkConflictAgainstOHWithDetail not executed

Recently I was working on applying a PSU One-Off Patch, before applying patch it is necessary to get conflict resolution with existing patch information.

I was running below command to get one-off patches conflict with the PSU and received error

$ opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir ./9352164

Invoking OPatch

Oracle Interim Patch Installer version
Copyright (c) 2007, Oracle Corporation. All rights reserved.

PREREQ session

Oracle Home : /home/oracle/product/10.2.0/db_1
Central Inventory : /home/oracle/oraInventory
from : /etc/oraInst.loc
OPatch version :
OUI version :
OUI location : /home/oracle/product/10.2.0/db_1/oui
Log file location : /home/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2013-10-29_15-58-39PM.log
Invoking prereq "checkconflictagainstohwithdetail"
The location "./9352164/README.html" is not a directory or a valid patch zip file.
Prereq "checkConflictAgainstOHWithDetail" not executed
PrereqSession failed: Invalid patch location

OPatch failed with error code 73

You may see below error when you check the log file

INFO:Invoking prereq "checkconflictagainstohwithdetail"
INFO:The location "./9352164/psu_root.sh" is not a directory or a valid patch zip file.
INFO:Prereq "checkConflictAgainstOHWithDetail" not executed
SEVERE:OUI-67073:PrereqSession failed: Invalid patch location.
INFO:Finishing PrereqSession at Tue Oct 29 16:22:07 PDT 2013
INFO:Stack Description: java.lang.RuntimeException: Invalid patch location.
INFO:StackTrace: oracle.opatch.opatchprereq.PQSession.parseBaseDirListFile(PQSession.java:2118)
INFO:StackTrace: oracle.opatch.opatchprereq.PQSession.checkconflictagainstohwithdetail(PQSession.java:1424)
INFO:StackTrace: sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO:StackTrace: sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
INFO:StackTrace: sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
INFO:StackTrace: java.lang.reflect.Method.invoke(Method.java:324)
INFO:StackTrace: oracle.opatch.PrereqSession.process(PrereqSession.java:251)
INFO:StackTrace: oracle.opatch.OPatchSession.main(OPatchSession.java:1937)
INFO:StackTrace: oracle.opatch.OPatch.main(OPatch.java:619)

Solution: You will see this error when you don’t have a latest Opatch version. Go to My Oracle support and download the latest patch.

Irrespective of the Oracle version (9i,10g,11g) you will see this issue when you don’t have latest Opatch version.

Steps to install the newer version of OPATCH
1. Copy the patch into ORACLE_HOME
2. Rename the old “Opatch” directory
$ mv OPatch OPatch_bak
3. Unzip the file patch
4. Check new OPatch version
$ opatch version
You should be able to see new Opatch version.

Refer Metalink Notes:-
Master Note For OPatch (Doc ID 293369.1)
How To Download And Install The Latest OPatch Version [Article ID 274526.1]

Satishbabu Gunukula, Oracle ACE