concurrent concepts

Upload: guruling-bisalapur

Post on 06-Apr-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 Concurrent Concepts

    1/31

    SatyamSatyam

  • 8/3/2019 Concurrent Concepts

    2/31

    Objectives .

    Overview of Concurrent Processing

    Defining Concurrent Programs

    CONCURRENT PROCESSING

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    To Understand .

    Coding Oracle Tools Concurrent Programs

  • 8/3/2019 Concurrent Concepts

    3/31

    Major Features

    Online Requests

    Over view Of Concurrent Processing

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Automatic Scheduling

    Concurrent Processing Options

    Online Request Review

    Concurrent Managers

    Simultaneous Queuing

  • 8/3/2019 Concurrent Concepts

    4/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Concurrent processing simultaneously executes

    programs running in the background with online

    operations

    Purpose of concurrent processing:

    Take advantage of multitasking,parallel

    processing and distributed processing

    Give system administration flexibility to set up

    concurrent processing to fit the needs of their

    site and users

    Concurrent Processing Overview

  • 8/3/2019 Concurrent Concepts

    5/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Benefits of concurrent processing:

    Consistent response time

    Use all the capacity of your hardware by

    executing many process at once

    Control the number of processes that run on each

    node

    On-line file review

    Portable interface to your concurrent program

    Concurrent Processing Overview

  • 8/3/2019 Concurrent Concepts

    6/31

    Definitions

    Concurrent Program

    Over view Of Concurrent Processing

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Concurrent Program Executable

    Concurrent Request

    Concurrent Process

    Concurrent Manager

    Concurrent Queue

  • 8/3/2019 Concurrent Concepts

    7/31

    Concurrent Program

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    An instance of an execution file,along with parameter

    definitions and incompatibilities.Several concurrent programsmay use the same execution file to perform their specific

    tasks,each having different parameter defaults and

    incompatibilities.

    Concurrent Processing Definitions

    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 Program Executables

  • 8/3/2019 Concurrent Concepts

    8/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Concurrent Processing Definitionscontd

    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 process

    ConcurrentManager

    A program that processes users requests and runs concurrent

    programs.System Administrators define concurrent managers to

    run different kinds of requests.

  • 8/3/2019 Concurrent Concepts

    9/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Creating Concurrent Programs.

    1. Write Your program execution file and place it in the

    location for your Operating System.

    2.Define the concurrent program executable with AOL to

    specify an execution file and an execution method for your

    program.

    3.Define the

    a)Concurrent program with AOL

    b)Define program parameters

    c)Define any incompatibilities with other concurrent

    programs.

    4)Request your program from the Run reports form

    Overview OfDesigning Concurrent Programs

    Any Program or any portion of a Form that can be separately constructed to be non-interactive could

    potentially be run as a concurrent process.

  • 8/3/2019 Concurrent Concepts

    10/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Concurrent Program Parameters The Concurrent manager processes up to 100 arguments for a

    concurrent program

    Handling System Failures Sometimes the concurrent managers fail in the middle of the

    program(or the database goes down,or the system crashes)

    The concurrent managers restart programs when the system goes upagain

    Write your program so that it can restart and run again without

    problems-plan to commit at the very end of the program

    Designing Concurrent Programs

  • 8/3/2019 Concurrent Concepts

    11/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Writing Concurrent ProgramsUse Oracle Tools,PL/SQL Procedures to create execution files

    Stored Procedure Concurrent Programs You can implement your concurrent program as a stored

    procedure.Stored procedure concurrent programs accept input

    parameters only and are submitted with the FND_REQUEST package.Submitting a Concurrent Request Your PL/SQL procedures can submit a request to run a program as a

    concurrent process by FND_REQUEST.SUBMIT_REQUEST.

    Designing Concurrent Programs

  • 8/3/2019 Concurrent Concepts

    12/31

    Steps to follow when defining a concurrent programA

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Why do you need a concurrent program?What does it do?

    Implementing A Concurrent Program

    1.Design a concurrent program

    2.Write the program

    Choose the appropriate programming language or tool

    3.Put the program where Oracle Applications can read it

    Place the program in your custom application directory

    4.Define your concurrent program executable

    Tell Oracle Applications that your program exists

  • 8/3/2019 Concurrent Concepts

    13/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Implementing A Concurrent Programcontd

    5.Define your concurrent programs

    Define the specific parameters of your program

    Add program to a request group

    Assign request group to a responsibility

    6.Submit your concurrent program

    Either use standard request submission or submit

    your program from a procedure or a form

  • 8/3/2019 Concurrent Concepts

    14/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Write The Program Executables

    Oracle Tool Concurrent Programs

    PL/SQL Stored Procedures

    Oracle Reports programs are powerful

    SQL*Plus,PL/SQL,SQL*Loader programs are simpleto write

    Appropriate for frequently executed concurrent

    programs(including those you develop to replace

    immediately concurrent programs from prior releases of

    Oracle Applications)

    When your application has a simple background

    program that does not require any file I/O,you canim lement it as a stored rocedure concurrent ro ram

  • 8/3/2019 Concurrent Concepts

    15/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Move Your Program File

    Oracle Applications looks for executables based on their execution

    method

    BINSRW

    SQL

    RPT

    LANG

    LOG

    FORMSLIB

    OUT

    MESG

    PL/SQL

    Application

  • 8/3/2019 Concurrent Concepts

    16/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define The Concurrent Program Executable

    Identify your concurrent program to Oracle Application Object Library

    Concurrent Program Executables

    Locating Your File

    Provide the actual file name of your program file

    Provide the application that determines where to look for the file

    Provide the execution method

  • 8/3/2019 Concurrent Concepts

    17/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define the Concurrent Program Executablecontd

    Field Help

    In the concurrent programs form,you assign this name to a

    concurrent program to associate your concurrent program

    with your executable logic

    Executable

    Application

    The concurrent managers use the application to determine

    in which directory structure to look for your execution file

  • 8/3/2019 Concurrent Concepts

    18/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define the Concurrent Program Executablecontd

    Field Help

    The method determines in which directory the concurrent

    managers look for your execution file

    -FlexRpt:The execution file is written using the FlexReportAPI-FlexSql: The execution file is written using the FlexSql API

    -Host:The execution file is a host script

    -Oracle Reports

    -PL/SQL Stored Procedures

    -SQL*Loader:The execution file is a SQL script

    -SQL*Plus-Sql*Report

    -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 programinstead

    ExecutionMethod

  • 8/3/2019 Concurrent Concepts

    19/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define the Concurrent Program Executablecontd

    Field Help

    Enter the operating system name of your execution file.Someoperating systems are case sensitive,so the name entered here

    should match the file name exactly

    Execution File Name

    Subroutine Name

    Enter the name of your C or PRO*C program subroutine here.Do

    not use spaces or periods(.) in this field.

  • 8/3/2019 Concurrent Concepts

    20/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define The Concurrent Program Executable

    Define the concurrent program that user submit as a concurrent request

  • 8/3/2019 Concurrent Concepts

    21/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define your Concurrent Programscontd

    Users select the program when submitting a request

    Applications pass the short name to the concurrent manager

    Applications can determine which oracle ID to use

    Disabling the program removes it from user access

    Identify the Program

    Executable

    Specify the name of the concurrent program executable you

    defined

    Provide options as necessary (oracle reports can specify binary

    mode ,page size and page orientation)

    Customize your queues with program level priority

  • 8/3/2019 Concurrent Concepts

    22/31

  • 8/3/2019 Concurrent Concepts

    23/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define Your Concurrent Programs contd

    Use the Concurrent Program Parameter window to enter detailed

    information about your parameters

    Parameter Information Sets up Submit Request Parameter Window

    Only Standard Request Submission programs use parameter windows

    Define a value set for each argument

  • 8/3/2019 Concurrent Concepts

    24/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define your Concurrent Programscontd

    Sequence:Choose the sequence numbers that specify the order

    in which your program receives parameter values from theconcurrent manager

    Disabled parameters do not display at request submission time

    and are not passed to your execution file

    Field Help

    Validation

    Value Set:Enter the name of the value set you want yourparameter to use for validation.you can only select from

    independent,table,and non-validated value sets with 240

    characters or less

    Default Type:If you want to set a default value for this

    parameter, identify the type of value you need

    Default Value:You can enter a default value for the parameterbased on your default type

  • 8/3/2019 Concurrent Concepts

    25/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define your Concurrent Programscontd

    Validation

    Required:If the program executable file requires an

    argument,you should require it for your concurrent program

    Range:Choose either low or high if you want to validate your

    parameter value against the value of another parameter in this

    structure

    Display Characteristics

    Display Size:Enter the field length in characters for this

    parameter.The users sees and fills in the field in the parameters

    window of the submit request window

    Prompt:A user sees the prompt instead of the parameter name

    Token:For a parameter in an Oracle Reports program,the

    keyword or parameter appears here.The value is case sensitive

  • 8/3/2019 Concurrent Concepts

    26/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define Your Concurrent Programs contd

    Use the Incompatible Programs window

    Use with Logical Databases

    List the concurrent programs that interfere with your program

  • 8/3/2019 Concurrent Concepts

    27/31

    A

    O

    L

    T

    R

    A

    I

    N

    IN

    G

    Define your Concurrent Programscontd

    Field Help

    Application:Although the default for this field is the applicationof your concurrent program,you can enter any valid application

    name

    Name:Your list displays the user-friendly name of the

    program,the short name,and the description of the program

    Scope:Enter set or program only to specify whether your

    concurrent program is incompatible with this program and all its

    child requests(set) or only with this program(program only)

  • 8/3/2019 Concurrent Concepts

    28/31

    A

    O

    L

    T

    RA

    I

    N

    IN

    G

    Submit Your Concurrent Program

    Use FND_REQUEST.SUBMIT_REQUEST(Client or Server)

    Any PL/SQL procedure you develop-whether it runs on the client or

    on the server as a stored procedure or a database trigger-can submit a

    concurrent request to run a concurrent program

    Function FND_REQUEST.SUBMIT REQUEST(

    application IN varchar2 default NULL,

    program IN varchar2 default NULL,

    description IN varchar2 default NULL,

    start_time IN varchar2 default NULL,sub_request IN boolean default False,

    argument1,

    argument2,

    .

    .

    argument100)return number;

    Submit your program either through SRS,from a form,or from a procedure

  • 8/3/2019 Concurrent Concepts

    29/31

    A

    O

    L

    T

    RA

    I

    N

    IN

    G

    Submit Your Concurrent Programcontd

    Use FND_REQUEST.SUBMIT_REQUEST(Client or Server)

    The function returns the concurrent request ID,or 0 if it fails tosubmit your request

    Set options before calling

    FND_REQUEST.SUBMIT_REQUEST

    -FND_REQUEST.SET_OPTIONS(Client or Server)

    -FND_REQUEST.SET_REPEAT_OPTIONS(Client or Server)

    -FND_REQUEST.SET_PRINT_OPTIONS(Client or Server)

    Submit your program either through SRS,from a form,or from a procedure

  • 8/3/2019 Concurrent Concepts

    30/31

    A

    O

    L

    T

    RA

    I

    N

    IN

    G

    Submit Your Concurrent Programs contd

    Include your concurrent program in a request group to make it

    available on the submit request window

    Add your program to a request group

    Your type is program

    Identify the name and application of your concurrent program

  • 8/3/2019 Concurrent Concepts

    31/31

    A

    O

    L

    T

    RA

    I

    N

    IN

    GEnd