Monday, November 28, 2011

SQL script to list largest tables in Oracle

Hi,

This is a script that I always use to determine 50 largest table in my Oracle Database.

Just copy this script and paste it in your Toad/SQL to get the results. You may change it to capture 100 largest table and above. Just change the number of records from 50 to 100 or more.

Enjoy!

SELECT /*+ OPT_PARAM('_OPTIMIZER_DISTINCT_AGG_TRANSFORM', 'FALSE') */
NULL OWNER, NULL TABLE_NAME, NULL TOTAL_GB, NULL "TOTAL_%", NULL "PART.",
NULL TABLE_GB, NULL TAB_TABLESPACE, NULL "INDEXES", NULL INDEX_GB,
NULL IND_TABLESPACE, NULL LOBS, NULL LOB_GB FROM DUAL WHERE 1 = 0
UNION ALL (
SELECT NULL OWNER, NULL TABLE_NAME, NULL TOTAL_GB, NULL "TOTAL_%", NULL "PART.",
NULL TABLE_GB, NULL TAB_TABLESPACE, NULL "INDEXES", NULL INDEX_GB,
NULL IND_TABLESPACE, NULL LOBS, NULL LOB_GB FROM DUAL WHERE 1 = 0
) UNION ALL ( SELECT * FROM (
WITH BASIS_INFO AS
( SELECT /*+ MATERIALIZE */
' ' ONLY_BASIS_TABLES,
'%' TABLESPACE_NAME,
50 NUM_RECORDS,
-1 MIN_SIZE_MB
FROM
DUAL
),
SEGMENTS AS
( SELECT /*+ MATERIALIZE */
S.OWNER,
S.SEGMENT_NAME,
S.PARTITION_NAME,
S.SEGMENT_TYPE,
S.TABLESPACE_NAME,
S.BYTES
FROM
BASIS_INFO BI,
DBA_SEGMENTS S
WHERE
S.TABLESPACE_NAME LIKE BI.TABLESPACE_NAME
),
TOTAL_SEGMENT_SIZE AS
( SELECT /*+ MATERIALIZE */
SUM(BYTES) DB_NET_SIZE_BYTE
FROM
SEGMENTS
),
INDEXES AS
( SELECT /*+ MATERIALIZE */
OWNER,
TABLE_NAME,
INDEX_NAME,
TABLESPACE_NAME
FROM
DBA_INDEXES
),
LOBS AS
( SELECT /*+ MATERIALIZE */
OWNER,
TABLE_NAME,
SEGMENT_NAME,
TABLESPACE_NAME,
INDEX_NAME,
COLUMN_NAME
FROM
DBA_LOBS
),
TABLE_SEGMENT_MAPPING AS
( SELECT /*+ MATERIALIZE */
OWNER,
SEGMENT_NAME TABLE_NAME,
TABLESPACE_NAME,
'TABLE' SEGMENT_TYPE,
1 SEGMENTS,
SUM(DECODE(PARTITION_NAME, NULL, 0, 1)) PARTITIONS,
SUM(BYTES) BYTES
FROM
SEGMENTS
WHERE
SEGMENT_TYPE IN ('TABLE', 'TABLE PARTITION', 'TABLE SUBPARTITION')
GROUP BY
OWNER,
SEGMENT_NAME,
TABLESPACE_NAME
UNION ALL
( SELECT
I.OWNER OWNER,
I.TABLE_NAME TABLE_NAME,
S.TABLESPACE_NAME TABLESPACE_NAME,
'INDEX' SEGMENT_TYPE,
COUNT(DISTINCT(I.INDEX_NAME)) SEGMENTS,
SUM(DECODE(S.PARTITION_NAME, NULL, 0, 1)) PARTITIONS,
SUM(S.BYTES) BYTES
FROM
SEGMENTS S,
INDEXES I
WHERE
S.OWNER = I.OWNER AND
S.SEGMENT_NAME = I.INDEX_NAME AND
S.SEGMENT_TYPE IN ('INDEX', 'INDEX PARTITION', 'INDEX SUBPARTITION')
GROUP BY
I.OWNER,
I.TABLE_NAME,
S.TABLESPACE_NAME
)
UNION ALL
( SELECT
L.OWNER OWNER,
L.TABLE_NAME TABLE_NAME,
S.TABLESPACE_NAME TABLESPACE_NAME,
'LOB' SEGMENT_TYPE,
COUNT(DISTINCT(L.COLUMN_NAME)) SEGMENTS,
SUM(DECODE(S.PARTITION_NAME, NULL, 0, 1)) PARTITIONS,
SUM(S.BYTES) BYTES
FROM
SEGMENTS S,
LOBS L
WHERE
S.OWNER = L.OWNER AND
S.SEGMENT_NAME IN ( L.SEGMENT_NAME, L.INDEX_NAME ) AND
S.SEGMENT_TYPE IN ('LOBSEGMENT', 'LOBINDEX', 'LOB PARTITION')
GROUP BY
L.OWNER,
L.TABLE_NAME,
S.TABLESPACE_NAME
)
),
LINES AS
( SELECT 1 LINENR, 'TOTAL' DESCRIPTION FROM DUAL UNION ALL
( SELECT 2 LINENR, 'TABLE' DESCRIPTION FROM DUAL ) UNION ALL
( SELECT 3 LINENR, 'INDEX' DESCRIPTION FROM DUAL ) UNION ALL
( SELECT 4 LINENR, 'LOB' DESCRIPTION FROM DUAL )
)
SELECT /*+ USE_NL(TSS) LEADING(A) */
OWNER,
TABLE_NAME,
TO_CHAR(TOTAL_BYTES / 1024 / 1024 / 1024, 99990.99) TOTAL_GB,
TO_CHAR(TOTAL_BYTES / DB_NET_SIZE_BYTE * 100, 9990.99) "TOTAL_%",
TO_CHAR("PART.", 9990) "PART.",
TO_CHAR(TAB_BYTES / 1024 / 1024 / 1024, 99990.99) TABLE_GB,
TAB_TABLESPACE,
TO_CHAR("INDEXES", 999990) "INDEXES",
TO_CHAR(IND_BYTES / 1024 / 1024 / 1024, 9990.99) INDEX_GB,
IND_TABLESPACE,
TO_CHAR(LOBS, 990) LOBS,
TO_CHAR(LOB_BYTES / 1024 / 1024 / 1024, 9990.99) LOB_GB
FROM
( SELECT
OWNER,
TABLE_NAME,
SUM(DECODE(COMPONENT, 'TOTAL', BYTES, 0)) TOTAL_BYTES,
SUM(DECODE(COMPONENT, 'TABLE', COUNTER, 0)) "PART.",
SUM(DECODE(COMPONENT, 'TABLE', BYTES, 0)) TAB_BYTES,
MAX(DECODE(COMPONENT, 'TABLE', TABLESPACE_NAME)) TAB_TABLESPACE,
SUM(DECODE(COMPONENT, 'INDEX', COUNTER, 0)) "INDEXES",
SUM(DECODE(COMPONENT, 'INDEX', BYTES, 0)) IND_BYTES,
MAX(DECODE(COMPONENT, 'INDEX', TABLESPACE_NAME)) IND_TABLESPACE,
SUM(DECODE(COMPONENT, 'LOB', COUNTER, 0)) LOBS,
SUM(DECODE(COMPONENT, 'LOB', BYTES, 0)) LOB_BYTES
FROM
( SELECT
TSM.OWNER OWNER,
TSM.TABLE_NAME TABLE_NAME,
L.DESCRIPTION COMPONENT,
DECODE(L.DESCRIPTION,
'TOTAL', MAX(DECODE(TSM.SEGMENT_TYPE, 'TABLE', TSM.TABLESPACE_NAME)),
'TABLE', MAX(DECODE(TSM.SEGMENT_TYPE, 'TABLE', TSM.TABLESPACE_NAME)),
'INDEX', MAX(DECODE(TSM.SEGMENT_TYPE, 'INDEX', TSM.TABLESPACE_NAME)),
'LOB', MAX(DECODE(TSM.SEGMENT_TYPE, 'LOB', TSM.TABLESPACE_NAME))) TABLESPACE_NAME,
DECODE(L.DESCRIPTION,
'TOTAL', SUM(TSM.BYTES),
'TABLE', SUM(DECODE(TSM.SEGMENT_TYPE, 'TABLE', TSM.BYTES)),
'INDEX', SUM(DECODE(TSM.SEGMENT_TYPE, 'INDEX', TSM.BYTES)),
'LOB', SUM(DECODE(TSM.SEGMENT_TYPE, 'LOB', TSM.BYTES))) BYTES,
DECODE(L.DESCRIPTION,
'TOTAL', 0,
'TABLE', SUM(DECODE(TSM.SEGMENT_TYPE, 'TABLE', TSM.PARTITIONS)),
'INDEX', SUM(DECODE(TSM.SEGMENT_TYPE, 'INDEX', TSM.SEGMENTS)),
'LOB', SUM(DECODE(TSM.SEGMENT_TYPE, 'LOB', TSM.SEGMENTS))) COUNTER
FROM
TABLE_SEGMENT_MAPPING TSM,
LINES L,
BASIS_INFO BI
WHERE
BI.ONLY_BASIS_TABLES != 'X' OR
( TSM.TABLE_NAME IN
( 'BALHDR', 'BALHDRP', 'BALM', 'BALMP', 'BALDAT', 'BALC',
'BAL_INDX', 'EDIDS', 'EDIDC', 'EDIDOC', 'EDI30C', 'EDI40',
'IDOCREL', 'SRRELROLES', 'SWFGPROLEINST', 'SWP_HEADER',
'SWP_NODEWI', 'SWPNODE',
'SWPNODELOG', 'SWPSTEPLOG', 'SWW_CONT', 'SWW_CONTOB',
'SWW_WI2OBJ', 'SWWCNTP0',
'SWWCNTPADD', 'SWWEI', 'SWWLOGHIST', 'SWWLOGPARA',
'SWWWIDEADL', 'SWWWIHEAD',
'SWWWIRET', 'SWZAI', 'SWZAIENTRY', 'SWZAIRET', 'SWWUSERWI',
'BDCP', 'BDCPS', 'DBTABLOG', 'DBTABPRT',
'ARFCSSTATE', 'ARFCSDATA', 'ARFCRSTATE', 'TRFCQDATA',
'TRFCQIN', 'TRFCQOUT', 'TRFCQSTATE',
'SDBAH', 'SDBAD',
'DBMSGORA', 'DDLOG',
'APQD', 'TST01', 'TST03', 'TSPEVJOB', 'TXMILOGRAW', 'TSPEVDEV',
'SNAP', 'SMO8FTCFG', 'SMO8FTSTP', 'SMO8_TMSG', 'SMO8_TMDAT',
'SMO8_DLIST', 'SMW3_BDOC', 'SMW3_BDOC1', 'SMW3_BDOC2',
'SMW3_BDOC4',
'SMW3_BDOC5', 'SMW3_BDOC6', 'SMW3_BDOC7', 'SMW3_BDOCQ',
'SMWT_TRC',
'TPRI_PAR', 'RSMONMESS', 'RSSELDONE', 'VBDATA', 'VBMOD', 'VBHDR',
'VBERROR',
'VDCHGPTR', 'JBDCPHDR2', 'JBDCPPOS2', 'SWELOG', 'SWELTS',
'SWFREVTLOG',
'ARDB_STAT0', 'ARDB_STAT1', 'ARDB_STAT2', 'QRFCTRACE', 'QRFCLOG',
'DDPRS', 'TBTCO', 'TBTCP', 'MDMFDBEVENT', 'MDMFDBID', 'MDMFDBPR',
'RSRWBSTORE', '"/SAPAPO/LISMAP"', '"/SAPAPO/LISLOG"',
'CCMLOG', 'CCMLOGD', 'CCMSESSION', 'CCMOBJLST', 'CCMOBJKEYS',
'SXMSPMAST', 'SXMSPMAST2', 'SXMSPHIST',
'SXMSPHIST2', 'SXMSPFRAWH', 'SXMSPFRAWD', 'SXMSCLUR',
'SXMSCLUR2', 'SXMSCLUP',
'SXMSCLUP2', 'SWFRXIHDR', 'SWFRXICNT', 'SWFRXIPRC', 'XI_AF_MSG',
'XI_AF_MSG_AUDIT',
'SMW0REL', 'SRRELROLES', 'COIX_DATA40', 'T811E', 'T811ED',
'T811ED2',
'RSDDSTATAGGR', 'RSDDSTATAGGRDEF', 'RSDDSTATCOND',
'RSDDSTATDELE', 'RSDDSTATDM', 'RSDDSTATEVDATA', 'RSDDSTATHEADER',
'RSDDSTATINFO', 'RSDDSTATLOGGING', 'RSERRORHEAD', 'RSERRORLOG',
'DFKKDOUBTD_W', 'DFKKDOUBTD_RET_W', 'RSBERRORLOG',
'INDX',
'SOOD', 'SOOS', 'SOC3', 'SOFFCONT1', 'BCST_SR', 'BCST_CAM',
'SICFRECORDER', 'CRM_ICI_TRACES', 'RSPCINSTANCE',
'GVD_BGPROCESS', 'GVD_BUFF_POOL_ST', 'GVD_LATCH_MISSES',
'GVD_ENQUEUE_STAT', 'GVD_FILESTAT', 'GVD_INSTANCE',
'GVD_PGASTAT', 'GVD_PGA_TARGET_A', 'GVD_PGA_TARGET_H',
'GVD_SERVERLIST', 'GVD_SESSION_EVT', 'GVD_SESSION_WAIT',
'GVD_SESSION', 'GVD_PROCESS', 'GVD_PX_SESSION',
'GVD_WPTOTALINFO', 'GVD_ROWCACHE', 'GVD_SEGMENT_STAT',
'GVD_SESSTAT', 'GVD_SGACURRRESIZ', 'GVD_SGADYNFREE',
'GVD_SGA', 'GVD_SGARESIZEOPS', 'GVD_SESS_IO',
'GVD_SGASTAT', 'GVD_SGADYNCOMP', 'GVD_SEGSTAT',
'GVD_SPPARAMETER', 'GVD_SHAR_P_ADV', 'GVD_SQLAREA',
'GVD_SQL', 'GVD_SQLTEXT', 'GVD_SQL_WA_ACTIV',
'GVD_SQL_WA_HISTO', 'GVD_SQL_WORKAREA', 'GVD_SYSSTAT',
'GVD_SYSTEM_EVENT', 'GVD_DATABASE', 'GVD_CURR_BLKSRV',
'GVD_DATAGUARD_ST', 'GVD_DATAFILE', 'GVD_LOCKED_OBJEC',
'GVD_LOCK_ACTIVTY', 'GVD_DB_CACHE_ADV', 'GVD_LATCHHOLDER',
'GVD_LATCHCHILDS', 'GVD_LATCH', 'GVD_LATCHNAME',
'GVD_LATCH_PARENT', 'GVD_LIBRARYCACHE', 'GVD_LOCK',
'GVD_MANGD_STANBY', 'GVD_OBJECT_DEPEN', 'GVD_PARAMETER',
'GVD_LOGFILE', 'GVD_PARAMETER2', 'GVD_TEMPFILE',
'GVD_UNDOSTAT', 'GVD_WAITSTAT', 'ORA_SNAPSHOT'
) OR
TSM.TABLE_NAME LIKE '/BI0/0%'
)
GROUP BY
L.LINENR,
L.DESCRIPTION,
TSM.OWNER,
TSM.TABLE_NAME
ORDER BY
SUM(TSM.BYTES),
TSM.TABLE_NAME,
L.LINENR
)
GROUP BY
OWNER,
TABLE_NAME
ORDER BY
3 DESC
) D,
TOTAL_SEGMENT_SIZE TSS,
BASIS_INFO BI
WHERE
( BI.NUM_RECORDS = -1 OR ROWNUM <= BI.NUM_RECORDS ) AND
( BI.MIN_SIZE_MB = -1 OR TOTAL_BYTES / 1024 / 1024 >= BI.MIN_SIZE_MB )
));


Wednesday, November 23, 2011

Error: ORA-01427: single-row subquery returns more than one row

Today, there a user requested that I extract out financial transaction ids that is not similar between to unique fields (as per 1st script).

Then I encounter error message : Error: ORA-01427: single-row subquery returns more than one row

1st script
------------------------------------------
select "/BA1/C40FTRAN"
from
sapsr3."/1BA/HM_WRC6_320" where
"/BA1/CR0GROUP" = '4EC31BE03C8D00EFE1008000AC1F2886' AND
"/BA1/C40FTRAN" <> (
select "/BA1/C40FTRAN"
from
sapsr3."/1BA/HM_WRC6_320"
where "/BA1/CR0GROUP" = '4E86D812813200A7E1008000AC1F2886'
);

Due to this error, I have change the script to allow Multiple-row Sub-query Operators as per script 2

select "/BA1/C40FTRAN"
from
sapsr3."/1BA/HM_WRC6_320" where
"/BA1/CR0GROUP" = '4EC31BE03C8D00EFE1008000AC1F2886' AND
"/BA1/C40FTRAN" NOT IN (
select "/BA1/C40FTRAN"
from
sapsr3."/1BA/HM_WRC6_320"
where "/BA1/CR0GROUP" = '4E86D812813200A7E1008000AC1F2886'
);

For any comparison operator listed in the table shown below, the sub-query must return single row (in other words, the sub-query, must be a single-row sub-query, otherwise it will fail)
Single-row Sub-query Operators
Symbol Meaning
= equal
> greater than
>= greater than or equal
< less than
<= less than or equal
<> not equal
!= not equal

The operators in the following table can use multiple-row sub-queries:
Multiple-row Sub-query Operators
Symbol Meaning
IN equal to any member in a list
NOT IN not equal to any member in a list
ANY returns rows that match any value on a list
ALL returns rows that match all the values in a list

There are several approaches to resolve this, most popular one being changing the inequality operator to a multiple-row operators (say, if the operator is "=" than change it "IN", "ANY", "ALL", so that it does not matter if multiple rows are returned.).

Monday, October 24, 2011

Restarting delete phase with partially deleted data

Hi all,

Yesterday we encounter a problem where our DSO archiving job got canceled. Reason being that the program won't continue due to data is already partially deleted on the system and the system could not resume the deletion job.


During researching in the SAP Service Marketplace, I found a note (Note 1069957) that helps restarting delete phase with partially deleted data

http://sapnotesoftheday.blogspot.com/2011/10/note-1069957-restarting-delete-phase.html

After Implementation of this note, we need to restart the deletion through RSA1->Manage->Click the yellow status and trigger the status change through background process and the job successfully resumed.



Hope this helps!.

Sunday, June 12, 2011

DSO Activation taking long time!

We have a issue where our DSO has been activating for quite some time
now. We have an enhancement where we need to add fields in the DSO.

However,we found that the DSO is not activated after we have migrated
our. However,during the activation of the DSO, it is taking a very long
time in activating it.


DSO Tech name : ZDSO_RR

The Solution :

When you have large amount of data in the table (ODS), the following is a work around to get the new columns added to the ODS/DSO:

1. Make copy of the existing ODS (ODS1) to ODS2
2. Add new fields to ODS2
3. Load the data from ODS1 to ODS2 using datamart (use ODS2 for further purposes).

If you have some reporting queries defined on ODS1 then you need to do the following:

1. Make copy of the existing ODS (ODS1) to ODS2.
2. Load data from ODS1 to ODS2 using datamart.
3. Delete Data from ODS1.
4. Add new fields to ODS1.
5. Reload the data from ODS2 to ODS1 using data mart.

Please take note :

1) Create a DSO copy
2) Load data from original DSO to DSO copy
3) Delete data from DSO original
4) Migrate the adding new field changes
5) Activate the DSO using program : RSDG_ODSO_ACTIVATE


6) Reload back data to DSO

If you're having the same issue with Infocube, this solution applies to that as well.

DTP Error : Maximum package size for data packages was exceed

When we trigger DTP (ZDSO_RR -> ZIC_RR) we encounter the error

"DTP Error : Maximum package size for data packages was exceed"
(Please refer to attachement)


You can refer to this note :

Note 1144332 - Consulting note: Message RSBK 250: Package size exceeded

However, it's does not work with my cube loading. The workaround is to unchecked all the fields in the semantic group. The reload back the data. The the load successful!

Generally this issue occurs when the semantic key is set, and as a result package size is not taken into consideration in case there are more records sent with the same semantic keys.

Thursday, June 9, 2011

Steps to upgrade Support Pack Manager

1) Download the latest Support Pack Manager (SPAM) on the SAP service marketplace


2) Transfer the downloaded file to /usr/sap/trans/EPS/in



3) SAP has extract tool to extract the SAR files.You have to login has adm.Then go to the location where you copied SAR files.Then execute “SAPCAR –xvf ”. Copy all the unextracted file to /usr/sap/trans/EPS/in directory.


4) Login as DDIC. Invoke tcode SPAM and load the extracted files. Support PAckage->Load PAckages->From Application Server

5) Then, click Support PAckage->Load PAckages-> Import SPAM/SAINT Update.

6) Then it will automatically update the Support Pack Manager. You're finished!. You may bump into ABAP Dump. Like me, I bump into LOAD_TEXTPOOL_LOST.

However, if you read SAP note 822379

SPAM/SAINT updates

* Symptom: When you import the SPAM/SAINT update, a range of different runtime errors may occur:

o LOAD_PROGRAM_LOST

o LOAD_PROGRAM_CLASS_MISMATCH

o LOAD_TEXTPOOL_LOST

o SAPSQL_SELECT_WA_TOO_SMALL

o SAPSQL_SELECT_TAB_TOO_SMALL

o SAPSQL_WA_TOO_SMALL

o DDIC_STRUCLENG_INCONSISTENT

o RUNT_ILLEGAL_SWITCH

o CALL_FUNCTION_PARM_UNKNOWN

These errors occur because the source code of the Support Package Manager is modified by the import during the run. CALL_FUNCTION_PARM_UNKNOWN, LOAD_PROGRAM_LOST, LOAD_PROGRAM_CLASS_MISMATCH, and LOAD_TEXTPOOL_LOST occur if the ABAP load or text elements are to be loaded back into the local buffer, and there is a different version in the database.
However, SAPSQL_SELECT_WA_TOO_SMALL, SAPSQL_SELECT_TAB_TOO_SMALL, SAPSQL_WA_TOO_SMALL, DDIC_STRUCLENG_INCONSISTENT and RUNT_ILLEGAL_SWITCH occur if changes are made on the SPAM/SAINT data structures with the SPAM/SAINT update.

Solution: None of these errors will occur again if you restart the Support Package Manager (transaction SPAM) and continue to import the SPAM/SAINT update.


Tuesday, June 7, 2011

PSAPUNDO retention Period

Today our server hitting PSAPUNDO full 100%


Here's how we check the retention period

SQL> show parameter retention

here how to change it.

ALTER SYSTEM SET UNDO_RETENTION = 7200;

or

alter system set undo_retention=7200 scope=both/spfile;


Tuesday, May 24, 2011

How to create file system in AIX

1) Create Log LV (filesystem type jfs2 need loglv for journaling)

Ex:

mklv -y loglvarchive -t jfs2log appvg 1


2) Create LV (Create Logical Volume with filesystem type jfs2)

Ex:

mklv -y lvarchive -t jfs2 appvg 500M


3) Create FileSystem

Ex:

crfs -v jfs2 -d /dev/lvarchive -a log=/dev/loglvarchive -m /Archive

4) Mount the file system

Ex:

mount /Archive


Full Example

PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION
hdisk0 active 546 325 30..08..69..109..109
hdisk1 active 546 325 30..08..69..109..109
rdmsdweb:/# df -g
Filesystem GB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 1.00 0.77 24% 2720 2% /
/dev/hd2 3.00 1.18 61% 36458 12% /usr
/dev/hd9var 0.50 0.41 19% 4442 5% /var
/dev/hd3 7.00 6.67 5% 174 1% /tmp
/dev/fwdump 0.25 0.25 1% 4 1% /var/adm/ras/platform
/dev/hd1 0.25 0.25 1% 27 1% /home
/proc - - - - - /proc
/dev/hd10opt 0.25 0.20 21% 946 2% /opt
/dev/lvfix 10.00 4.37 57% 653 1% /fix
/dev/lvsapmnt 10.00 9.53 5% 708 1% /sapmnt/WDD
/dev/lvusrsap 15.00 14.86 1% 251 1% /usr/sap/WDD
/dev/lvinstcd 20.00 13.28 34% 20289 1% /instcd
/dev/lvscript 1.00 0.65 35% 1921 2% /script
/dev/lvperfdata 1.00 1.00 1% 5 1% /perfdata
rdmsdweb:/# lsvg appvg
VOLUME GROUP: appvg VG IDENTIFIER: 00027c120000d7000000010e98d2197a
VG STATE: active PP SIZE: 256 megabyte(s)
VG PERMISSION: read/write TOTAL PPs: 1092 (279552 megabytes)
MAX LVs: 512 FREE PPs: 650 (166400 megabytes)
LVs: 9 USED PPs: 442 (113152 megabytes)
OPEN LVs: 9 QUORUM: 1 (Disabled)
TOTAL PVs: 2 VG DESCRIPTORS: 3
STALE PVs: 0 STALE PPs: 0
ACTIVE PVs: 2 AUTO ON: yes
MAX PPs per VG: 130048
MAX PPs per PV: 1016 MAX PVs: 128
LTG size (Dynamic): 256 kilobyte(s) AUTO SYNC: no
HOT SPARE: no BB POLICY: relocatable
rdmsdweb:/# lsvg -o | lsvg -i -l
appvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
paging00 paging 8 16 2 open/syncd N/A
paging02 paging 8 16 2 open/syncd N/A
paging04 paging 8 16 2 open/syncd N/A
paging06 paging 8 16 2 open/syncd N/A
paging08 paging 8 16 2 open/syncd N/A
lvsapmnt jfs2 40 80 2 open/syncd /sapmnt/WDD
lvusrsap jfs2 60 120 2 open/syncd /usr/sap/WDD
lvinstcd jfs2 80 160 2 open/syncd /instcd
loglv00 jfs2log 1 2 2 open/syncd N/A
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
hd5 boot 1 1 1 closed/syncd N/A
hd6 paging 8 8 1 open/syncd N/A
hd8 jfs2log 1 1 1 open/syncd N/A
hd4 jfs2 4 4 1 open/syncd /
hd2 jfs2 12 12 1 open/syncd /usr
hd9var jfs2 2 2 1 open/syncd /var
hd3 jfs2 28 28 1 open/syncd /tmp
hd1 jfs2 1 1 1 open/syncd /home
hd10opt jfs2 1 1 1 open/syncd /opt
fwdump jfs2 1 1 1 open/syncd /var/adm/ras/platform
lvfix jfs2 40 40 1 open/syncd /fix
paging01 paging 8 8 1 open/syncd N/A
paging03 paging 8 8 1 open/syncd N/A
paging05 paging 8 8 1 open/syncd N/A
paging07 paging 8 8 1 open/syncd N/A
lvscript jfs2 4 4 1 open/syncd /script
lvperfdata jfs2 4 4 1 open/syncd /perfdata
rdmsdweb:/# mklv -y loglvarchive -t jfs2log appvg 1
loglvarchive
rdmsdweb:/# mklv -y lvarchive -t jfs2 appvg 500M
lvarchive
rdmsdweb:/# lsvg -o | lsvg -i -l
appvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
paging00 paging 8 16 2 open/syncd N/A
paging02 paging 8 16 2 open/syncd N/A
paging04 paging 8 16 2 open/syncd N/A
paging06 paging 8 16 2 open/syncd N/A
paging08 paging 8 16 2 open/syncd N/A
lvsapmnt jfs2 40 80 2 open/syncd /sapmnt/WDD
lvusrsap jfs2 60 120 2 open/syncd /usr/sap/WDD
lvinstcd jfs2 80 160 2 open/syncd /instcd
loglv00 jfs2log 1 2 2 open/syncd N/A
loglvarchive jfs2log 1 1 1 closed/syncd N/A
lvarchive jfs2 2 2 1 closed/syncd N/A
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
hd5 boot 1 1 1 closed/syncd N/A
hd6 paging 8 8 1 open/syncd N/A
hd8 jfs2log 1 1 1 open/syncd N/A
hd4 jfs2 4 4 1 open/syncd /
hd2 jfs2 12 12 1 open/syncd /usr
hd9var jfs2 2 2 1 open/syncd /var
hd3 jfs2 28 28 1 open/syncd /tmp
hd1 jfs2 1 1 1 open/syncd /home
hd10opt jfs2 1 1 1 open/syncd /opt
fwdump jfs2 1 1 1 open/syncd /var/adm/ras/platform
lvfix jfs2 40 40 1 open/syncd /fix
paging01 paging 8 8 1 open/syncd N/A
paging03 paging 8 8 1 open/syncd N/A
paging05 paging 8 8 1 open/syncd N/A
paging07 paging 8 8 1 open/syncd N/A
lvscript jfs2 4 4 1 open/syncd /script
lvperfdata jfs2 4 4 1 open/syncd /perfdata
rdmsdweb:/# crfs -v jfs2 -d /dev/lvarchive -a log=/dev/loglvarchive -m /Archive
File system created successfully.
524068 kilobytes total disk space.
New File System size is 1048576
rdmsdweb:/# mount /Archive
rdmsdweb:/# df -g
Filesystem GB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 1.00 0.77 24% 2725 2% /
/dev/hd2 3.00 1.18 61% 36458 12% /usr
/dev/hd9var 0.50 0.41 19% 4443 5% /var
/dev/hd3 7.00 6.67 5% 174 1% /tmp
/dev/fwdump 0.25 0.25 1% 4 1% /var/adm/ras/platform
/dev/hd1 0.25 0.25 1% 27 1% /home
/proc - - - - - /proc
/dev/hd10opt 0.25 0.20 21% 946 2% /opt
/dev/lvfix 10.00 4.37 57% 653 1% /fix
/dev/lvsapmnt 10.00 9.53 5% 708 1% /sapmnt/WDD
/dev/lvusrsap 15.00 14.86 1% 251 1% /usr/sap/WDD
/dev/lvinstcd 20.00 13.28 34% 20289 1% /instcd
/dev/lvscript 1.00 0.65 35% 1921 2% /script
/dev/lvperfdata 1.00 1.00 1% 5 1% /perfdata
/dev/lvarchive 0.50 0.50 1% 4 1% /Archive
rdmsdweb:/# df -m
Filesystem MB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 1024.00 783.95 24% 2725 2% /
/dev/hd2 3072.00 1206.83 61% 36458 12% /usr
/dev/hd9var 512.00 414.84 19% 4443 5% /var
/dev/hd3 7168.00 6832.02 5% 174 1% /tmp
/dev/fwdump 256.00 255.64 1% 4 1% /var/adm/ras/platform
/dev/hd1 256.00 255.50 1% 27 1% /home
/proc - - - - - /proc
/dev/hd10opt 256.00 204.74 21% 946 2% /opt
/dev/lvfix 10240.00 4470.87 57% 653 1% /fix
/dev/lvsapmnt 10240.00 9754.66 5% 708 1% /sapmnt/WDD
/dev/lvusrsap 15360.00 15215.25 1% 251 1% /usr/sap/WDD
/dev/lvinstcd 20480.00 13600.27 34% 20289 1% /instcd
/dev/lvscript 1024.00 667.59 35% 1921 2% /script
/dev/lvperfdata 1024.00 1020.51 1% 5 1% /perfdata
/dev/lvarchive 512.00 511.60 1% 4 1% /Archive
rdmsdweb:/# ls- lrt
ksh: ls-: not found.
rdmsdweb:/# ls -lrt
total 2336
drwxr-x--- 2 root audit 256 Jul 08 2006 audit
drwxr-xr-x 2 bin bin 256 Jul 08 2006 mnt
drwxrwxr-x 3 root system 256 Jul 08 2006 .SPOT
drwxrwxr-x 2 root system 256 Jul 08 2006 tftpboot
drwxr-xr-x 3 root system 256 Jul 08 2006 mfg
drwxr-xr-x 2 root system 256 Oct 09 2006 cdrom
drwx------ 3 root system 256 Oct 10 2006 .ssh2
-rw-r----- 1 root system 479 Nov 01 2006 sdtstart.err
drwxr-x--- 3 root system 256 Nov 01 2006 .java
drwxr-xr-x 4 root system 256 Nov 01 2006 sapmnt
drwxr-x--- 2 root system 4096 Nov 01 2006 .sdtgui
-rw-r--r-- 1 root system 9 Feb 06 2007 hn
drwxr-xr-x 6 root system 256 Apr 30 2008 instcd
drwxr-xr-x 2 root system 4096 Apr 30 2008 EMP
-rw------- 1 root system 416 Jul 08 2008 .Xauthority
-rw-r--r-- 1 root system 160 Jul 08 2008 .profile
-rwxr--r-- 1 root system 700 Nov 14 2009 dormant.sh
-rw------- 1 root system 166 Nov 14 2009 .vi_history
-rw-r--r-- 1 root system 1323 Jan 05 17:30 bosinst.data
-rw-r--r-- 1 root system 13610 Jan 05 17:30 image.data.save.altinst
-rw-r--r-- 1 root system 0 Jan 05 18:24 .image.data.removetag
drwx------ 2 root system 256 Jan 05 18:25 lost+found
drwxr-xr-x 11 root system 4096 Jan 05 18:25 fix
drwxr-xr-x 5 bin bin 256 Jan 05 18:25 home
drwxr-xr-x 3 root system 256 Jan 05 18:25 perfdata
drwxr-xr-x 4 root system 4096 Jan 05 18:25 script
drwxr-xr-x 24 bin bin 4096 Jan 05 18:25 var
lrwxrwxrwx 1 bin bin 8 Jan 05 18:25 bin -> /usr/bin
lrwxrwxrwx 1 bin bin 8 Jan 05 18:28 lib -> /usr/lib
lrwxrwxrwx 1 root system 6 Jan 05 18:30 secure -> secure
lrwxrwxrwx 1 root system 21 Jan 05 18:30 unix -> /usr/lib/boot/unix_64
lrwxrwxrwx 1 bin bin 5 Jan 05 18:30 u -> /home
drwxr-xr-x 42 root staff 4096 Jan 06 11:25 usr
drwxr-xr-x 13 root system 4096 Jan 06 11:30 opt
drwxr-xr-x 3 bin bin 256 Jan 06 11:30 sbin
-rw-r--r-- 1 root system 22096 Jan 06 11:43 smit.transaction
-rw-r--r-- 1 root system 12123 Jan 06 11:43 smit.script
drwxr-xr-x 158 bin bin 12288 Jan 06 11:47 lpp
-rw-r--r-- 1 root system 1030903 Jan 06 11:47 smit.log
drwxr-xr-x 29 root system 12288 Jan 06 11:51 etc
drwxr-xr-x 3 root system 256 May 19 16:09 Archive
drwxrwxrwt 14 bin bin 4096 May 19 16:09 tmp
drwxrwxr-x 5 root system 12288 May 19 16:09 dev
dr-xr-xr-x 1 root system 0 May 19 16:12 proc
-rw------- 1 root system 10306 May 19 16:12 .sh_history
rdmsdweb:/# chown wddadm Archive
rdmsdweb:/# chgrp sapsys Archive
rdmsdweb:/# ls -lrt
total 2336
drwxr-x--- 2 root audit 256 Jul 08 2006 audit
drwxr-xr-x 2 bin bin 256 Jul 08 2006 mnt
drwxrwxr-x 3 root system 256 Jul 08 2006 .SPOT
drwxrwxr-x 2 root system 256 Jul 08 2006 tftpboot
drwxr-xr-x 3 root system 256 Jul 08 2006 mfg
drwxr-xr-x 2 root system 256 Oct 09 2006 cdrom
drwx------ 3 root system 256 Oct 10 2006 .ssh2
-rw-r----- 1 root system 479 Nov 01 2006 sdtstart.err
drwxr-x--- 3 root system 256 Nov 01 2006 .java
drwxr-xr-x 4 root system 256 Nov 01 2006 sapmnt
drwxr-x--- 2 root system 4096 Nov 01 2006 .sdtgui
-rw-r--r-- 1 root system 9 Feb 06 2007 hn
drwxr-xr-x 6 root system 256 Apr 30 2008 instcd
drwxr-xr-x 2 root system 4096 Apr 30 2008 EMP
-rw------- 1 root system 416 Jul 08 2008 .Xauthority
-rw-r--r-- 1 root system 160 Jul 08 2008 .profile
-rwxr--r-- 1 root system 700 Nov 14 2009 dormant.sh
-rw------- 1 root system 166 Nov 14 2009 .vi_history
-rw-r--r-- 1 root system 1323 Jan 05 17:30 bosinst.data
-rw-r--r-- 1 root system 13610 Jan 05 17:30 image.data.save.altinst
-rw-r--r-- 1 root system 0 Jan 05 18:24 .image.data.removetag
drwx------ 2 root system 256 Jan 05 18:25 lost+found
drwxr-xr-x 11 root system 4096 Jan 05 18:25 fix
drwxr-xr-x 5 bin bin 256 Jan 05 18:25 home
drwxr-xr-x 3 root system 256 Jan 05 18:25 perfdata
drwxr-xr-x 4 root system 4096 Jan 05 18:25 script
drwxr-xr-x 24 bin bin 4096 Jan 05 18:25 var
lrwxrwxrwx 1 bin bin 8 Jan 05 18:25 bin -> /usr/bin
lrwxrwxrwx 1 bin bin 8 Jan 05 18:28 lib -> /usr/lib
lrwxrwxrwx 1 root system 6 Jan 05 18:30 secure -> secure
lrwxrwxrwx 1 root system 21 Jan 05 18:30 unix -> /usr/lib/boot/unix_64
lrwxrwxrwx 1 bin bin 5 Jan 05 18:30 u -> /home
drwxr-xr-x 42 root staff 4096 Jan 06 11:25 usr
drwxr-xr-x 13 root system 4096 Jan 06 11:30 opt
drwxr-xr-x 3 bin bin 256 Jan 06 11:30 sbin
-rw-r--r-- 1 root system 22096 Jan 06 11:43 smit.transaction
-rw-r--r-- 1 root system 12123 Jan 06 11:43 smit.script
drwxr-xr-x 158 bin bin 12288 Jan 06 11:47 lpp
-rw-r--r-- 1 root system 1030903 Jan 06 11:47 smit.log
drwxr-xr-x 29 root system 12288 Jan 06 11:51 etc
drwxr-xr-x 3 wddadm sapsys 256 May 19 16:09 Archive
drwxrwxrwt 14 bin bin 4096 May 19 16:09 tmp
drwxrwxr-x 5 root system 12288 May 19 16:09 dev
dr-xr-xr-x 1 root system 0 May 19 16:13 proc
-rw------- 1 root system 10360 May 19 16:13 .sh_history
rdmsdweb:/# df -g
Filesystem GB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 1.00 0.77 24% 2725 2% /
/dev/hd2 3.00 1.18 61% 36458 12% /usr
/dev/hd9var 0.50 0.41 19% 4443 5% /var
/dev/hd3 7.00 6.67 5% 174 1% /tmp
/dev/fwdump 0.25 0.25 1% 4 1% /var/adm/ras/platform
/dev/hd1 0.25 0.25 1% 27 1% /home
/proc - - - - - /proc
/dev/hd10opt 0.25 0.20 21% 946 2% /opt
/dev/lvfix 10.00 4.37 57% 653 1% /fix
/dev/lvsapmnt 10.00 9.53 5% 708 1% /sapmnt/WDD
/dev/lvusrsap 15.00 14.86 1% 251 1% /usr/sap/WDD
/dev/lvinstcd 20.00 13.28 34% 20289 1% /instcd
/dev/lvscript 1.00 0.65 35% 1921 2% /script
/dev/lvperfdata 1.00 1.00 1% 5 1% /perfdata
/dev/lvarchive 0.50 0.50 1% 4 1% /Archive

Saturday, May 21, 2011

Normal Basis Questions and Answers - Part 2

User Auditing
Is there a way to find out what was entered in a particular transaction code screen?
No, but you can analyze tables associated with the transaction code and see if there is a username field that traces what this user has done.


Background Job Runs
I need to schedule a background job to run for 3 consecutive days and would like to use DB13. How can I schedule a report to run from DB13 and not SM37?
There is no way to schedule a report to run from DB13 other than pre-configured DBA jobs. Instead, use SM36 and make the jobs event driven.


Technical and Troubleshooting Questions

Transport requests
When I release all of the requests to DEV it is not being displayed in an import queue on the QA system (t-code STMS). When I check the log of transport request overall status is successful, but a message appears saying “continue: other transport group.” Why is this message appearing?
The transport group for QA is misconfigured. Go to STMS, then Overview. Double-click QA and choose communication. Next enter the correct transport group and save.


Memory and Sizing
We have a J2EE + ABAP 6.40 instance running a portal 6.0. It seems 1GB of memory is not enough and J2EE has problems if we assign more. What can be used to balance the load in the servers?
You can create a second server process using config-tool. Also, load balancing is possible through SCS.


Upgrading
After a recent upgrade of kernel 6.20 to 6.40, while doing a transport I received several warning parameters although everything looked okay on SAP t-code STMS, what should I do about the warning parameters.
You can delete these parameters from TPPARAM.


SAPRouter and DMZ
We setup a SAPRouter in DMZ so that all SAP requests can be routed in and out from that machine and the SAP application servers are not necessary to be exposed to the internet user. However, the SAPRouter does not handle the BW Web reporting application requests. We do not have E.P. Are there any tools which can help us to
route WEB reporting requests the way SAPRouter does?
You need a SAP Web dispatcher. It acts like a SAP Router but routes SAP ICM traffic. BW Web reporting is a BSP that sits on the ICM. You can look for sapwebdisp.exe in the kernel directory or do a self-generated profile using command option “bootstrap.”


Internet email gateway
How do you configure the Internet email gateway in SAP Netweaver 04?
Starting with version WAS 6.x, SMTP comes built in to kernel. Go to transaction. SCOT and configure it there.


J2EE and CRM
I am installing a SAP J2EE engine at CRM. When it reaches phase 22 it halts for more than 10 minutes and gives up starting the system. What should I do?
A restart is often the solution. If it is an add-in and you have restarted your ABAP then you may be missing
the profile parameters. If this is okay and a restart does not help look in the work directory and check dev_icontrol. If the J2EE engine software is the problem, applying a patch will solve the problem.


Installing R/3 Enterprise
When we install SAP R/3 enterprise 4.7, there are several error messages in the SAPVIEW.log. What does
this mean?
This means that one of your load jobs did not run successfully.


Program buffer / swap
In my development server when I perform ST02 the program buffer shows a value of 1056 in red under the
SWAP category. Users are getting a shortdump with the PXA buffer error message. What should I do?
Use “my links” in “my signature” and use the keywords: PXA Buffer.


Email from SBWP
When sending an email from transaction SBWP I wish to enter the user’s login name only, not an email address. Also I’d like SAP to look at the user details email address and communications methodvheld in SU01 and send the mail to this external email address. Can this be configured?
Yes. Follow pathway SO16-> Tab Mail Sys group->bottom radio button.


Updating Tables
Are direct updates on SAP tables allowed?
You can call SAP functions directly to updatedata (RFC calls) but it is not recommended to try and manipulate data directly at database level (sql scripts, jdbc)
In general it is a very bad idea to update tables directly in SAP.


Installing DB instance
While doing SAP installation of DB instance on a different box other than CI, the input we have given in SAPInst of DB instance is wrong in system number of CI instance. How can I change this entry after installation?
You must reinstall the CI instance with the right system number.


Backup Strategy
I am working on a backup strategy to disk. I want to perform a copy_save_delete equivalent on various disks. This function does not work for disk saves but ideally I would like to have two copies. Is there another function I can use?
In your init.SAP file log on to another drive/server to store another copy of your archive log.


Lock table overflow
One of my BTC jobs fails when I try to run it, giving me an error message stating “lock table overflow.”
It recommends to modify the enqueue / table size parameter to solve this issue. I do not have this value in my default or instance profile. How do I solve the problem?
Run ABAP RSPARAM program. It will give you the real value of the SAP parameter and where they have been set up. The lock table can hold 10,000 entries, which is more than enough for the average system. It is possible that the program is not written properly and the developers should modify it.


System copy for BW
I am attempting to complete a system copy of BW. When I try to go in to RSA1 afterwards I get the error message, “Entry in inbound table already exists.” What should I do to solve the problem?
Read the homogenous system guide and follow all directions under “subsequent steps” section.
Check transaction codes BDLS and SALE as well.


XI 3.0 Configuration
I am configuring my XI 3.0 Production server (MSCS 2003) on oracle 9.2.0.6 for backups. I have successfully run offline backups on single nodes (both A and B), split nodes (Oracle node B and SAP node A), but it fails when I run Oracle on Node A and SAP on Node B. I have checked the initsid.sap, initsid.ora spfilesid.ora files, the files within the “%Windir%\SAPCluster and the FSCMD location path and they are identical to my development servers. Rebooting the servers has been unsuccessful as well. How do I resolve this issue?
Log in on both nodes as SIDADM and run this command: brbackup –V. Make sure that “%Windir%SAPCluster” is part of your path.


Restarting server
Will restarting the PRD server every week affect server performance?
When you restart the server, the SAP ABAPprogram buffer and other buffers are emptied. As far as performance goes, the reports runtime will be a bit longer during the first run. You can restart the system every week without harm. The only reason against it may be the SLA/users demand.


System copy PRD to TST
I need to do a system copy from PRD to TST. I cannot follow SAP documentation, but must do it manually. When I run “@/tmp/TSTcntrl.sql,” will it change all the PRD to TST in the restored file names? Would the restored files be recognized as a TST system?
You must first open the DB as PRD on your new system. Second, apply redo logs. Next, run your script to change SID. This will change SID but will not change tablespace names if using WAS 6.10 or above.


MIRO updates to RBKP
We are running Win 2003, Oracle 9I, SAP 4.7. We are having performance issues around Tx MIRO which updates table RBKP. Table RBKP has five indexes in SAP, but only three of which exist inOracle. Why is this?
In SAP there are many predefined indexes.You can see these indexes via DB02->checks-> database ->ABAP dictionary ->display. Under optional indexes you see all indexes of which the definition is created in the dictionary, but not created at database level.


Customizing and Master Data
Some transactions in SAP are seen as customizing, for instance OVRF (updating routes). In some systems this is set as master data and can be set open. Where do you do this?
That depends on each transaction. Sometimes it is determined by other configuration and sometimes it is set according to system function, production or test/develop/demo/etc.


Variants for ABAP
I have some housekeeping ABAPs that I have to create variants for. There are cases when I have to specify a time interval for the ABAP in the variant. If I explicitly enter a start and end date they will remain at that current date continuously. Is there any way to dynamically enter dates in the variant?
In transaction SE38 enter the variant name and choose the attributes radio button. Here you can set the field to “selection variable.” Then, under selection variables button, you can define that it is SY -DATE+7.


SM37 and Spool
When I check transaction SM37 and I want to see the spool I get a message that says “no list available.” Why is this?
There are several possible reasons. The spool is sent to a printer and deleted. The spool is too old and the housekeeper deleted it. Also, some test reports simulate a calculation then rollback. It works fine online. When a background job does a rollback then it rolls back the spool as well.


J2EE and Support Packs
I have an ABAP+J2EE instance on XI 3.1. Is it necessary to stop WEB AS and J2EE to apply the support packs for J2EE?
Any J2EE patches are applied while system is up and running but no activities. The only patch applied while system is down are binaries (ABAP kernel).

Wednesday, May 18, 2011

Normal Basis Questions and Answers - Part 1

Transaction Codes
Where are t-code name and program values stored? How can I find a list of all the t-codes in the SAP system?
You can use transaction st11 to view Table TSTC. You can define a new t-code using transaction se93.


STMS Importing
How can one disable the "Import All" button on STMS for the queues?
Login to your Transport Domain Controller. Run STMS->Overview->System. Choose the System you want to disable import all. Go to Transport Tool tab. Add/Create Parameter "NO_IMPORT_ALL" set its value to 1.


Patch Level for GUI
How can you confirm the patch level for SAP GUI?
Log into SAPGUI, and hit Alt-F12 ->About


Web Resources
If you can’t find the answer to a question, what are some website you can visit to find the answer?
OSS notes: http://service.sap.com/notes
SAP help: http://help.sap.com
Google: http://www.google.com


Instance installation
We want to install another new instance on same development box. Is this possible? What are some of the important considerations?
Yes, it is possible to have more than one instance on a single box. The key is to use a different SID and a different system number.
It is also important to note that for a 64 bit SAP kernel, SAP recommends a 20 GB swap space for 1st instance and 10 GB per each additional instance.


Client copy
What is the difference between a client copy and client refresh?
Some times these are the same, For example, if you are performing a copy to an existing client for the express purpose of updating the data, then it is called Client Refresh.
If you are copying to a newly created client then it is more appropriate to say “client copy.”
Another way of thinking about this is that a client copy from production to a QA server or from production to DEV server is really a client refresh.


Table T000
What is the purpose of table T000?
Table T000 contains a list of defined clients, which you can maintain with transaction SCC4.


Table USR02
What is the purpose of table USR02?
This table stores User IDs and passwords.


Passwords
How do you create a password exception list?
Place the answers in table USR40.


Table TADIR
What is the purpose of table TADIR?
Table TADIR contains object directory entries.


Table TDEVC
What is the purpose of table TDEVC?
Table TDEVC contains development classes and packages.


Change Requests
What are the transaction codes associated with changing requests, request headers, or request object lists?
The following tables hold information about change requesets.
E070 Change request headers
E071 Change request object lists


User Access
How can you get a list of the users with development access on a particular system?
Table DEVACCESS


Transport object keys
Where can you find a list of object keys included in a transport?
E071K Object keys contained within transports


Transport in progress
How can you tell if a transport entry is in the process of being imported?
Check table TRBAT


Repaired Objects
How can you find a list of objects that have been repaired in the system?
ADIRACCESS List of repaired objects and their access keys


Disable Multiple Logins
How do you Disable Multiple Logins in the Same Client?
To disable multiple user logins within the same client implement this parameter in the instance profile:

login/disable_multi_gui_login = 1


If you do not use this parameter in your system, users have the ability to ignore the warning window at the time they try to login to the same client.

Activating this parameter in your system will make you look good if you get audited!

How about exceptional logins?
In case you're wondering how to allow multiple logins for certain key users you can implement parameter login/multi_login_users. You can list the user IDs that should be ignored if the parameter above is active in your system.


Locked Transactions
How can you View Locked Transactions?
As you know, you can lock/unlock transaction codes via SM01. But, how do you go about viewing the transactions that are locked in the system? You need to look in field CINFO, table TSTC.

Within SAP, you can use either SE11 or SE16 to browse the table contents. Make sure you enter "A0" as the "HEX01 data element for SYST" starting value and "A9" as the ending value.

This will list all the transactions locked in the system. Note: The CINFO field description is "HEX01 data element for SYST".


Locking Accounts
When you are Locking/Unlocking accounts what happens behind the scenes?
User accounts can be locked/unlocked via SU01 (User Maintenance.)
But, what goes on behind the scenes? What does the system do to actually set this?
The table USR02 gets updated. The field UFLAG determines if the user account is locked or unlocked. The value "64" indicates that the user account is locked. The value "0" that the user account is unlocked.
Knowing this, you can then issue an update statement at the database level that locks all users in mass.
Don't lock yourself out, though! Use exceptions for super user accounts in your update statement.

Notice that 4.6b and above have made improvements to this kind of task, making the locking/unlocking a bit easier. However, changing at the database level is much faster and it is just one simple query.


TP and R3TRANS
What is the difference between TP and R3TRANS?
TP controls the process and calls several tools, like r3trans but also e.g. DDIC-Activation.


SAPALL User
Is there a difference between user DDIC and SAP_ALL/SAP_NEW ?
Yes, DDIC is hard coded to do some things other IDs cannot. But you should be able to activate tables in SE11 using a SAP_ALL user.


UNIX OS
What is the purpose of the UNIX file /etc/passwd ?
/etc/passwd contains valid user passwords, accounts, default login directories, and user security permission levels

The file format is
user:password:UID:GID:login_directory:shell


SAP DB Error
If you receive an “error occurred during installation” message when trying to install the DBInstance (SAP DB) what can you do to fix the problem?
Use shorter pathnames.


ECC 5.0
Is it possible to install ECC 5.0 as a test system and not production, without installing solution manager?
During the installation you will be asked for a key, which can only be generated by the solution manager.


Java and XI
We are trying to install Java-Add an ABAP system as part of an XI 3.0 installation. At the end of the J2EE installation, while trying to start SAP j2EE engine, a timeout error occurs. How would you fix this?
Increase paging space to 20 GB.

Thursday, March 3, 2011

ZDATE_LARGE_TIME_DIFF Error

After the Tech Level (TL) upgrade from TL5 to TL12, our unix engineer forgot to sync in the clock on both of app and db server.

Short text
Large time difference between application server and database.



What happened?
The R/3 System synchronizes the times of the database and application
server regularly.
As a result, a very large time difference was detected between
these two systems.


How to correct the error
It is possible that the local clock was set incorrectly or that the
application server and the database are on different time zones.
Ensure that the times and time zones of the application server and
databse server match and restart the system.

Before

After sync the time for both server, reconfigure the NTP and restart SAP, it works fine

Monday, February 28, 2011

Short DUMP - SNAP_NO_NEW_ENTRY

What to do when you get ABAP runtime error SNAP_NO_NEW_ENTRY

This dump arises when the SNAP table that loads all the records of short dumps reaches a bottleneck..


Invoke tcode st22

Goto ->Reorganise