Wednesday, 11 May 2011

Oracle APPS Concurrent Processing


Oracle APPS Concurrent Processing-1

Concurrent programs can be scheduled to run or manually run in oracle applications. In Oracle Applications, concurrent processing simultaneously executes programs running in the background with online operations to fully utilize your hardware capacity, hence the name ‘Concurrent Processing’. You can write a program (called a ”concurrent program”) that runs as a concurrent process. Typically, you create concurrent programs for long–running, data–intensive tasks, such as posting a journal or generating a report.

Concurrent Programs

A concurrent program is an instance of an execution file, along with parameter definitions and incompatibilities. Concurrent programs use concurrent program executables to locate the correct execution file. Several concurrent programs may use the same execution file to perform their specific tasks, each having different parameter defaults and incompatibilities.


Concurrent Program Executable

A concurrent program executable links an execution file or and the method used to execute it with a defined concurrent program. Under Concurrent Processing, an execution method may be a program written in a standard language, a reporting tool, or an operating system language.


An execution method can be a PL/SQL Stored Procedure, an Oracle Tool such as Oracle Reports or SQL*Plus, a spawned process, or an operating system host language.


Concurrent Program Execution File

A concurrent program execution file is an operating system file or database stored procedure which contains your application logic and can be executed by either invoking it directly on the command line or by invoking a program which acts upon it. For example, you run a Pro*C program by invoking it on the command line. You run a SQL script by running SQL*Plus and passing the name of the SQL script without the .sql extension.


Steps to Create a Concurrent Pro

1. Executable :

The first step in creating a concurrent program in oracle applications is to create the concurrent program executable. To do this, navigate to Application Developer responsibility after you login to Oracle Applications. To login, you can take the help of the ‘Topic11 - Oracle Applications Login Document’.

To open the Executable form follow the below mentioned navigation path.

Application Developer à Concurrent à Executable.



Figure 1. Executable Form Navigation


You will see the form as shown in figure 2 below.





Figure 2. Executable Form


Field Description

i) Executable - Enter executable name here. Enter any user friendly name.


ii) Short Name - Enter short name for your executable. This is used for mapping the executable with the concurrent program. Usually executable name are of 8 characters.

iii) Application - Give the application to which the executable belongs to. E.g. you want some program to run from oracle payables then account payables should be entered as application name.

iv) Description - Give the brief description of the executable in this field.

v) Execution Method - Here you need to choose the appropriate execution method for your executable. Following are the possible execution methods which are commonly used in oracle applications.


  • Oracle Reports – used for the RDF reports
  • Host – used for shell scripts, basically the language of the host operating system
  • PL/SQL Stored procedure – used to run the stored procedure through oracle applications
  • SQL*Loader – used to run the sql loader programs
  • SQL*Plus - used to run the anonymous PL/SQL blocks. It will get executed in the same fashion as you are running on SQL Plus.
  • Java Stored Procedure – The execution file is a Java stored procedure.
  • Java Concurrent Program – Used for program written in Java.
  • Spawned – used for c or pro*c Program. Mainly used by standard oracle interfaces.
  • Perl Concurrent Program – used for programs written in CGI Perl.
  • Request Set Stage Function – PL/SQL stored function that can be used tocalculate the completion statuses of request set stages.
  • Immediate – execution file is a program written to run as subroutine of the concurrent manager. Oracle doesn’t recommend use of this executable type.
  • Multi-Language function – execution file is an MLS function that supports running concurrent program in multiple languages.
PL/SQL Stored Procedure, Oracle Reports, Host, SQL*loader, SQL*Plus are the most commonly used executable types.


vi) Executable File name – This should contain the name of the executable file. In case of PL/SQL Stored procedure or Java Stored Procedure it should be the fully defined name of the stored procedure.

vii) Subroutine Name – This field is only used when executable type is spawned or immediate.

viii) Execution File Path -

ix) The Stage Function Parameters button opens a window that allows you to enter parameters for the Request Set Stage Function. This button is only enabled when you select Request Set Stage Function as your Execution Method.


Oracle APPS Concurrent Processing- 2

2. Concurrent Program :

Once you have defined the executable, the second step is to define the concurrent program. To define a concurrent program, you need to open the form using the navigation path below.
Navigation –Developer -> Concurrent ->Program


 

 
Figure 4. Concurrent Program Form Navigation

 
The form would look like as shown in the figure 4 below.

 

 
Figure 4. Concurrent Program Form

 

Field Description

i) Program – Give user friendly name for your concurrent program. This name will be displayed in Requests submission screen while submitting the requests.

ii) Short Name – Give short name for concurrent program. This is used within the databasetables in oracle applications. It’s a common practice to have the Short name same for the executable and the concurrent program.

iii) Application – Give the application to which the concurrent program belongs to. E.g you want some program to run from oracle payables then account payables should be entered as application name.

iv) Description - Give the brief description of the concurrent program.

 
v) Executable - Enter the short name of the executable (Defined in Executables Screen) you want to attach to this concurrent program.

vi) Method - will be defaulted once you enter executable short name

vii) Options - will be defaulted once you enter executable short name

 
Normally default values are given for the other fields. Following is the significance of these fields.

 
viii) Request Type – Concurrent program can be associated to a predefined request type so that only few concurrent managers can run the program.

 
ix) Incrementor – To be used by Oracle only.

 
x) MLS Function - This feature allows the program to be submitted once by the user but runs it in the multiple languages.

xi) Use In SRS – Only when this check box is checked the Concurrent Program would be available in Standard Request Submission (SRS) through the request group.

xii) Allow Disable Value – This will allow the disabled values in the value sets to be used while entering the values of the parameters in the Concurrent Program.
xiii) Run Alone – Indicates that program is incompatible with all other concurrent programs and should be run alone.

xiv) Enable Trace – This will enable the SQL trace for the concurrent program and will generate the trace file when concurrent program is run. Only used in development environments to check the performance of the concurrent program.

 
xv) Restart on system Failure – This option is used to indicate that concurrent program should automatically be started when concurrent manager is restored after the system failure.

xvi) NLS Compliant – This box is checked if the program allows for a user to submit request of the program that will reflect a language and territory that are different from the language and territory that the users are operating in.

 
xvii) Output Format – Format in which output should be printed. Possible format values are

 
  • HTML
  • PDF
  • TEXT
  • PS (Post Script)
  • PCL(HP’s Printer Control Language)
xviii) SAVE – Check to indicate that output should be automatically saved in an operating system file.

xix) PRINT – Whether you want the output to be sent to printer for printing.

xx) Column / Rows – Column and Row length of the concurrent program output. Oracle Applications uses this information to decide the print style.

xxi) Style Required – Print Style

xxii) Printer – A particular printer on which output should be sent.

Save the data that you have entered using Ctrl+S or File à Save.

No comments: