You are on page 1of 33





 Basic Applications Diagnostics and Troubleshooting Tools

 Application Security
 Concurrent Processing
 Useful Scripts

Basic Applications Diagnostics
and Troubleshooting Tools

Basic Applications Tools

(Help) About Oracle Applications - a 

(Help) Record History - a 
(Help) Diagnostics Ñ è amine - a 
(Help) Diagnostics Ñ è amine « choose $DèSCRIPTIVèèIèD$ block -

(Help) Diagnostics Ñ è amine « choose $èVIROèT$ block ±

(Help) Diagnostics Ñ è amine « choose $PROIèS$ block ±
(Help) Diagnostics Ñ è amine « choose SYSTè block and ASTUèRY field. ±

'()* % % "(('(*+%")

Basic Applications Tools

(Help) Diagnostics Ñ Display Database èrror - a 

(Help) Diagnostics Ñ Properties Ñ Item - a 

(Help) Diagnostics Ñ Trace (checkbo ) - a %     !% -.! /
(avigate) Concurrent Ñ Program Ñ Define
Utilities: S Trace profile option
Application Developer responsibility - #        
! -&/$  0a        
1! -&/  0    
$! -&/  0)   !" 
! -&/  00%  
"! -&/  00 2  2
! -&/  003    

Application Security

Responsibility Determines :
How much of an application¶s functionality a user can use

What reports and concurrent program a user can access

Which application data these reports and concurrent programs can access


Data Group
Request Group
unction and menu e clusion







A request group defines the concurrent program that may

be run by an application user under a particular responsibility

Request group can include

Individual Report and concurrent program

Request Set


form is a user interface to insert ,update and delete data into and from

Database. A form must be registered with Oracle Application Object ibrary


orm unction - A function that invokes an Oracle orms form
Sub function - A non form function is a securable subset of forms
functionality , which means a function e ecuted from within a form

One can navigate to a form function ( form) using the navigate window

A sub function can only be run from a form


A menu is a hierarchical arrangement of application functions,

that are displayed in the navigator window

menus can also point to non form function that do not display in
the navigator

èach responsibility is associated with a menu

A menu consists of menu entries , which could be a submenu or a

Create a test User
Create a test Responsibility
Create a test Application
Create a test Data Group
Create a test Oracle ID
Create a test Request Group
Create a test orm
Create a test orm unction
Create a test enu
Set Signon Audit profile option

Running Security and User Reports
unction Security enu Report
unction Security avigator Report
unction Security unction Report
Active Users Report
Active Responsibilities Report
Report Group Responsibilities Report
Reports and Sets by Responsibility Report
Users of a Responsibility Report
Sign-On Audit orms Report
Sign-On Audit Users Report
Sign-On Audit Responsibilities Report
Sign-On Audit Unsuccessful ogins Report
Sign-On Audit Concurrent Requests Report uu
Concurrent Processing

A concurrent program is an e ecutable file that runs simultaneously with

other concurrent programs and with online operations.

Any long running data intensive program

Operating system script
Oracle Reports
When submitted through a Standard Submission form a concurrent
program generates a concurrent request

A concurrent manager intercept a concurrent request and starts the



A request group is a collection of reports and concurrent programs
A system administrator defines request group in order to control user
access to reports and concurrent programs

Only a system administrator can define a request group

Request set is a set of reports and concurrent programs with common
run and print options.

ènd user and system administrator can define request set

Concurrent Processing Components

Internal Concurrent anager - %

+ $  
) -+$)/
4 4    

'   !+$) 

Conflict Resolution anager - %
$ (  
) -$()/  

   ? ? ?

Parallel Concurrent Processing - Parallel Concurrent Processing
(PCP) is the ability to distribute concurrent processing over multiple
machines. This architecture has following advantages.
1. High performance
2. ault Tolerance
3. Single Point of Control

The biggest advantage for PCP is fault tolerance. You will see slightly
higher performance. You will see the most improvement on concurrent
processing jobs that are compute-intensive. Data-intensive jobs will not
have as significant an improvement, e cept where PCP is combined
with Oracle Parallel Server (OPS).
The APPDCP environment variable is used to indicate whether PCP is
on or off.

Internal onitor - When you are using PCP, you must allow for the
possibility that the Internal Concurrent anager on the master system
can fail. In this case, Oracle Applications uses a special process, called
the Internal onitor (I), that watches for just such an event. If it
happens, I will attempt to start an IC on its machine. That IC would
then become the master.

When I is running, it is running an instance of the program, DIO.

The Standard anager accepts any and all requests. It has no

predefined specialization rules and is active all the time. It is not
recommended to add specialization rules to the standard manager as it
can cause problems.

Concurrent anagers - Concurrent anagers are the primary
workhorse of the concurrent processing system. ost concurrent
managers run the standard concurrent library called DIBR. There
are additional concurrent libraries (e.g., IVIBR, ARIBR, PAIBR, etc.).

OTè: Yes, concurrent managers and the IC run the same program,

Transaction anagers - Transaction anagers (Ts) are the process
by which Applications handles synchronous tasks that can not afford to
wait in the queue. An e ample of a Transaction anager occurs in
Order anagement. When some enters an order, that order is checked
against inventory, work in process, orders, and several other systems to
see if we can deliver this to the customer when we promise.

Ts are immediate concurrent programs that work only when signaled
by a client. Unlike Cs that continuously poll the system looking for
work, Ts wait until signaled. Also, the Ts do not establish on-going
connections with the client. Once the request has been sent to the T,
the connection remains only long enough for the T to obtain the
answer and return the result set.

Generic Service anagement (GS)
An è-Business Suite system depends on a variety of services such as
orms isteners, HTTP Servers, Concurrent anagers, Workflow
ailers, etc. Such services are composed of one or more processes
that must be kept running for the proper functioning of the è-Business
Suite. Until recently many of these processes had to be individually
started and monitored by system administrators. anagement of these
processes was complicated by the fact that these services could be
distributed across multiple host machines. The new Service
anagement feature for Release 11i helps to greatly simplify the
management of these processes by providing a fault tolerant service
framework and a central management console built into Oracle
Applications anager 11i.

Service anagement is an e tension of Concurrent Processing, which

provides a powerful framework for managing processes on multiple
host machines.

Generic Service anagement (GS)
With Service anagement, the Internal Concurrent anager (IC)
manages the various service processes across multiple hosts. On
each host, a Service anager acts on behalf of the IC, allowing the
IC to monitor and control service processes on that host
Set System Profile ± Concurrent GS ènabled to Y
eed to configure DS listener & corresponding tnsnames.ora,
Important: If GS is not correctly configured, problems may occur
with the managers failing to start. In this case, the GS functionality
may be turned off by resetting this Profile to '' and bouncing the
managers (i.e. shutting down the icm and restarting it). This will
allow concurrent managers to run while the configuration error is

or more detailed information about GS and its functionality refer
to Oracleå   ote 165041.1. ˜
Concurrent Processing Tasks

Submit an individual concurrent request

Submit a concurrent request set
Scheduling a concurrent request
onitoring a concurrent request
Viewing a concurrent request's log file
Viewing a concurrent request's output

Concurrent Processing Tasks

Create a request set

Create a request group
Create a concurrent e ecutable
Create a concurrent program
Create a concurrent manager
Stop and restart a concurrent manager
Stop and restart the IC
Canceling a concurrent request
Holding a concurrent request
Terminating a concurrent request

Purging the request table

When tables DCOCURRèTRèUèSTS and

DCOCURRèTPROCèSSèS reaches to above 20K rows, the
performance diminishes. You may want to run Purge Concurrent
Request on a regular basis.
The Purge Concurrent Requests job can be used to purge:
Requests, gr logs, and All requests depending on what is
chosen. Use the following options: ènter = All, ode = AGè,
ode Value = 15
The std.mgr log continuously grows where it may good to
archive it regularly.
Useful Scripts

Concurrent Processing Scripts

Analyze a concurrent request

Analyze all pending concurrent requests
Clean the concurrent manager tables
Retrieve all log files for a concurrent request
Get a concurrent program¶s incompatibilities
ist responsibilities that can run a given concurrent program
Available at

;??  Available at metalink OTè:171855.1

$DTOP/sql has many useful script to debug C.

afimlock.sql - To list the ocks that the IC is waiting for

afimchk.sql - To check the status of IC
afrqrun.sql - ists all Running, Terminating, Paused Requests
afrqwait.sql - Selects all the Pending Requests
afcmrrq.sql - ists managers that are currently running a request
(username, request id, program name, start date, etc).

Diagnostic Database Scripts

Describe Database Space

Describe Data iles
Describe a Database Object
Count Database Objects by Type
Table Definitions
Describe Tablespace
Describe Database Users

Diagnostic Applications Scripts
Some important scripts are as below:
ocated in $ADTOP/sql
Check and ist Compilation èrrors - aderrch2.sql
ist Job Timing Information - adtimdet.sql
Count Objects by Type - adutcobj.sql
Applications Configuration Script - adutconf.sql
ist Product Dependencies - adutfpd.sql
ist Pinned Objects - ADCKPI.sql
Report Database Configuration - ADRCSDC.sql
Report Table Sizes - ADRSTS.sql
Show è tent ailure - ADRSSIè.sql
Show User Space - ADRSSUS.sql
Controlling Servers scripts

Stopping servers
Starting servers
ocated in $COOTOP/admin/scripts
Some important scripts are as below:

orms Server istener -

orms Server -
Report Review Agent -
Reports Server -
Concurrent anagers -
et8 istener -
Apache istener -
Oracle 8i database server -

Checking Certification

etaink (è ternal):
Certify - Oracle's Certification atri (Internal):
Certify User's Guide (Internal):
Certify A (Internal):
RDBS Patch Set Tracking System:
Interoperability Patches: .html


 Oracleapache.conf ± calls plsql.conf,6iserver.conf. Has
directives for oracle
ain jserv config file.
Userd by the JV. Has the port in which Jserv listens
This groups the class files for micro JVs
Stores the property class.autoreload


 iles are cached in webcache $OAHT/pages

 DAD config is in
This stores the DAD config with Apps password
or DB connectivity ± uses DBC file in $DTOP/secure
This has the guest and gateway user id
It can be created using script


 Jinitiator stored in $COOTOP/util/jinitiator

 or digitally signing,
$ADTOP/bin/adjkey ±initialize <Dir of jinit> <Dir of jinit/jinitiator>
 orms server config is stored in $OAHT/bin/appsweb.cfg
 All forms in $AUTOP/forms/US
 To check form version use adident command.

uestion ?
Comments/ Suggestion