Oracle Aplication Developers Guide

Embed Size (px)

Citation preview

  • 8/14/2019 Oracle Aplication Developers Guide

    1/617

    Oracle Applications

    Developer's Guide

    Release 12

    Part No. B31458-03

    December 2007

  • 8/14/2019 Oracle Aplication Developers Guide

    2/617

    Oracle Applications Developer's Guide, Release 12

    Part No. B31458-03

    Copyright 1995, 2007, Oracle. All rights reserved.

    Primary Author: Sara Woodhull, Mildred Wang

    Contributing Author: Eric Bing, Anne Carlson, Steven Carter, Robert Farrington, Mark Fisher, Paul

    Ferguson, Cliff Godwin, Taka Kamiya, Bob Lash, Michael Mast, Tom Morrow, Robert Nix, Emily Nordhagen,

    Lisa Nordhagen, Gursat Olgun, Jan Smith, Dana Spradley, Susan Stratton, Leslie Studdard, Martin Taylor,Venkata Vengala, Peter Wallack, Aaron Weisberg, Maxine Zasowski

    The Programs (which include both the software and documentation) contain proprietary information; they

    are provided under a license agreement containing restrictions on use and disclosure and are also protected

    by copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly, or

    decompilation of the Programs, except to the extent required to obtain interoperability with other

    independently created software or as specified by law, is prohibited.

    The information contained in this document is subject to change without notice. If you find any problems in

    the documentation, please report them to us in writing. This document is not warranted to be error-free.

    Except as may be expressly permitted in your license agreement for these Programs, no part of these

    Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any

    purpose.

    If the Programs are delivered to the United States Government or anyone licensing or using the Programs onbehalf of the United States Government, the following notice is applicable:

    U.S. GOVERNMENT RIGHTS

    Programs, software, databases, and related documentation and technical data delivered to U.S. Government

    customers are "commercial computer software" or "commercial technical data" pursuant to the applicable

    Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication,

    disclosure, modification, and adaptation of the Programs, including documentation and technical data, shall

    be subject to the licensing restrictions set forth in the applicable Oracle license agreement, and, to the extent

    applicable, the additional rights set forth in FAR 52.227-19, Commercial Computer Software--Restricted

    Rights (June 1987). Oracle Corporation, 500 Oracle Parkway, Redwood City, CA 94065.

    The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently

    dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup,

    redundancy and other measures to ensure the safe use of such applications if the Programs are used for such

    purposes, and we disclaim liability for any damages caused by such use of the Programs.

    The Programs may provide links to Web sites and access to content, products, and services from third parties.

    Oracle is not responsible for the availability of, or any content provided on, third-party Web sites. You bear all

    risks associated with the use of such content. If you choose to purchase any products or services from a third

    party, the relationship is directly between you and the third party. Oracle is not responsible for: (a) the quality

    of third-party products or services; or (b) fulfilling any of the terms of the agreement with the third party,

    including delivery of products or services and warranty obligations related to purchased products or services.

    Oracle is not responsible for any loss or damage of any sort that you may incur from dealing with any third

    party.

    Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks

    of their respective owners.

  • 8/14/2019 Oracle Aplication Developers Guide

    3/617

    iii

    Contents

    Send Us Your Comments

    Preface

    1 Overview of Coding Standards

    Overview of Coding Standards.................................................................................................1-1

    The Standard Development Environment................................................................................1-5

    Overview of Building an Application.................................................................................... 1-11

    2 Setting Up Your Application Framework

    Overview of Setting Up Your Application Framework........................................................... 2-1

    3 Building Database Objects

    Overview of Building Your Database Objects......................................................................... 3-1

    Table Registration API..............................................................................................................3-9

    4 Using PL/SQL in Oracle Applications

    Overview of Using PL/SQL in Applications............................................................................ 4-1

    Replacements for Oracle Forms Built-ins...............................................................................4-10

    Coding Item, Event and Table Handlers................................................................................ 4-13

    5 Setting the Properties of Container Objects

    Setting the Properties of Container Objects............................................................................. 5-1

    Modules..................................................................................................................................... 5-1

    Windows....................................................................................................................................5-2

  • 8/14/2019 Oracle Aplication Developers Guide

    4/617

    iv

    Canvases ................................................................................................................................... 5-5

    Blocks.........................................................................................................................................5-6

    Regions ................................................................................................................................... 5-13

    6 Setting the Properties of Widget Objects

    Setting the Properties of Widget Objects................................................................................. 6-1

    Text Items.................................................................................................................................. 6-1

    Date Fields........................................................................................................................... 6-2

    Display Items ............................................................................................................................ 6-3

    Poplists ......................................................................................................................................6-4

    Option Groups ..........................................................................................................................6-5

    Check Boxes .............................................................................................................................. 6-5

    Buttons ...................................................................................................................................... 6-5

    Lists of Values (LOVs) ............................................................................................................. 6-7

    LOV Behaviors..................................................................................................................... 6-8LOVs in ENTER-QUERY Mode......................................................................................... 6-10

    Alerts ....................................................................................................................................... 6-10

    Editors ..................................................................................................................................... 6-11

    Flexfields .................................................................................................................................6-11

    Setting Item Properties............................................................................................................6-11

    Using APP_ITEM_PROPERTY.SET_PROPERTY.............................................................. 6-11

    Item Properties with Unique Oracle Applications Behavior..............................................6-12

    Impact of Item-level and Item-instance-level Settings ...................................................... 6-16

    Setting Properties at Design Time......................................................................................6-16

    Setting Visual Attributes Programmatically...................................................................... 6-16

    7 Controlling Window, Block, and Region Behavior

    Controlling Window Behavior..................................................................................................7-1

    Positioning Windows Upon Opening...................................................................................... 7-1

    Closing Windows...................................................................................................................... 7-2

    Setting Window Titles Dynamically........................................................................................ 7-4

    Controlling Block Behavior...................................................................................................... 7-4

    Coding Master-Detail Relations............................................................................................... 7-4

    Coordination Between Windows.............................................................................................. 7-5

    Implementing a Combination Block........................................................................................ 7-6

    Coding Tabbed Regions............................................................................................................7-9

    Definitions........................................................................................................................... 7-9

    Tabbed Region Behavior......................................................................................................7-9

    Three Degrees of Coding Difficulty................................................................................... 7-10

    Implementing Tabbed Regions.............................................................................................. 7-11

  • 8/14/2019 Oracle Aplication Developers Guide

    5/617

    v

    Creating the Layout in Forms Developer................................................................................7-12

    Coding Your Tab Handler....................................................................................................... 7-13

    Tab Handler Logic................................................................................................................... 7-14

    WHEN-TAB-PAGE-CHANGED Logic................................................................................... 7-14

    WHEN-NEW-ITEM-INSTANCE Logic.................................................................................. 7-18

    Handling Dynamic Tabs......................................................................................................... 7-19

    Other Code You May Need..................................................................................................... 7-20

    Coding Alternative Region Behavior......................................................................................7-21

    Alternative Regions........................................................................................................... 7-21

    Example: Coding an Alternative Region............................................................................7-22

    Controlling Records in a Window.......................................................................................... 7-25

    Duplicating Records.......................................................................................................... 7-25

    Renumbering All Records in a Window............................................................................ 7-26

    Passing Instructions to a Form................................................................................................ 7-27

    8 Enabling Query Behavior

    Overview of Query Find........................................................................................................... 8-1

    Raising Query Find on Form Startup .................................................................................. 8-1

    Implementing Row-LOV.......................................................................................................... 8-1

    Implementing Find Windows.............................................................................................. 8-3

    9 Coding Item Behavior

    Item Relations............................................................................................................................9-1

    Dependent Items.................................................................................................................. 9-2

    Conditionally Dependent Item............................................................................................ 9-4

    Multiple Dependent Items................................................................................................... 9-5

    Two Master Items and One Dependent Item.......................................................................9-6

    Cascading Dependence........................................................................................................ 9-7

    Mutually Exclusive Items.....................................................................................................9-9

    Mutually Inclusive Items................................................................................................... 9-10

    Mutually Inclusive Items with Dependent Items...............................................................9-11

    Conditionally Mandatory Items.........................................................................................9-12

    Defaults................................................................................................................................... 9-14

    Integrity Checking...................................................................................................................9-14

    Uniqueness Check..............................................................................................................9-14

    Referential Integrity Check................................................................................................ 9-15

    The Calendar .......................................................................................................................... 9-18

    Advanced Calendar Options............................................................................................. 9-19

    Calendar Examples............................................................................................................ 9-20

    CALENDAR: Calendar Package............................................................................................. 9-21

  • 8/14/2019 Oracle Aplication Developers Guide

    6/617

    vi

    10 Controlling the Toolbar and the Default Menu

    Pulldown Menus and the Toolbar.......................................................................................... 10-1

    Menu and Toolbar Entries................................................................................................. 10-1

    Save and Proceed............................................................................................................... 10-6

    Synchronizing.................................................................................................................... 10-7

    Application-Specific Entries: Special Menus......................................................................10-7

    Customizing Right-Mouse Menus (Popup Menus)........................................................... 10-8

    APP_POPUP: Right-Mouse Menu Control...........................................................................10-10

    APP_POPUP.INSTANTIATE.......................................................................................... 10-10

    APP_SPECIAL: Menu and Toolbar Control......................................................................... 10-11

    APP_SPECIAL.INSTANTIATE........................................................................................10-11

    APP_SPECIAL.ENABLE..................................................................................................10-13

    APP_SPECIAL.GET_CHECKBOX................................................................................... 10-14

    APP_SPECIAL.SET_CHECKBOX.................................................................................... 10-15

    11 Menus and Function Security

    Overview of Menus and Function Security............................................................................11-1

    Terms ................................................................................................................................ 11-2

    Forms and Subfunctions ................................................................................................... 11-3

    How Function Security Works ..........................................................................................11-4

    Using Form Functions........................................................................................................11-5

    Function Security Standards................................................................................................... 11-7

    General Function and Menu Standards............................................................................. 11-7

    Form Function Standards...................................................................................................11-8

    Subfunction Standards....................................................................................................... 11-9

    Function Security Reports.....................................................................................................11-10

    Function Security APIs for PL/SQL Procedures................................................................... 11-11

    FND_FUNCTION.TEST...................................................................................................11-11

    FND_FUNCTION.QUERY.............................................................................................. 11-12

    FND_FUNCTION.EXECUTE...........................................................................................11-13

    FND_FUNCTION.USER_FUNCTION_NAME............................................................... 11-15

    FND_FUNCTION.CURRENT_FORM_FUNCTION........................................................11-16

    Forms Window ..................................................................................................................... 11-16

    Forms Block..................................................................................................................... 11-16

    12 Message Dictionary

    Overview of Message Dictionary............................................................................................12-1

    Major Features .................................................................................................................. 12-1

    Definitions .........................................................................................................................12-2

  • 8/14/2019 Oracle Aplication Developers Guide

    7/617

    vii

    Implementing Message Dictionary........................................................................................ 12-3

    Create Your Message Directories....................................................................................... 12-3

    Define Your Messages .......................................................................................................12-3

    Create Your Message Files................................................................................................. 12-4

    Code Logic to Set Up Messages......................................................................................... 12-5

    Code Logic to Display Messages........................................................................................12-6

    Message Dictionary APIs for PL/SQL Procedures..................................................................12-8

    FND_MESSAGE.CLEAR................................................................................................... 12-8

    FND_MESSAGE.DEBUG...................................................................................................12-8

    FND_MESSAGE.ERASE.................................................................................................... 12-9

    FND_MESSAGE.ERROR................................................................................................... 12-9

    FND_MESSAGE.GET...................................................................................................... 12-10

    FND_MESSAGE.HINT.................................................................................................... 12-11

    FND_MESSAGE.QUESTION...........................................................................................12-11

    FND_MESSAGE.RETRIEVE............................................................................................ 12-13

    FND_MESSAGE.SET_NAME.......................................................................................... 12-13

    FND_MESSAGE.SET_STRING........................................................................................ 12-14

    FND_MESSAGE.SET_TOKEN.........................................................................................12-15

    FND_MESSAGE.SHOW.................................................................................................. 12-16

    FND_MESSAGE.WARN..................................................................................................12-17

    Application Message Standards ...........................................................................................12-18

    Definitions .......................................................................................................................12-18

    Message Naming Standards............................................................................................ 12-19

    Message Numbering Standards....................................................................................... 12-20

    Message Type Standards................................................................................................. 12-22

    Message Description Standards....................................................................................... 12-24

    Message Content Standards..................................................................................................12-25

    Message Token Standards................................................................................................12-25

    A Few General Guidelines for Writing Good Messages.................................................. 12-28

    When the User Needs to Get Help................................................................................... 12-29

    Complex Messages...........................................................................................................12-31

    Specific Types of Message Content.................................................................................. 12-31

    Message Writing Style..................................................................................................... 12-33

    Special Purpose Messages................................................................................................12-42

    Messages Window................................................................................................................. 12-44

    13 User Profiles

    Overview of User Profiles ...................................................................................................... 13-1

    Definitions .........................................................................................................................13-1

    Defining New User Profile Options .................................................................................. 13-2

  • 8/14/2019 Oracle Aplication Developers Guide

    8/617

    viii

    Setting User Profile Option Values ................................................................................... 13-2

    Setting Your Personal User Profile .................................................................................... 13-3

    Implementing User Profiles ................................................................................................... 13-3

    Predefined User Profile Options ....................................................................................... 13-4

    FND_PROFILE: User Profile APIs ......................................................................................... 13-5

    FND_PROFILE.PUT.......................................................................................................... 13-6

    FND_PROFILE.GET...........................................................................................................13-6

    FND_PROFILE.VALUE..................................................................................................... 13-7

    User Profile C Functions ........................................................................................................ 13-7

    afpoget............................................................................................................................... 13-7

    afpoput...............................................................................................................................13-8

    Profiles Window......................................................................................................................13-8

    14 Flexfields

    Overview of Flexfields ........................................................................................................... 14-1Definitions .........................................................................................................................14-3

    Building a Flexfield into Your Application ....................................................................... 14-6

    Flexfields and Application Upgrades ................................................................................14-7

    Implementing Key Flexfields .................................................................................................14-8

    Defining Key Flexfield Database Columns ....................................................................... 14-9

    Registering Your Key Flexfield Table.............................................................................. 14-12

    Registering Your Key Flexfield ....................................................................................... 14-12

    Add Your Flexfield to Your Forms.................................................................................. 14-13

    Implementing Descriptive Flexfields .................................................................................. 14-13

    Planning for Reference Fields.......................................................................................... 14-13Defining Descriptive Flexfield Database Columns ......................................................... 14-14

    Adding a Descriptive Flexfield to a Table with Existing Data ........................................ 14-15

    Protected Descriptive Flexfields.......................................................................................14-15

    Registering Your Descriptive Flexfield Table ..................................................................14-16

    Registering Your Descriptive Flexfield ........................................................................... 14-16

    Add Your Flexfield to Your Forms.................................................................................. 14-16

    Adding Flexfields to Your Forms..........................................................................................14-16

    Create Your Hidden Fields.............................................................................................. 14-17

    Create Your Displayed Fields.......................................................................................... 14-18

    Create Your Flexfield Definition...................................................................................... 14-19Invoke Your Flexfield Definition from Several Event Triggers........................................14-19

    Flexfield Definition Procedures............................................................................................14-20

    Key Flexfield Definition Syntax....................................................................................... 14-21

    Range (Type) Flexfield Definition Syntax........................................................................ 14-23

    Descriptive Flexfield Definition Syntax........................................................................... 14-24

  • 8/14/2019 Oracle Aplication Developers Guide

    9/617

    ix

    Flexfield Definition Arguments....................................................................................... 14-25

    Flexfield Definition Examples..........................................................................................14-42

    Updating Flexfield Definitions.........................................................................................14-44

    Update Key Flexfield Definition Syntax...........................................................................14-45

    Update Range (Type) Flexfield Definition Syntax........................................................... 14-47

    Update Descriptive Flexfield Definition Syntax...............................................................14-48

    Updating Flexfield Definition Example........................................................................... 14-49

    Using Key Flexfields in Find Windows............................................................................14-49

    Using Range Flexfields in Query Find Windows.............................................................14-51

    Troubleshooting Flexfields................................................................................................... 14-52

    Register Key Flexfields .........................................................................................................14-54

    Register Key Flexfields Block...........................................................................................14-55

    Qualifiers Window...........................................................................................................14-56

    Columns Window ........................................................................................................... 14-58

    Register Descriptive Flexfields ............................................................................................ 14-59

    Register Descriptive Flexfields Block............................................................................... 14-59

    Reference Fields Window................................................................................................ 14-62

    Columns Window ........................................................................................................... 14-64

    15 Overview of Concurrent Processing

    Overview of Concurrent Processing ...................................................................................... 15-1

    Basic Application Development Needs .............................................................................15-1

    Major Features .................................................................................................................. 15-2

    Definitions .........................................................................................................................15-3

    Overview of Designing Concurrent Programs ...................................................................... 15-6Submitting Concurrent Programs on the Client.............................................................. 15-11

    Using Concurrent Processing ..........................................................................................15-12

    Automated Recovery for Concurrent Processing ............................................................15-13

    Overview of Implementing Concurrent Processing ............................................................15-15

    Choosing Your Implementation ......................................................................................15-15

    16 Defining Concurrent Programs

    Defining Concurrent Programs...............................................................................................16-1

    Concurrent Program Libraries Window ................................................................................ 16-4

    17 Coding Oracle Tools Concurrent Programs

    Oracle Tool Concurrent Programs.......................................................................................... 17-1

    SQL*PLUS Programs......................................................................................................... 17-1

    PL/SQL Stored Procedures.................................................................................................17-2

    SQL*Loader........................................................................................................................17-3

  • 8/14/2019 Oracle Aplication Developers Guide

    10/617

    x

    Accepting Input Parameters For Oracle Tool Programs ................................................... 17-3

    Naming Your Oracle Tool Concurrent Program ............................................................... 17-4

    18 Coding Oracle Reports Concurrent Programs

    Oracle Reports ........................................................................................................................ 18-1

    Concurrent Processing with Oracle Reports...................................................................... 18-1

    Oracle Reports Parameters.................................................................................................18-3

    Accessing User Exits and Profile Options.......................................................................... 18-3

    User Exits Used in Oracle Reports.......................................................................................... 18-5

    FND SRWINIT / FND SRWEXIT....................................................................................... 18-5

    FND FLEXIDVAL / FND FLEXSQL...................................................................................18-5

    Using Dynamic Currency in Oracle Reports.......................................................................... 18-5

    FND FORMAT_CURRENCY User Exit............................................................................. 18-6

    Example Report Using FND FORMAT_CURRENCY.......................................................... 18-10

    Sample Report Output..................................................................................................... 18-10Procedure for Sample Report...........................................................................................18-11

    Oracle Reports Troubleshooting...........................................................................................18-14

    Frequently Asked Questions............................................................................................18-15

    19 Coding C and Pro*C Concurrent Programs

    Coding C and Pro*C Concurrent Programs............................................................................ 19-1

    Pro*C Concurrent Programs ............................................................................................. 19-1

    Header Files Used With Concurrent Programs..................................................................19-7

    Concurrent Processing Pro*C Utility Routines ......................................................................19-7

    20 PL/SQL APIs for Concurrent Processing

    Overview................................................................................................................................. 20-1

    FND_CONC_GLOBAL Package............................................................................................. 20-1

    FND_CONC_GLOBAL.REQUEST_DATA........................................................................ 20-1

    FND_CONC_GLOBAL.SET_REQ_GLOBALS...................................................................20-2

    Example............................................................................................................................. 20-3

    FND_CONCURRENT Package............................................................................................... 20-4

    FND_CONCURRENT.AF_COMMIT.................................................................................20-4

    FND_CONCURRENT.AF_ROLLBACK............................................................................ 20-4

    FND_CONCURRENT.GET_REQUEST_STATUS (Client or Server)................................. 20-5

    FND_CONCURRENT.WAIT_FOR_REQUEST (Client or Server)..................................... 20-8

    FND_CONCURRENT.SET_COMPLETION_STATUS (Server).........................................20-8

    FND_FILE: PL/SQL File I/O.................................................................................................... 20-9

    FND_FILE.PUT.................................................................................................................. 20-9

    FND_FILE.PUT_LINE..................................................................................................... 20-10

  • 8/14/2019 Oracle Aplication Developers Guide

    11/617

    xi

    FND_FILE.NEW_LINE....................................................................................................20-10

    FND_FILE.PUT_NAMES.................................................................................................20-11

    FND_FILE.CLOSE........................................................................................................... 20-11

    Error Handling.................................................................................................................20-12

    FND_PROGRAM: Concurrent Program Loaders................................................................. 20-12

    FND_PROGRAM.MESSAGE...........................................................................................20-13

    FND_PROGRAM.EXECUTABLE.................................................................................... 20-13

    FND_PROGRAM.DELETE_EXECUTABLE.....................................................................20-14

    FND_PROGRAM.REGISTER...........................................................................................20-15

    FND_PROGRAM.DELETE_PROGRAM..........................................................................20-17

    FND_PROGRAM.PARAMETER..................................................................................... 20-17

    FND_PROGRAM.DELETE_PARAMETER......................................................................20-19

    FND_PROGRAM.INCOMPATIBILITY........................................................................... 20-19

    FND_PROGRAM.DELETE_INCOMPATIBILITY............................................................20-20

    FND_PROGRAM.REQUEST_GROUP.............................................................................20-20

    FND_PROGRAM.DELETE_GROUP............................................................................... 20-21

    FND_PROGRAM.ADD_TO_GROUP.............................................................................. 20-21

    FND_PROGRAM.REMOVE_FROM_GROUP................................................................. 20-21

    FND_PROGRAM.PROGRAM_EXISTS............................................................................20-22

    FND_PROGRAM.PARAMETER_EXISTS........................................................................20-22

    FND_PROGRAM.INCOMPATIBILITY_EXISTS..............................................................20-23

    FND_PROGRAM.EXECUTABLE_EXISTS.......................................................................20-23

    FND_PROGRAM.REQUEST_GROUP_EXISTS............................................................... 20-23

    FND_PROGRAM.PROGRAM_IN_GROUP.................................................................... 20-24

    FND_PROGRAM.ENABLE_PROGRAM.........................................................................20-24

    FND_REQUEST Package...................................................................................................... 20-25

    FND_REQUEST.SET_OPTIONS (Client or Server)..........................................................20-25

    FND_REQUEST.SET_REPEAT_OPTIONS (Client or Server)..........................................20-26

    FND_REQUEST.SET_PRINT_OPTIONS (Client or Server).............................................20-27

    FND_REQUEST.SUBMIT_REQUEST (Client or Server)..................................................20-28

    FND_REQUEST.SET_MODE (Server)............................................................................. 20-29

    Example Request Submissions.........................................................................................20-30

    FND_REQUEST_INFO and Multiple Language Support (MLS)........................................ 20-32

    FND_REQUEST_INFO.GET_PARAM_NUMBER...........................................................20-32

    FND_REQUEST_INFO.GET_PARAM_INFO.................................................................. 20-33FND_REQUEST_INFO.GET_PROGRAM........................................................................20-33

    FND_REQUEST_INFO.GET_PARAMETER....................................................................20-33

    Example MLS Function....................................................................................................20-34

    FND_SET: Request Set Loaders............................................................................................20-35

    FND_SET.MESSAGE....................................................................................................... 20-36

    FND_SET.CREATE_SET.................................................................................................. 20-36

  • 8/14/2019 Oracle Aplication Developers Guide

    12/617

    xii

    FND_SET.DELETE_SET...................................................................................................20-37

    FND_SET.ADD_PROGRAM........................................................................................... 20-37

    FND_SET.REMOVE_PROGRAM.................................................................................... 20-38

    FND_SET.PROGRAM_PARAMETER............................................................................. 20-39

    FND_SET.DELETE_PROGRAM_PARAMETER..............................................................20-40

    FND_SET.ADD_STAGE.................................................................................................. 20-41

    FND_SET.REMOVE_STAGE........................................................................................... 20-42

    FND_SET.LINK_STAGES................................................................................................ 20-42

    FND_SET.INCOMPATIBILITY........................................................................................20-43

    FND_SET.DELETE_INCOMPATIBILITY........................................................................20-44

    FND_SET.ADD_SET_TO_GROUP.................................................................................. 20-45

    FND_SET.REMOVE_SET_FROM_GROUP..................................................................... 20-45

    FND_SUBMIT: Request Set Submission............................................................................. 20-45

    FND_SUBMIT.SET_MODE..............................................................................................20-46

    FND_SUBMIT.SET_REL_CLASS_OPTIONS................................................................... 20-46

    FND_SUBMIT.SET_REPEAT_OPTIONS......................................................................... 20-47

    FND_SUBMIT_SET.REQUEST_SET................................................................................ 20-47

    FND_SUBMIT.SET_PRINT_OPTIONS............................................................................ 20-48

    FND_SUBMIT.ADD_PRINTER....................................................................................... 20-48

    FND_SUBMIT.ADD_NOTIFICATION............................................................................20-49

    FND_SUBMIT.SET_NLS_OPTIONS................................................................................20-49

    FND_SUBMIT.SUBMIT_PROGRAM...............................................................................20-49

    FND_SUBMIT.SUBMIT_SET........................................................................................... 20-50

    Examples of Request Set Submission...............................................................................20-51

    21 Standard Request Submission

    Overview of Standard Request Submission ..........................................................................21-1

    Basic Application Development Needs .............................................................................21-1

    Major Features .................................................................................................................. 21-2

    Definitions .........................................................................................................................21-4

    Controlling Access to Your Reports and Programs ...........................................................21-5

    Implementing Standard Request Submission ...................................................................... 21-5

    Developing Reports for Standard Request Submission .................................................... 21-5

    Defining Parameter Validation ......................................................................................... 21-6

    Defining Your Report or Other Program .......................................................................... 21-7Cross-application Reporting ............................................................................................. 21-8

    22 Request Sets

    Overview of Request Sets....................................................................................................... 22-1

    Stage Functions.................................................................................................................. 22-1

  • 8/14/2019 Oracle Aplication Developers Guide

    13/617

    xiii

    23 The Template Form

    Overview of the TEMPLATE Form.........................................................................................23-1

    Libraries in the TEMPLATE Form.......................................................................................... 23-2

    Special Triggers in the TEMPLATE form...............................................................................23-4

    Triggers That Often Require Some Modification............................................................... 23-6

    Triggers That Cannot Be Modified.....................................................................................23-9

    24 Attachments

    Overview of Attachments....................................................................................................... 24-1

    Definitions......................................................................................................................... 24-1

    How Attachments Work.................................................................................................... 24-3

    Attachments for Forms or Form Functions........................................................................ 24-5

    Attachments and Reports...................................................................................................24-6

    Planning and Defining the Attachments Feature...................................................................24-6Planning to Add the Attachments Feature to Your Application........................................24-6

    Setting Up the Attachments Feature for Your Form.......................................................... 24-7

    Document Entities Window ................................................................................................... 24-8

    Document Entities Block....................................................................................................24-9

    Document Categories Window ............................................................................................ 24-10

    Document Categories Block............................................................................................. 24-10

    Category Assignments Window...................................................................................... 24-11

    Attachment Functions Window ........................................................................................... 24-12

    Attachment Functions Block............................................................................................ 24-13

    Categories Window......................................................................................................... 24-14

    Block Declaration Window ............................................................................................. 24-15

    Entity Declaration Window............................................................................................. 24-17

    25 Handling Dates

    Overview................................................................................................................................. 25-1

    Year 2000 Compliance in Oracle Applications ...................................................................... 25-1

    Dates in Oracle Applications.................................................................................................. 25-2

    Date Coding Standards........................................................................................................... 25-5

    Using Dates While Developing Application Forms........................................................... 25-6

    Troubleshooting...................................................................................................................... 25-8

    Use the DATECHECK Script to Identify Issues................................................................. 25-8

    Problems Observed During Testing...................................................................................25-9

    Date Checklist.................................................................................................................... 25-9

  • 8/14/2019 Oracle Aplication Developers Guide

    14/617

    xiv

    26 Customization Standards

    Overview of Customizing Oracle Applications..................................................................... 26-1

    Basic Business Needs ........................................................................................................ 26-2

    Definitions .........................................................................................................................26-2

    Determining Your Needs .................................................................................................. 26-4

    Customization By Extension .................................................................................................. 26-5

    Defining Your Custom Application .................................................................................. 26-6

    Adding a Form .................................................................................................................. 26-7

    Adding a Report or Concurrent Program ......................................................................... 26-7

    Adding a New Report Submission Form .......................................................................... 26-8

    Adding Online Help.......................................................................................................... 26-8

    Adding Menus .................................................................................................................. 26-8

    Adding Responsibilities .................................................................................................... 26-8

    Adding Message Dictionary Messages ............................................................................. 26-9Customization By Modification ............................................................................................. 26-9

    Modifying an Existing Form ........................................................................................... 26-10

    Modifying an Existing Report .........................................................................................26-12

    Modifying an Existing C Program .................................................................................. 26-14

    Modifying an Existing PL/SQL Stored Procedure ...........................................................26-15

    Modifying Existing Online Help......................................................................................26-15

    Modifying Existing Message Dictionary Messages .........................................................26-15

    Modifying Existing Menus and Responsibilities .............................................................26-15

    Oracle Applications Database Customization .....................................................................26-16

    Oracle Applications Upgrades and Patches..........................................................................26-18Building Online Help for Custom Applications ................................................................. 26-19

    How the Help System Works ..........................................................................................26-20

    Prepare Your Forms......................................................................................................... 26-20

    Create HTML Help Files.................................................................................................. 26-20

    Create a Help Navigation Tree........................................................................................ 26-21

    Upgrades and Patches......................................................................................................26-21

    Integrating Custom Objects and Schemas............................................................................26-22

    Upgrading Custom Forms..................................................................................................... 26-23

    27 Using the Custom Library

    Customizing Oracle Applications with the CUSTOM Library............................................. 27-1

    Writing Code for the CUSTOM Library.............................................................................27-1

    Events Passed to the CUSTOM Library............................................................................. 27-4

    When to Use the CUSTOM Library................................................................................... 27-5

    Coding Zoom..................................................................................................................... 27-5

  • 8/14/2019 Oracle Aplication Developers Guide

    15/617

    xv

    Coding Generic Form Events............................................................................................. 27-8

    Coding Product-Specific Events.......................................................................................27-10

    Support and Upgrading...................................................................................................27-10

    Product-Specific Events in Oracle Application Object Library........................................... 27-11

    WHEN-LOGON-CHANGED Event................................................................................ 27-11

    WHEN-RESPONSIBILITY-CHANGED Event.................................................................27-11

    CUSTOM Package................................................................................................................. 27-12

    CUSTOM.ZOOM_AVAILABLE...................................................................................... 27-12

    CUSTOM.STYLE..............................................................................................................27-13

    CUSTOM.EVENT............................................................................................................ 27-14

    Example of Implementing Zoom Using the CUSTOM Library...........................................27-15

    Modify the Form.............................................................................................................. 27-16

    Modify the CUSTOM Library.......................................................................................... 27-17

    28 APPCORE Routine APIs

    Introduction to APPCORE Routine APIs............................................................................... 28-1

    APP_COMBO: Combination Block API.................................................................................28-2

    APP_COMBO.KEY_PREV_ITEM...................................................................................... 28-2

    APP_DATE and FND_DATE: Date Conversion APIs ...........................................................28-2

    List of Date Terms..............................................................................................................28-2

    APP_DATE.CANONICAL_TO_DATE and FND_DATE.CANONICAL_TO_DATE........28-3

    APP_DATE.DISPLAYDATE_TO_DATE and FND_DATE.DISPLAYDATE_TO_DATE........................................................................................................................................... 28-4

    APP_DATE.DISPLAYDT_TO_DATE and FND_DATE.DISPLAYDT_TO_DATE.............28-4

    APP_DATE.DATE_TO_CANONICAL and FND_DATE.DATE_TO_CANONICAL........28-5

    APP_DATE.DATE_TO_DISPLAYDATE and FND_DATE.DATE_TO_DISPLAYDATE........................................................................................................................................... 28-5

    APP_DATE.DATE_TO_DISPLAYDT and FND_DATE.DATE_TO_DISPLAYDT.............28-6

    APP_DATE.DATE_TO_FIELD.......................................................................................... 28-6

    APP_DATE.FIELD_TO_DATE.......................................................................................... 28-8

    APP_DATE.VALIDATE_CHARDATE.............................................................................. 28-9

    APP_DATE.VALIDATE_CHARDT................................................................................... 28-9

    FND_DATE.STRING_TO_DATE.......................................................................................28-9

    FND_DATE.STRING_TO_CANONICAL........................................................................28-10

    APP_EXCEPTION: Exception Processing APIs....................................................................28-11

    APP_EXCEPTION.RAISE_EXCEPTION......................................................................... 28-11

    APP_EXCEPTION.RETRIEVE......................................................................................... 28-11

    APP_EXCEPTION.GET_TYPE.........................................................................................28-11

    APP_EXCEPTION.GET_CODE....................................................................................... 28-12

    APP_EXCEPTION.GET_TEXT.........................................................................................28-12

    APP_EXCEPTION.RECORD_LOCK_EXCEPTION.........................................................28-12

  • 8/14/2019 Oracle Aplication Developers Guide

    16/617

    xvi

    APP_EXCEPTION.RECORD_LOCK_ERROR................................................................. 28-12

    APP_EXCEPTION.DISABLED........................................................................................ 28-13

    APP_FIELD: Item Relationship Utilities ............................................................................. 28-13

    APP_FIELD.CLEAR_FIELDS...........................................................................................28-13

    APP_FIELD.CLEAR_DEPENDENT_FIELDS.................................................................. 28-13

    APP_FIELD.SET_DEPENDENT_FIELD.......................................................................... 28-14

    APP_FIELD.SET_EXCLUSIVE_FIELD.............................................................................28-15

    APP_FIELD.SET_INCLUSIVE_FIELD............................................................................. 28-16

    APP_FIELD.SET_REQUIRED_FIELD..............................................................................28-16

    APP_FIND: Query-Find Utilities.......................................................................................... 28-17

    APP_FIND.NEW..............................................................................................................28-17

    APP_FIND.CLEAR.......................................................................................................... 28-18

    APP_FIND.CLEAR_DETAIL...........................................................................................28-18

    APP_FIND.FIND............................................................................................................. 28-18

    APP_FIND.QUERY_RANGE...........................................................................................28-18

    APP_FIND.QUERY_FIND............................................................................................... 28-19

    APP_ITEM: Individual Item Utilities................................................................................... 28-19

    APP_ITEM.COPY_DATE.................................................................................................28-19

    APP_ITEM.IS_VALID......................................................................................................28-20

    APP_ITEM.SIZE_WIDGET.............................................................................................. 28-20

    APP_ITEM_PROPERTY: Property Utilities......................................................................... 28-20

    APP_ITEM_PROPERTY.GET_PROPERTY......................................................................28-21

    APP_ITEM_PROPERTY.SET_PROPERTY.......................................................................28-21

    APP_ITEM_PROPERTY.SET_VISUAL_ATTRIBUTE ..................................................... 28-22

    APP_NAVIGATE: Open a Form Function............................................................................28-22

    APP_NAVIGATE.EXECUTE........................................................................................... 28-22

    APP_RECORD: Record Utilities........................................................................................... 28-25

    APP_RECORD.TOUCH_RECORD.................................................................................. 28-25

    APP_RECORD.HIGHLIGHT...........................................................................................28-25

    APP_RECORD.FOR_ALL_RECORDS............................................................................. 28-26

    APP_RECORD.DELETE_ROW........................................................................................28-26

    APP_RECORD.VALIDATE_RANGE.............................................................................. 28-27

    APP_REGION: Region Utilities............................................................................................28-28

    APP_REGION.ALT_REGION..........................................................................................28-28

    APP_STANDARD Package...................................................................................................28-29APP_STANDARD.APP_VALIDATE...............................................................................28-29

    APP_STANDARD.EVENT.............................................................................................. 28-29

    APP_STANDARD.SYNCHRONIZE................................................................................28-29

    APP_STANDARD.PLATFORM.......................................................................................28-30

    APP_WINDOW: Window Utilities ...................................................................................... 28-30

    APP_WINDOW.CLOSE_FIRST_WINDOW.................................................................... 28-30

  • 8/14/2019 Oracle Aplication Developers Guide

    17/617

    xvii

    APP_WINDOW.PROGRESS............................................................................................ 28-30

    APP_WINDOW.SET_COORDINATION.........................................................................28-31

    APP_WINDOW.SET_WINDOW_POSITION.................................................................. 28-31

    APP_WINDOW.SET_TITLE............................................................................................ 28-32

    29 FNDSQF Routine APIs

    Introduction to FNDSQF Routine APIs..................................................................................29-1

    FND_CURRENCY: Dynamic Currency APIs......................................................................... 29-1

    FND_CURRENCY.GET_FORMAT_MASK (Client or Server)........................................... 29-1

    Currency Examples............................................................................................................29-2

    FND_DATE: Date Conversion APIs....................................................................................... 29-3

    FND_GLOBAL: WHO Column Maintenance and Database Initialization...........................29-3

    FND_GLOBAL.USER_ID (Server)..................................................................................... 29-3

    FND_GLOBAL.APPS_INITIALIZE (Server)......................................................................29-3

    FND_GLOBAL.LOGIN_ID (Server).................................................................................. 29-4FND_GLOBAL.CONC_LOGIN_ID (Server)......................................................................29-4

    FND_GLOBAL.PROG_APPL_ID (Server)......................................................................... 29-4

    FND_GLOBAL.CONC_PROGRAM_ID (Server)............................................................... 29-5

    FND_GLOBAL.CONC_REQUEST_ID (Server)................................................................. 29-5

    FND_ORG: Organization APIs .............................................................................................. 29-5

    FND_ORG.CHANGE_LOCAL_ORG................................................................................ 29-5

    FND_ORG.CHANGE_GLOBAL_ORG..............................................................................29-5

    FND_ORG.CHOOSE_ORG................................................................................................29-5

    FND_STANDARD: Standard APIs ........................................................................................29-6

    FND_STANDARD.FORM_INFO.......................................................................................29-6FND_STANDARD.SET_WHO...........................................................................................29-6

    FND_STANDARD.SYSTEM_DATE.................................................................................. 29-6

    FND_STANDARD.USER...................................................................................................29-7

    FND_UTILITIES: Utility Routines ........................................................................................ 29-7

    FND_UTILITIES.OPEN_URL............................................................................................ 29-7

    FND_UTILITIES.PARAM_EXISTS.................................................................................... 29-7

    30 Naming Standards

    Overview of Naming Standards ............................................................................................ 30-1

    Naming Standards and Definitions........................................................................................30-1

    Database Objects................................................................................................................ 30-1

    Form Objects...................................................................................................................... 30-5

    File Standards.................................................................................................................... 30-8

    PL/SQL Packages, Procedures and Source Files.................................................................30-9

    Reserved Words...............................................................................................................30-10

  • 8/14/2019 Oracle Aplication Developers Guide

    18/617

    xviii

    A Additional Developer Forms

    Application Utilities Lookups and Application Object Library Lookups.............................. A-1

    Tables........................................................................................................................................ A-3

    Sequences.................................................................................................................................. A-9

    Views....................................................................................................................................... A-10

    Index

  • 8/14/2019 Oracle Aplication Developers Guide

    19/617

    xix

    Send Us Your Comments

    Oracle Applications Developer's Guide, Release 12

    Part No. B31458-03

    Oracle welcomes customers' comments and suggestions on the quality and usefulness of this document.Your feedback is important, and helps us to best meet your needs as a user of our products. For example:

    Are the implementation steps correct and complete?

    Did you understand the context of the procedures?

    Did you find any errors in the information?

    Does the structure of the information help you with your tasks?

    Do you need different information or graphics? If so, where, and in what format?

    Are the examples correct? Do you need more examples?

    If you find any errors or have any other suggestions for improvement, then please tell us your name, the

    name of the company who has licensed our products, the title and part number of the documentation andthe chapter, section, and page number (if available).

    Note: Before sending us your comments, you might like to check that you have the latest version of the

    document and if any concerns are already addressed. To do this, access the new Applications Release

    Online Documentation CD available on Oracle MetaLink and www.oracle.com. It contains the most

    current Documentation Library plus all documents revised or released recently.

    Send your comments to us using the electronic mail address: [email protected]

    Please give your name, address, electronic mail address, and telephone number (optional).

    If you need assistance with Oracle software, then please contact your support representative or Oracle

    Support Services.

    If you require training or instruction in using Oracle software, then please contact your Oracle local office

    and inquire about our Oracle University offerings. A list of Oracle offices is available on our Web site at

    www.oracle.com.

  • 8/14/2019 Oracle Aplication Developers Guide

    20/617

  • 8/14/2019 Oracle Aplication Developers Guide

    21/617

    xxi

    Preface

    Intended Audience

    Welcome to Release 12 of the Oracle Applications Developer's Guide.

    This guide is written for the application developer and assumes you have a working

    knowledge of the following:

    Oracle Forms Developer. If you have never used Oracle Forms Developer, we

    suggest you attend one or more of the relevant training classes available through

    Oracle University.

    PL/SQL and the Oracle database. If you have never used Oracle10g or PL/SQL, we

    suggest you attend one or more of the relevant training classes available through

    Oracle University.

    The Oracle Applications graphical user interface. To learn more about the Oracle

    Applications graphical user interface, read the Oracle Applications User's Guide.

    In addition, this guide assumes you have a working knowledge of the following:

    The principles and customary practices of your business area.

    Computer desktop application usage and terminology.

    If you have never used Oracle Applications, we suggest you attend one or more of the

    Oracle Applications training classes available through Oracle University.

    See Related Information Sources on page xxiii for more Oracle Applications productinformation.

    TTY Access to Oracle Support Services

    Oracle provides dedicated Text Telephone (TTY) access to Oracle Support Services

    within the United States of America 24 hours a day, seven days a week. For TTY

  • 8/14/2019 Oracle Aplication Developers Guide

    22/617

    xxii

    support, call 800.446.2398.

    Documentation Accessibility

    Our goal is to make Oracle products, services, and supporting documentation

    accessible, with good usability, to the disabled community. To that end, ourdocumentation includes features that make information available to users of assistive

    technology. This documentation is available in HTML format, and contains markup to

    facilitate access by the disabled community. Accessibility standards will continue to

    evolve over time, and Oracle is actively engaged with other market-leading technology

    vendors to address technical obstacles so that our documentation can be accessible to all

    of our customers. For more information, visit the Oracle Accessibility Program Web site

    at http://www.oracle.com/accessibility/ .

    Accessibility of Code Examples in Documentation

    Screen readers may not always correctly read the code examples in this document. Theconventions for writing code require that closing braces should appear on an otherwise

    empty line; however, some screen readers may not always read a line of text that

    consists solely of a bracket or brace.

    Accessibility of Links to External Web Sites in Documentation

    This documentation may contain links to Web sites of other companies or organizations

    that Oracle does not own or control. Oracle neither evaluates nor makes any

    representations regarding the accessibility of these Web sites.

    Structure1 Overview of Coding Standards

    2 Setting Up Your Application Framework

    3 Building Database Objects

    4 Using PL/SQL in Oracle Applications

    5 Setting the Properties of Container Objects

    6 Setting the Properties of Widget Objects

    7 Controlling Window, Block, and Region Behavior

    8 Enabling Query Behavior

    9 Coding Item Behavior

    10 Controlling the Toolbar and the Default Menu

    11 Menus and Function Security12 Message Dictionary

    13 User Profiles

    14 Flexfields

    15 Overview of Concurrent Processing

    16 Defining Concurrent Programs

    17 Coding Oracle Tools Concurrent Programs

    18 Coding Oracle Reports Concurrent Programs

  • 8/14/2019 Oracle Aplication Developers Guide

    23/617

    xxiii

    19 Coding C and Pro*C Concurrent Programs

    20 PL/SQL APIs for Concurrent Processing

    21 Standard Request Submission

    22 Request Sets

    23 The Template Form

    24 Attachments

    25 Handling Dates26 Customization Standards

    27 Using the Custom Library

    28 APPCORE Routine APIs

    29 FNDSQF Routine APIs

    30 Naming Standards

    A Additional Developer Forms

    Related Information Sources

    This book is included on the Oracle Applications Documentation Library, which is

    supplied in the Release 12 Media Pack. You can download soft-copy documentation as

    PDF files from the Oracle Technology Network at http://otn.oracle.com/documentation,or you can purchase hard-copy documentation from the Oracle Store at

    http://oraclestore.oracle.com. The Oracle Applications Documentation Library Release

    12 contains the latest information, including any documents that have changed

    significantly between releases. If substantial changes to this book are necessary, a

    revised version will be made available on the "virtual" documentation library on Oracle

    MetaLink.

    For a full list of documentation resources for Oracle Applications Release 12, see Oracle

    Applications Documentation Resources, Release 12, OracleMetaLink Document 394692.1.

    If this guide refers you to other Oracle Applications documentation, use only the

    Release 12 versions of those guides.Online Documentation

    All Oracle Applications documentation is available online (HTML or PDF).

    Online Help - Online help patches (HTML) are available on OracleMetaLink.

    PDF Documentation - See the Oracle Applications Documentation Library for

    current PDF documentation for your product with each release. The Oracle

    Applications Documentation Library is also available on OracleMetaLink and is

    updated frequently.

    Oracle Electronic Technical Reference Manual - The Oracle Electronic Technical

    Reference Manual (eTRM) contains database diagrams and a detailed description of

    database tables, forms, reports, and programs for each Oracle Applications product.

    This information helps you convert data from your existing applications and

    integrate Oracle Applications data with non-Oracle applications, and write custom

    reports for Oracle Applications products. The Oracle eTRM is available on Oracle

    MetaLink.

  • 8/14/2019 Oracle Aplication Developers Guide

    24/617

    xxiv

    Related Guides

    You should have the following related books on hand. Depending on the requirements

    of your particular installation, you may also need additional manuals or guides.

    Oracle Applications Concepts

    This book is intended for all those planning to deploy Oracle E-Business Suite Release12, or contemplating significant changes to a configuration. After describing the Oracle

    Applications architecture and technology stack, it focuses on strategic topics, giving a

    broad outline of the actions needed to achieve a particular goal, plus the installation and

    configuration choices that may be available.

    Oracle Applications Flexfields Guide

    This guide provides flexfields planning, setup, and reference information for the Oracle

    Applications implementation team, as well as for users responsible for the ongoing

    maintenance of Oracle Applications product data. This guide also provides information

    on creating custom reports on flexfields data.

    Oracle Application Framework Developer's Guide

    This guide contains the coding standards followed by the Oracle Applications

    development staff to produce applications built with Oracle Application Framework.

    This guide is available in PDF format on OracleMetaLink and as online documentation

    in JDeveloper 10g with Oracle Application Extension.

    Oracle Applications Installation Guide: Using Rapid Install

    This book is intended for use by anyone who is responsible for installing or upgrading

    Oracle Applications. It provides instructions for running Rapid Install either to carry

    out a fresh installation of Oracle Applications Release 12, or as part of an upgrade from

    Release 11i to Release 12. The book also describes the steps needed to install the

    technology stack components only, for the special situations where this is applicable.

    Oracle Applications Supportability Guide

    This manual contains information on Oracle Diagnostics and the Logging Framework

    for system administrators and custom developers.

    Oracle Applications System Administrator's Guide Documentation Set

    This documentation set provides planning and reference information for the Oracle

    Applications System Administrator. Oracle Applications System Administrator's Guide -

    Configuration contains information on system configuration steps, including defining

    concurrent programs and managers, enabling Oracle Applications Manager features,

    and setting up printers and online help. Oracle Applications System Administrator's Guide

    - Maintenance provides information for frequent tasks such as monitoring your system

    with Oracle Applications Manager, managing concurrent managers and reports, using

    diagnostic utilities, managing profile options, and using alerts. Oracle Applications

    System Administrator's Guide - Security describes User Management, data security,

    function security, auditing, and security configurations.

    Oracle Applications User's Guide

  • 8/14/2019 Oracle Aplication Developers Guide

    25/617

    xxv

    This guide explains how to navigate, enter data, query, and run reports using the user

    interface (UI) of Oracle Applications. This guide also includes information on setting

    user profiles, as well as running and reviewing concurrent requests.

    Oracle Applications User Interface Standards for Forms-Based Products

    This guide contains the user interface (UI) standards followed by the Oracle

    Applications development staff. It describes the UI for the Oracle Applications products

    and how to apply this UI to the design of an application built by using Oracle Forms.

    Oracle Integration Repository User's Guide

    This guide covers the employment of Oracle Integration Repository in researching and

    deploying business interfaces to produce integrations between applications.

    Integration Repository

    The Oracle Integration Repository is a compilation of information about the service

    endpoints exposed by the Oracle E-Business Suite of applications. It provides a

    complete catalog of Oracle E-Business Suite's business service interfaces. The tool letsusers easily discover and deploy the appropriate business service interface for

    integration with any system, application, or business partner.

    The Oracle Integration Repository is shipped as part of the E-Business Suite. As your

    instance is patched, the repository is automatically updated with content appropriate

    for the precise revisions of interfaces in your environment.

    Do Not Use Database Tools to Modify Oracle Applications Data

    Oracle STRONGLY RECOMMENDS that you never use SQL*Plus, Oracle Data

    Browser, database triggers, or any other tool to modify Oracle Applications data unlessotherwise instructed.

    Oracle provides powerful tools you can use to create, store, change, retrieve, and

    maintain information in an Oracle database. But if you use Oracle tools such as

    SQL*Plus to modify Oracle Applications data, you risk destroying the integrity of your

    data and you lose the ability to audit changes to your data.

    Because Oracle Applications tables are interrelated, any change you make using an

    Oracle Applications form can update many tables at once. But when you modify Oracle

    Applications data using anything other than Oracle Applications, you may change a

    row in one table without making corresponding changes in related tables. If your tables

    get out of synchronization with each other, you risk retrieving erroneous information

    and you risk unpredictable results throughout Oracle Applications.

    When you use Oracle Applications to modify your data, Oracle Applications

    automatically checks that your changes are valid. Oracle Applications also keeps track

    of who changes information. If you enter information into database tables using

    database tools, you may store invalid information. You also lose the ability to track who

    has changed your information because SQL*Plus and other database tools do not keep a

  • 8/14/2019 Oracle Aplication Developers Guide

    26/617

    xxvi

    record of changes.

  • 8/14/2019 Oracle Aplication Developers Guide

    27/617

    Overview of Coding Standards 1-1

    1Overview of Coding Standards

    Overview of Coding Standards

    Importance of these Standards

    The coding standards described in this manual, together with the user interface

    standards described in the Oracle Applications User Interface Standards for Forms-Based

    Products, are used by Oracle developers to build Oracle Applications. If you want to

    build custom application code that integrates with and has the same look and feel as

    Oracle Applications, you must follow these standards. If you do not follow these

    standards exactly as they are presented, you may not achieve an acceptable result.

    This manual makes no attempt to analyze the consequences of deviating from the

    standards in particular cases. The libraries and procedures that are packaged with

    Oracle Applications all assume adherence to these standards. In fact, since the behaviorof Oracle Forms, the Oracle Applications standard libraries, and the standards are so

    tightly linked, a deviation from standards that appears to be minor may in fact have

    far-reaching and unpredictable results. Therefore, we recommend that when you

    develop custom application code, you follow the standards exactly a