Concurrent Program:

      An instance of an execution file, along with parameter definitions and incompatibilities. Several concurrent programs may use the same execution file to perform their specific tasks, each having different parameter defaults and incompatibilites.

Concurrent Program Executable:

      An executable file that performs a specific task. The file may be a program written in a standard language, a reporting tool or an operating system language.

Concurrent Request:

      A request to run a concurrent program as a concurrent process.

Concurrent Process:

      An instance of a running concurrent program that runs simultaneously with other concurrent processes.

Concurrent Manager:

      A program that processes userís requests and runs concurrent programs. System Administrators define concurrent managers to run different kinds of requests.

Concurrent Queue:

      List of concurrent requests awaiting processing by a concurrent manager.

Spawned Concurrent program:

      A concurrent program that runs in a separate process than that of the concurrent manager that starts it.

      PL/SQL stored procedures run in the same process as the concurrent manager; use them when spawned concurrent programs are not feasible.

                                    LIFE CYCLE OF CONCURRENT REQUESTS

The Phases and Statuses through which a Concurrent request runs through:

      A concurrent request proceeds through three, possibly four, life cycle stages or phases:

Pending Request is waiting to be run
Running Request is running
Completed Request has finished
Inactive Request cannot be run

      Within each phase, a request's condition or status may change. Below appears a listing of each phase and the various states that a concurrent request can go through.

      Concurrent Request Phase and Status

Phase Status Description
PENDING Normal Request is waiting for the next available manager.
Standby Program to run request is incompatible with other program(s) currently running.
Scheduled Request is scheduled to start at a future time or date.
Waiting A child request is waiting for its Parent request to mark it ready to run. For example, a report in a report set that runs sequentially must wait for a prior report to complete.
RUNNING Normal Request is running normally.
Paused Parent request pauses for all its child requests to complete. For example, a report set pauses for all reports in the set to complete.
Resuming All requests submitted by the same parent request have completed running. The Parent request is waiting to be restarted.
Terminating Running request is terminated, by selecting Terminate in the Status field of the Request Details zone.
COMPLETED Normal Request completes normally.
Error Request failed to complete successfully.
Warning Request completes with warnings. For example, a report is generated successfully but fails to print.
Cancelled Pending or Inactive request is cancelled, by selecting Cancel in the Status field of the Request Details zone.
Terminated Running request is terminated, by selecting Terminate in the Status field of the Request Details zone.
INACTIVE Disabled Program to run request is not enabled. Contact your system administrator.
On Hold Pending request is placed on hold, by selecting Hold in the Status field of the Request Details zone.
No Manager No manager is defined to run the request. Check with your system administrator.

Difference between Request group and Request set

      Reports and concurrent programs can be assembled into request groups and request sets.

      A request group is a collection of reports or concurrent programs. A System Administrator defines report groups in order to control user access to reports and concurrent programs. Only a System Administrator can create a request group.

      Request sets define run and print options, and possibly, parameter values, for a collection of reports or concurrent program. End users and System Administrators can define request sets. A System Administrator has request set privileges beyond those of an end user.

Standard Request Submission and Request Groups

      Standard Request Submission is an Oracle Applications feature that allows you to select and run all your reports and other concurrent programs from a single, standard form. The standard submission form is called Submit Requests, although it can be customized to display a different title.

      The reports and concurrent programs that may be selected from the Submit Requests form belong to a request security group, which is a request group assigned to a responsibility.

      The reports and concurrent programs that may be selected from a customized Submit Requests form belong to a request group that uses a code.

      In summary, request groups can be used to control access to reports and concurrent programs in two ways; according to a user's responsibility, or according to a customized standard submission (Run Requests) form.

Different execution methods of executables:

FlexRpt The execution file is wrnitten using the FlexReport API.
FlexSql The execution file is written using the FlexSql API.
Host The execution file is a host script.
Oracle Reports The execution file is an Oracle Reports file.
PL/SQL Stored Procedure The execution file is a stored procedure.
SQL*Loader The execution file is a SQL script.
SQL*Plus The execution file is a SQL*Plus script.
SQL*Report The execution file is a SQL*Report script.
Spawned The execution file is a C or Pro*C program.
Immediate The execution file is a program written to run as a subroutine of the concurrent manager. We recommend against defining new immediate concurrent programs, and suggest you use either a PL/SQL Stored Procedure or a Spawned C Program instead.

Defining and Modifying your Concurrent Programs:


      Build the execution file for your concurrent program.

      Use the Concurrent Program Executables window to define a concurrent program executable for your operating system program

Concurrent Programs Block

      The combination of application name plus program name uniquely identifies your concurrent program.


      You see this longer, more descriptive name when you view your requests in the Concurrent Requests window. If this concurrent program runs through Standard Request Submission, you see this name in the Submit Requests window when you run this program.

Short Name

      Enter a brief name that Oracle Applications can use to associate your concurrent program with a concurrent program executable.


      The program's application determines what ORACLE username your program runs in and where to place the log and output files.


      Indicate whether users should be able to submit requests to run this program and the concurrent managers should be able to run your program.

      Disabled programs do not show up in users' lists, and do not appear in any concurrent manager queues. You cannot delete a concurrent program because its information helps to provide an audit trail.


      Select the concurrent program executable that can run your program. You define the executable using the Concurrent Program Executables window. You can define multiple concurrent programs using the same concurrent program executable. See: Concurrent Program Executables.


      If your concurrent program is a SQL*Report program, you can enter execution options or switches for the Report Formatter (RPF). To use several options at the same time, do not repeat the '-'. For example, enter -FI to choose the form feed and initial page eject options. You can enter these options in either uppercase or lowercase and in any order. Valid options for SQL*Report are:

-F Form Feed Choose this option to send a form feed character before printing a page.
-I Initial Page Eject Choose this option to eject a page before printing.
-P:n:m Page Choose this option to print from page n topage m.
-R Reverse Underlining Order Choose this option to print the underline character on devices that do not allow overstriking.
-U Upper Case Choose this option to print all of your report in uppercase.

      If you define a concurrent program with the bitmapped version of Oracle Reports, you must set the execution option field to "VERSION=2.0b".

      You can also pass ORIENTATION= and PAGESIZE=x parameters to your bitmapped Oracle Reports program. Units of width and height are set in your Oracle Reports program.

      There should be no spaces before or after the execution options values. The parameters should be separated by only a single space.


      The execution method your concurrent program uses appears here.

Valid values are:

Spawned Your concurrent program is a stand-alone program in C or Pro*C.
Host Your concurrent program is written in a script for your operating system.
Immediate Your concurrent program is a subroutine written in C or Pro*C. Immediate programs are linked in with your concurrent manage and must be included in the manager's program library.
Oracle Reports Your concurrent program is an Oracle Reports script.
PL/SQL Stored Procedure Your concurrent program is a stored procedure written in PL/SQL.
SQL*Loader Your concurrent program is a SQL*Loader program.
SQL*Plus Your concurrent program is a SQL*Plus or PL/SQL script.
SQL*Report Your concurrent program is a SQL*Report program. You can enter switch options, such as the form feed option, in the Execution Options field.


      You can assign this program its own priority. The concurrent managers process requests for this program at the priority you assign here.

      If you do not assign a priority, the user's profile option Concurrent:Priority sets the request's priority at submission time.

Request Type

      If you want to associate your program with a predefined request type, enter the name of the request type here. The request type can limit which concurrent managers can run your concurrent program.

      You can define a concurrent manager to run only certain types of concurrent requests.

Use in SRS:

      Check this box to indicate that users can submit a request to run this program from a Standard Request Submission window.

      If you check this box, you must register your program parameters, if any, in the Parameters window accessed from the button at the bottom of this window.

      Allow Disabled Values:

      If you check the Use in SRS box, you can also check this box to allow a user to enter disabled or outdated values as parameter values.

      Many value sets use special table columns that indicate whether a particular value is enabled (using ENABLED_FLAG, START_DATE_ACTIVE, and END_DATE_ACTIVE columns). These value sets normally allow you to query disabled or outdated values but not enter them in new data. For Standard Request Submission, this means that a user would not normally be allowed to enter disabled values as report parameter values when submitting a report, even if the report is a query-only type report.

Run Alone:

      Indicate whether your program should run alone relative to all other programs in the same logical database. If the execution of your program interferes with the execution of all other programs in the same logical database (in other words, if your program is incompatible with all programs in its logical database, including itself), it should run alone.

      You can enter any specific incompatible programs in the Incompatible Programs windows.


      Indicate whether to automatically save the output from this program to an operating system file when it is run. This value becomes the default for all requests submitted for this program. The output of programs with Save set to No is deleted after printing.

      If this is a Standard Request Submission program, users can override this value from the Submit Requests window.


      If you enter No, your concurrent program's output is never sent to the printer.

      Columns / Rows:

      Enter the minimum column and row length for this program's report output. Oracle Applications uses this information to determine which print styles can accommodate your report.


      The print style you select depends on your system and printer setup. Print styles include

  • 132 columns and 66 lines (Landscape)
  • columns and 66 lines (Landwide)
  • 80 columns and 66 lines (Portrait)
  • 132 columns and 62 lines (A4)

      Your list is limited to those styles that meet your program's columns and row length requirements.

      Style Required:

      If your program requires a specific print style (for example, a checkwriting report), use this check box to enforce that print style.


      If you want to restrict your program's output to a single printer, enter the name of the printer to which you want to send your output. If your program has minimum or maximum columns or rows defined, your list of values is limited to those printers that can support your program's requirements.

      Users cannot override your choice of printer from the Submit Requests or Concurrent Requests windows

Copy to... Choose this button to create another concurrent program using the same executable, request and report information. You can elect to copy the incompatibility and parameter details as well.
Incompatibilities Choose this button to open the Incompatible Programs window.
Parameters Choose this button to open the Concurrent Program Parameters window.

Concurrent Program Parameters:

      Enter and update the program parameters that you wish to pass to the program executable. Program parameters defined here should match the variables in your execution file.


      Choose the sequence numbers that specify the order in which your program receives parameter values from the concurrent manager.

      The default value for this field is the next whole sequence number. If you frequently change sequence numbers or frequently insert and delete parameters, carefully check the default value to ensure it matches your expectations.


      Disabled parameters do not display at request submission time and are not passed to your execution file.

      Validation Information

Value Set

      Enter the name of the value set you want your parameter to use for validation. You can only select from independent, table, and non-validated value sets.
The maximum size of your value set is 240 characters.

Default Type:

      If you want to set a default value for this parameter, identify the type of value you need.

      Valid types include:

Constant The default value can be any literal value.
Current Date The default value is the current date in the format DD-MON-YY or DD-MON-YYYY, depending on the length of the segment.
Maximum       Date
Size                Format
9                    DD-MON-YY
11                  DD-MON-YYYY
Current Time The default value is the current time or the current date and time, depending on the length of the segment.
Maximum        Time
Size                  Format
5                      HH24:MI
8                      HH24:MI:SS
15                    DD-MON-YY HH24:MI
17                    DD-MON-YYYY HH24:MI
18                    DD-MON-YY HH24:MI:SS
20                    DD-MON-YYYY HH24:MI:SS
Profile The default value is the current value in the user profile option defined in the Default Value field. Use the profile option name, not the end-user name. You do not need to include $PROFILE$.
SQL Statement The default value is determined by the SQL statement you defined in the Default Value field.
Segment The default value is the value entered in a prior segment of the same parameter window.

      If you choose Current Date or Current Time, you skip the next field.

Default Value:

      You can enter a default value for the parameter. This default value for your parameter automatically appears when you enter your parameter window. You determine whether the default value is a constant or a context-dependent value by choosing the default type.

      Your default value should be a valid value for your value set. Otherwise you see an error message when you enter your parameter window on the Run Request window and your default value does not appear.


      If the program executable file requires an argument, you should require it for your concurrent program.

Enable Security:

      If the value set for this parameter does not allow security rules, then this field is display only. Otherwise you can elect to apply any security rules defined for this value set to affect your parameter list.


      Choose either Low or High if you want to validate your parameter value against the value of another parameter in this structure. Parameters with a range of Low must appear before parameters with a range of High (the low parameter must have a lower number than the high parameter). For example, if you plan two parameters named "Start Date" and "End Date," you may want to force users to enter an end date later than the start date. You could assign "Start Date" a range of Low and "End Date" a range of High. In this example, the parameter you name "Start Date" must appear before the parameter you name "End Date."

      If you choose Low for one parameter, you must also choose High for another parameter in that structure (and vice versa). Otherwise you cannot commit your changes.


      Indicate whether to display this parameter in the Parameters window when a user submits a request to run the program from the Submit Requests window.

      You should provide a default type and value for any non-displayed parameter.

Display Size

      Enter the field length in characters for this parameter. The user sees and fills in the field in the Parameters window of the Submit Requests window.

      You should ensure that the total of the value set maximum sizes (not the display sizes) for all of your parameters, plus the number of separators you need (number of parameters minus one), does not add up to more than 240. If your program values' concatenated length exceeds 240, you may experience truncation of your data in some forms.

Description Size

      Enter the display length in characters for the parameter value description. Your window may show fewer characters of your description than you specify here if there is not enough room (determined by the sum of your longest prompt plus your display size for this parameter plus seven). However, your window does not display more characters of the description than you specify here.


      A user sees the prompt instead of the parameter name in the Parameters window of the Submit Requests window.

Concatenated Description Size

      Enter the display length in characters for the parameter value description. The user sees the parameter value in the Parameter Description field of the Submit Requests and View Requests forms. The Parameter Description field concatenates all the parameter values for the concurrent program.

Suggestion: We recommend that you set the Concatenated Description Size for each of your parameters so that the total Concatenated Description Size for your program is 80 or less, since most video screens are 80 characters wide.


      For a parameter in an Oracle Reports program, the keyword or parameter appears here. The value is case insensitive. For other types of programs, you can skip this field.