120pjapi

608
Oracle® Projects APIs, Client Extensions, and Open Interfaces Reference Release 12 Part No. B25624-02 December 2006

description

Projects API and Open Interfaces

Transcript of 120pjapi

  • Oracle Projects APIs, Client Extensions, and Open InterfacesReferenceRelease 12Part No. B25624-02

    December 2006

  • Oracle Projects APIs, Client Extensions, and Open Interfaces Reference, Release 12

    Part No. B25624-02

    Copyright 1994, 2006, Oracle. All rights reserved.

    Primary Author: Janet Buchbinder

    Contributing Author: Sarita Chebbi, Jeffrey Colvard, Prashanti Gajjala, Stephen A. Gordon, Asad Halim, Rinku Mohapatra, Tanya Poindexter, Juli Anne Tolley

    Contributor: Sakthivel Balasubramanian, Prithi Bandla, Koushik Banerjee, Sandeep Bharathan, Ajit Das, Rupal Fadia, Anders Gilchrist, Venugopal Gottimukkula, Debbie Hendrix, Venkatesh Jayaraman, Karthik Kalyanasundaram, Sanjay Kumar Kannojia, Biju Kattuparambil, Rakesh Raghavan, Sumit Khanna, Rajnish Kumar, Satya Deep Maheshwari, Vijay Manguluru, Sudha Maroju, Murali Mohan, Ranjana Murthy, Suresh Punathilath, Rasheeda Shaik, Pachiappan Singaravel, Amita Singh, Nagaraj Tekupally, Dhaval Thakker, Lavanya Veerubhotla, Margaret Wasowicz, Janet Zabel

    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, ordecompilation 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 on behalf of the United States Government, the following notice is applicable:

    U.S. GOVERNMENT RIGHTSPrograms, 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 allrisks 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 qualityof 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, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

  • iii

    Contents

    Send Us Your Comments

    Preface

    Part 1 OVERVIEW

    1 Overview of Oracle Projects APIs, Client Extensions, and Open InterfacesOverview of Oracle Projects APIs, Client Extensions, and Open Interfaces...........................1-1

    Oracle Projects APIs............................................................................................................. 1-1Oracle Projects Client Extensions......................................................................................... 1-2Oracle Projects Open Interfaces........................................................................................... 1-2

    Part 2 ORACLE PROJECTS APIS

    2 Introduction to Oracle Projects APIsIntroduction to Oracle Projects APIs........................................................................................ 2-1Overview of the Oracle Projects APIs.......................................................................................2-2

    Applications of the Oracle Projects APIs..............................................................................2-2Where Information Originates............................................................................................. 2-3

    Integrating Your External System with Oracle Projects........................................................... 2-5Step 1: Create a Database Role............................................................................................. 2-5Step 2: Create an Oracle Applications User..........................................................................2-6Step 3: Create a Database User............................................................................................. 2-6Step 4: Set Up Your Product in Oracle Projects.................................................................... 2-7

    Security Requirements.............................................................................................................. 2-8

  • iv

    Handling Error Messages........................................................................................................ 2-10Standard API Parameters........................................................................................................ 2-21Common APIs..........................................................................................................................2-25Controlling Actions in Oracle Projects................................................................................... 2-30Using API Procedures............................................................................................................. 2-31

    3 Oracle Project Foundation APIsProject Definition APIs............................................................................................................. 3-2

    Project Definition API Views............................................................................................... 3-2Project Definition API Procedures....................................................................................... 3-6

    Project Definition API Procedure Definitions......................................................................... 3-7Common Project Definition API Parameters....................................................................... 3-7CREATE_PROJECT............................................................................................................. 3-8DELETE_PROJECT.............................................................................................................. 3-9UPDATE_PROJECT........................................................................................................... 3-10CLEAR_PROJECT.............................................................................................................. 3-17EXECUTE_CREATE_PROJECT......................................................................................... 3-17EXECUTE_UPDATE_PROJECT........................................................................................ 3-18INIT_PROJECT.................................................................................................................. 3-19LOAD_CLASS_CATEGORY............................................................................................. 3-19LOAD_KEY_MEMBER...................................................................................................... 3-20LOAD_ORG_ROLE........................................................................................................... 3-20LOAD_PROJECT............................................................................................................... 3-20Check Procedures.............................................................................................................. 3-21CHECK_CHANGE_PROJECT_ORG_OK.......................................................................... 3-21CHECK_DELETE_PROJECT_OK...................................................................................... 3-22CHECK_UNIQUE_PROJECT_REFERENCE..................................................................... 3-22

    Project Definition Record and Table Datatypes.....................................................................3-22Using Project Definition APIs................................................................................................ 3-54Creating a Project Using the Load-Execute-Fetch APIs.......................................................... 3-60Structure APIs..........................................................................................................................3-66

    Structure API Views...........................................................................................................3-67Structure API Procedures...................................................................................................3-68

    Structure APIs Procedure Definitions.................................................................................... 3-69ADD_TASK....................................................................................................................... 3-69APPLY_LP_PROG_ON_CWV........................................................................................... 3-72BASELINE_STRUCTURE.................................................................................................. 3-72CHANGE_CURRENT_WORKING_VERSION................................................................. 3-73CHANGE_STRUCTURE_STATUS.................................................................................... 3-73DELETE_STRUCTURE_VERSION.................................................................................... 3-74

  • v

    DELETE_TASK.................................................................................................................. 3-74GET_TASK_VERSION....................................................................................................... 3-75GET_DELETED_TASKS_FROM_OP................................................................................. 3-76UPDATE_TASK................................................................................................................. 3-76FETCH_STRUCTURE_VERSION...................................................................................... 3-80FETCH_TASK.................................................................................................................... 3-80FETCH_TASKS.................................................................................................................. 3-80FETCH_TASK_VERSION.................................................................................................. 3-81LOAD_STRUCTURE......................................................................................................... 3-81LOAD_TASK..................................................................................................................... 3-81LOAD_TASKS................................................................................................................... 3-83Check Procedures.............................................................................................................. 3-83CHECK_ADD_SUBTASK_OK...........................................................................................3-83CHECK_CHANGE_PARENT_OK.................................................................................... 3-83CHECK_DELETE_TASK_OK............................................................................................ 3-83CHECK_TASK_NUMBER_CHANGE_OK........................................................................ 3-84CHECK_TASK_MFD......................................................................................................... 3-84CHECK_UNIQUE_TASK_NUMBER.................................................................................3-84CHECK_UNIQUE_TASK_REFERENCE........................................................................... 3-85

    User-Defined Attribute APIs.................................................................................................. 3-85User-Defined Attribute Procedures................................................................................... 3-85

    LOAD_EXTENSIBLE_ATTRIBUTE.............................................................................3-86LOAD_EXTENSIBLE_ATTRIBUTES...........................................................................3-87

    Using the User-Defined Attribute APIs............................................................................. 3-87Resource APIs........................................................................................................................ 3-109

    Resource API Views......................................................................................................... 3-109Resource API Procedures................................................................................................. 3-111

    Resource API Procedure Definitions.................................................................................... 3-112ADD_RESOURCE_LIST_MEMBER................................................................................. 3-112CREATE_RESOURCE_LIST............................................................................................ 3-113UPDATE_RESOURCE_LIST............................................................................................ 3-114DELETE_RESOURCE_LIST............................................................................................. 3-115DELETE_RESOURCE_LIST_MEMBER........................................................................... 3-116SORT_RESOURCE_LIST_MEMBERS.............................................................................. 3-116UPDATE_RESOURCE_LIST_MEMBER.......................................................................... 3-117CLEAR_CREATE_RESOURCE_LIST.............................................................................. 3-118CLEAR_UPDATE_MEMBERS......................................................................................... 3-118EXEC_CREATE_RESOURCE_LIST................................................................................. 3-118EXEC_UPDATE_RESOURCE_LIST.................................................................................3-118FETCH_MEMBERS.......................................................................................................... 3-118FETCH_RESOURCE_LIST............................................................................................... 3-119

  • vi

    INIT_CREATE_RESOURCE_LIST................................................................................... 3-119INIT_UPDATE_MEMBERS............................................................................................. 3-119LOAD_MEMBERS........................................................................................................... 3-119LOAD_RESOURCE_LIST................................................................................................ 3-120

    Planning Resource List APIs................................................................................................. 3-122Planning Resource List API Views...................................................................................3-122Planning Resource List API Procedures...........................................................................3-123Planning Resource List API Record and Table Datatypes................................................3-124

    Planning Resource List API Definitions...............................................................................3-131CREATE_RESOURCE_LIST............................................................................................ 3-131

    Business Rules........................................................................................................... 3-131UPDATE_RESOURCE_LIST............................................................................................ 3-132DELETE_RESOURCE_LIST............................................................................................. 3-133DELETE_PLANNING RESOURCE................................................................................. 3-134DELETE_PLAN_RL_FORMAT........................................................................................3-135EXEC_CREATE_RESOURCE_LIST................................................................................. 3-135EXEC_UPDATE_RESOURCE_LIST.................................................................................3-136FETCH_RESOURCE_LIST............................................................................................... 3-136FETCH_PLAN_FORMAT................................................................................................ 3-136FETCH_RESOURCE_LIST_MEMBER............................................................................. 3-137INIT_CREATE_RESOURCE_LIST................................................................................... 3-137INIT_UPDATE_RESOURCE_LIST.................................................................................. 3-137LOAD_RESOURCE_LIST................................................................................................ 3-137LOAD_RESOURCE_FORMAT........................................................................................ 3-139LOAD_PLANNING_RESOURCE....................................................................................3-139

    Resource Breakdown Structure APIs.................................................................................... 3-140Resource Breakdown Structure API Views...................................................................... 3-140Resource Breakdown Structure API Procedures..............................................................3-141Resource Breakdown Structure API Record and Table Datatypes...................................3-142

    Resource Breakdown Structure API Procedure Definitions................................................ 3-147CREATE_RBS...................................................................................................................3-147COPY_RBS_WORKING_VERSION................................................................................. 3-148UPDATE_RBS.................................................................................................................. 3-149INIT_RBS_PROCESSING.................................................................................................3-150LOAD_RBS_HEADER..................................................................................................... 3-150LOAD_RBS_VERSION.................................................................................................... 3-150LOAD_RBS_ELEMENTS................................................................................................. 3-150FETCH_RBS_HEADER.................................................................................................... 3-151FETCH_RBS_VERSION................................................................................................... 3-151FETCH_RBS_ELEMENT.................................................................................................. 3-152EXEC_CREATE_RBS....................................................................................................... 3-152

  • vii

    EXEC_UPDATE_RBS....................................................................................................... 3-152FREEZE_RBS_VERSION..................................................................................................3-153ASSIGN_RBS_TO_PROJECT........................................................................................... 3-153

    Dependency APIs.................................................................................................................. 3-155Dependency API Views................................................................................................... 3-155Dependency API Procedures........................................................................................... 3-155

    Dependency API Procedure Definitions.............................................................................. 3-155CREATE_DEPENDENCY................................................................................................ 3-155UPDATE_DEPENDENCY............................................................................................... 3-156DELETE_DEPENDENCY................................................................................................ 3-157

    Task Assignment APIs.......................................................................................................... 3-157Task Assignment Views................................................................................................... 3-157Task Assignment API Procedures....................................................................................3-158Task Assignment API Record and Table Datatype.......................................................... 3-158

    Task Assignment API Procedure Definitions...................................................................... 3-162LOAD_TASK_ASSIGNMENTS....................................................................................... 3-163LOAD_TASK_ASSIGNMENT_PERIODS........................................................................ 3-163EXECUTE_CREATE_TASK_ASGMTS............................................................................ 3-163EXECUTE_UPDATE_TASK_ASGMTS............................................................................ 3-164CREATE_TASK_ASSIGNMENTS................................................................................... 3-164CREATE_TASK_ASSIGNMENT_PERIODS.................................................................... 3-164UPDATE_TASK_ASSIGNMENTS................................................................................... 3-165UPDATE_TASK_ASSIGNMENT_PERIODS................................................................... 3-165DELETE_TASK_ASSIGNMENTS.................................................................................... 3-166FETCH_TASK_ASSIGNMENTS...................................................................................... 3-166CONVERT_PM_TAREF_TO_ID...................................................................................... 3-167INIT_TASK_ASSIGNMENTS.......................................................................................... 3-167

    4 Oracle Project Costing APIsAsset APIs.................................................................................................................................. 4-1

    Asset API Views...................................................................................................................4-1Asset API Procedures and Functions................................................................................... 4-2

    Asset API Procedure and Function Definitions....................................................................... 4-2ADD_PROJECT_ASSET.......................................................................................................4-2UPDATE_PROJECT_ASSET................................................................................................ 4-3DELETE_PROJECT_ASSET................................................................................................. 4-4ADD_ASSET_ASSIGNMENT.............................................................................................. 4-4DELETE_ASSET_ASSIGNMENT........................................................................................ 4-4LOAD_PROJECT_ASSET.................................................................................................... 4-5LOAD_ASSET_ASSIGNMENT............................................................................................4-5

  • viii

    EXECUTE_ADD_PROJECT_ASSET.................................................................................... 4-6CONVERT_PM_ASSETREF_TO_ID.................................................................................... 4-7FETCH_PROJECT_ASSET_ID............................................................................................. 4-7

    Cost Plus Application Programming Interface (API)............................................................... 4-7Get Burden Amount.............................................................................................................4-8Example of Using the Cost Plus API.................................................................................... 4-9

    5 Oracle Project Billing APIsAgreement and Funding APIs...................................................................................................5-1

    Security for Agreement and Funding APIs.......................................................................... 5-1Agreement and Funding API Views.................................................................................... 5-2Agreement and Funding API Procedures............................................................................ 5-2

    Agreement and Funding API Procedure Definitions............................................................... 5-3CREATE_AGREEMENT...................................................................................................... 5-3DELETE_AGREEMENT...................................................................................................... 5-4UPDATE_AGREEMENT..................................................................................................... 5-5CREATE_BASELINE_BUDGET...........................................................................................5-6ADD_FUNDING................................................................................................................. 5-7DELETE_FUNDING............................................................................................................ 5-8UPDATE_FUNDING........................................................................................................... 5-8INIT_AGREEMENT.............................................................................................................5-9LOAD_AGREEMENT..........................................................................................................5-9LOAD_FUNDING............................................................................................................. 5-10EXECUTE_CREATE_AGREEMENT................................................................................. 5-10EXECUTE_UPDATE_AGREEMENT................................................................................. 5-11FETCH_FUNDING............................................................................................................ 5-12CLEAR_AGREEMENT...................................................................................................... 5-12CHECK_DELETE_AGREEMENT_OK.............................................................................. 5-12CHECK_ADD_FUNDING_OK..........................................................................................5-13CHECK_DELETE_FUNDING_OK.................................................................................... 5-14CHECK_UPDATE_FUNDING_OK................................................................................... 5-14

    Using Agreement and Funding APIs...................................................................................... 5-15Creating an Agreement Using Load-Execute-Fetch APIs....................................................... 5-19Creating an Agreement Using a Composite Datatype API.................................................... 5-24Event APIs............................................................................................................................... 5-27

    Event API Procedures........................................................................................................ 5-27Events API Record and Table Datatypes........................................................................... 5-28

    Event API Procedure Definitions............................................................................................5-32CREATE_EVENT............................................................................................................... 5-32DELETE_EVENT............................................................................................................... 5-32

  • ix

    UPDATE_EVENT.............................................................................................................. 5-32INIT_EVENT......................................................................................................................5-33LOAD_EVENT...................................................................................................................5-33EXECUTE_CREATE_EVENT............................................................................................ 5-33EXECUTE_UPDATE_EVENT............................................................................................ 5-34FETCH_EVENT................................................................................................................. 5-34CLEAR_EVENT................................................................................................................. 5-34CHECK_DELETE_EVENT_OK......................................................................................... 5-34

    6 Oracle Project Management APIsProject Deliverables APIs......................................................................................................... 6-1

    Project Deliverables API Procedures....................................................................................6-2Budget APIs............................................................................................................................... 6-7

    Budget API Views................................................................................................................ 6-7Budget API Procedures........................................................................................................ 6-8

    Budget Record and Table Datatypes.........................................................................................6-9Budget API Procedure Definitions......................................................................................... 6-15

    ADD_BUDGET_LINE........................................................................................................ 6-16BASELINE_BUDGET......................................................................................................... 6-20CALCULATE_AMOUNTS................................................................................................ 6-21CREATE_DRAFT_BUDGET.............................................................................................. 6-24CREATE_DRAFT_FINPLAN.............................................................................................6-27DELETE_BASELINE_BUDGET......................................................................................... 6-30DELETE_BUDGET_LINE.................................................................................................. 6-33DELETE_DRAFT_BUDGET...............................................................................................6-37GET_PROJECT_ID............................................................................................................. 6-39SET_PROJECT_ID.............................................................................................................. 6-39UPDATE_BUDGET........................................................................................................... 6-39UPDATE_BUDGET_LINE................................................................................................. 6-47CLEAR_BUDGET.............................................................................................................. 6-52CLEAR_CALCULATE_AMOUNTS.................................................................................. 6-52EXECUTE_CALCULATE_AMOUNTS.............................................................................. 6-52EXECUTE_CREATE_DRAFT_BUDGET............................................................................6-53EXECUTE_CREATE_DRAFT_FINPLAN.......................................................................... 6-54EXECUTE_UPDATE_BUDGET......................................................................................... 6-54FETCH_BUDGET_LINE.................................................................................................... 6-55FETCH_CALCULATE_AMOUNTS.................................................................................. 6-55INIT_BUDGET................................................................................................................... 6-55INIT_CALCULATE_AMOUNTS....................................................................................... 6-55LOAD_BUDGET_LINE..................................................................................................... 6-55

  • xLOAD_RESOURCE_INFO.................................................................................................6-56Using Budget APIs.................................................................................................................. 6-56

    Step 1: Connect to an Oracle Database............................................................................... 6-57Step 2: Get the Budget Data............................................................................................... 6-57Step 3: Get Budget Line Data............................................................................................. 6-59Step 4: Interface Budget Information to the Server............................................................ 6-62Step 5: Start the Server-Side Process.................................................................................. 6-63Step 6: Retrieve Error Messages......................................................................................... 6-63Step 7: Finish the Load-Execute-Fetch Process...................................................................6-63

    Creating a Budget Using the Load-Execute-Fetch APIs..........................................................6-63Creating a Budget Using a Composite Datatype API............................................................. 6-66Refresh Planning Amounts API..............................................................................................6-69Status APIs...............................................................................................................................6-70

    Overview of Status API Views........................................................................................... 6-71Status API Views................................................................................................................6-74Status API Procedures........................................................................................................6-76

    Record and Table Datatypes................................................................................................... 6-77Required Parameters and Parameter Values.......................................................................... 6-79Status API Procedure Definitions........................................................................................... 6-83Custom Summarization Reporting APIs................................................................................ 6-87

    Actuals Summarization API.............................................................................................. 6-87Actuals Summarization API Procedures..................................................................... 6-88

    Budget Summarization API............................................................................................... 6-89Project Performance Reporting APIs...................................................................................... 6-90

    Part 3 ORACLE PROJECTS CLIENT EXTENSIONS

    7 Overview of Client ExtensionsClient Extensions....................................................................................................................... 7-1Implementing Client Extensions.............................................................................................. 7-2

    Analyzing Your Business Requirements.............................................................................. 7-2Designing the Logic............................................................................................................. 7-2Writing PL/SQL Procedures.................................................................................................7-4

    8 Oracle Project Foundation Client ExtensionsProject Security Extension......................................................................................................... 8-1Project Verification Extension.................................................................................................. 8-3Project and Task Date Extension.............................................................................................. 8-5Project Workflow Extension..................................................................................................... 8-8

  • xi

    Verify Organization Change Extension.................................................................................... 8-9Transaction Import Extensions............................................................................................... 8-10

    Pre-Import Client Extension for Internet Time.................................................................. 8-11Post-Import Client Extension for Internet Time................................................................. 8-13

    Descriptive Flexfield Mapping Extension.............................................................................. 8-14Archive Project Validation Extension..................................................................................... 8-18Archive Custom Tables Extension.......................................................................................... 8-18

    9 Oracle Project Costing Client ExtensionsTransaction Control Extensions................................................................................................ 9-1

    Case Study: New Charges Not Allowed.............................................................................. 9-7Case Study: Organization-Based Transaction Controls....................................................... 9-9Case Study: Default Billable Status by Expenditure Type .................................................9-10

    AutoApproval Extensions....................................................................................................... 9-11Labor Costing Extensions........................................................................................................ 9-14Labor Transaction Extensions................................................................................................. 9-16Overtime Calculation Extension............................................................................................. 9-24Burden Costing Extension....................................................................................................... 9-28Burden Resource Extension.....................................................................................................9-29Allocation Extensions.............................................................................................................. 9-30Asset Allocation Basis Extension............................................................................................ 9-39Asset Assignment Extension................................................................................................... 9-41Asset Lines Processing Extension........................................................................................... 9-42Capital Event Processing Extension........................................................................................ 9-43Capitalized Interest Extension................................................................................................ 9-44CIP Grouping Extension......................................................................................................... 9-46CIP Account Override Extension............................................................................................ 9-49Depreciation Account Override Extension............................................................................. 9-50Cross-Charge Client Extensions.............................................................................................. 9-51

    Provider and Receiver Organizations Override Extension................................................ 9-51Cross-Charge Processing Method Override Extension...................................................... 9-52Transfer Price Determination Extension............................................................................ 9-54Transfer Price Override Extension..................................................................................... 9-55Transfer Price Currency Conversion Override Extension.................................................. 9-57Internal Payables Invoice Attributes Override Extension.................................................. 9-58

    10 Oracle Project Billing Client ExtensionsFunding Revaluation Factor Extension................................................................................... 10-1Billing Cycle Extension........................................................................................................... 10-2Billing Extensions....................................................................................................................10-3

  • xii

    Cost Accrual Billing Extension............................................................................................. 10-33Cost Accrual Identification Extension.................................................................................. 10-34Labor Billing Extensions....................................................................................................... 10-35Non-Labor Billing Extensions............................................................................................... 10-38Retention Billing Extension.................................................................................................. 10-40Automatic Invoice Approve/Release Extension................................................................... 10-40Output Tax Extension............................................................................................................ 10-42Receivables Installation Override Extension....................................................................... 10-43AR Transaction Type Extension............................................................................................10-45

    11 Oracle Project Resource Management Client ExtensionsAssignment Approval Changes Extension............................................................................. 11-1Assignment Approval Notification Extension....................................................................... 11-2Candidate Notification Workflow Extension......................................................................... 11-4

    12 Oracle Project Management Client ExtensionsWorkplan Workflow Extension.............................................................................................. 12-1Progress Management Extension............................................................................................ 12-2Budget Calculation Extensions............................................................................................... 12-3Budget Verification Extension................................................................................................ 12-7Budget Workflow Extension................................................................................................... 12-8Estimate to Complete Generation Method Extension............................................................ 12-9Control Item Document Numbering Extension................................................................... 12-10Issue and Change Workflow Extension................................................................................12-11Project Status Report Workflow Extension.......................................................................... 12-12Custom Performance Measure Extension ............................................................................ 12-13Project Performance Status Extension.................................................................................. 12-14Project Status Inquiry (PSI) Extension................................................................................. 12-15Project Status Inquiry Burdening Commitments Extension................................................12-18Project Status Inquiry Commitment Changes Extension.....................................................12-19

    Part 4 ORACLE PROJECTS OPEN INTERFACES

    13 Oracle Projects Open InterfacesTransaction Import.................................................................................................................. 13-1

    Transaction Import Process Diagram.................................................................................13-2Using Transaction Import.................................................................................................. 13-4Importing Transactions...................................................................................................... 13-6Types of Items That You Can Import................................................................................. 13-7

  • xiii

    Loading Items as Costed or Uncosted ...............................................................................13-8Loading Items as Accounted or Unaccounted................................................................... 13-9Loading Burden Transactions.......................................................................................... 13-10Loading Project Manufacturing Costs..............................................................................13-10Loading Foreign Currency Transactions..........................................................................13-12Import Options (Transaction Source)...............................................................................13-15Grouping Transactions into Expenditure Batches and Expenditures.............................. 13-16Transaction Import Example: Labor and Expense by Employee Number....................... 13-19Transaction Import Example: Usage................................................................................ 13-21Viewing and Processing Imported Transactions..............................................................13-23

    Transaction Import Interface................................................................................................ 13-25Transaction Import Validation......................................................................................... 13-25Target Expenditure Tables............................................................................................... 13-26The Transaction Import Interface Table........................................................................... 13-27PA_TRANSACTION_INTERFACE_ALL Column Requirements................................... 13-28Resolving Import Exceptions........................................................................................... 13-53

    Index

  • xv

    Send Us Your Comments

    Oracle Projects APIs, Client Extensions, and Open Interfaces Reference, Release 12Part No. B25624-02

    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 officeand inquire about our Oracle University offerings. A list of Oracle offices is available on our Web site at www.oracle.com.

  • xvii

    Preface

    Intended AudienceWelcome to Release 12 of the Oracle Projects APIs, Client Extensions, and Open Interfaces Reference.

    This guide contains the information you need to implement, maintain, and use the APIs, client extensions, and open interfaces that are available when you use Oracle Projects.

    See Related Information Sources on page xix for more Oracle Applications product information.

    TTY Access to Oracle Support ServicesOracle 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 support, call 800.446.2398.

    Documentation AccessibilityOur goal is to make Oracle products, services, and supporting documentation accessible, with good usability, to the disabled community. To that end, our documentation 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 allof our customers. For more information, visit the Oracle Accessibility Program Web site at http://www.oracle.com/accessibility/ .

  • xviii

    Accessibility of Code Examples in DocumentationScreen readers may not always correctly read the code examples in this document. The conventions 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 DocumentationThis documentation may contain links to Web sites of other companies or organizationsthat Oracle does not own or control. Oracle neither evaluates nor makes any representations regarding the accessibility of these Web sites.

    Structure1 Overview of Oracle Projects APIs, Client Extensions, and Open InterfacesThis chapter contains an overview of the APIs, Client Extensions, and Open Interfaces that are provided with the Oracle Projects applications.2 Introduction to Oracle Projects APIsThis chapter contains an introduction to the Oracle Projects APIs. It describes security requirements, error messages, and standard API parameters.3 Oracle Project Foundation APIsThis chapter describes how to implement APIs for:

    Project and task information

    Structure information

    Resource list and resource list member information

    Dependency information

    Task Assignment information

    4 Oracle Project Costing APIsThis chapter describes how to implement APIs that interface and assign assets from external systems.5 Oracle Project Billing APIsThis chapter describes how to implement APIs for:

    Agreements and funding

    Events

    6 Oracle Project Management APIsThis chapter describes how to implement Oracle Project Management APIs.

  • xix

    7 Overview of Client ExtensionsThis chapter describes everything you need to know about designing and writing client extensions in Oracle Projects.8 Oracle Project Foundation Client ExtensionsThis chapter describes the client extensions in the Oracle Project Foundation application.9 Oracle Project Costing Client ExtensionsThis chapter describes the client extensions in the Oracle Project Costing application.10 Oracle Project Billing Client ExtensionsThis chapter describes the client extensions in the Oracle Project Billing application.11 Oracle Project Resource Management Client ExtensionsThis chapter describes the client extensions in the Oracle Project Resource Management application.12 Oracle Project Management Client ExtensionsThis chapter describes the client extensions in the Oracle Project Management application.13 Oracle Projects Open InterfacesThis chapter describes the open interfaces in the Oracle Projects applications.

    Related Information SourcesYou can choose from many sources of information, including online documentation, training, and support services, to increase your knowledge and understanding of OracleProjects.

    Integration RepositoryThe 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 lets users 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.

    Online DocumentationOracle Applications documentation, including online help patches (HTML) and guides (PDF), is available on Oracle MetaLink.

  • xx

    Guides Related to All Products

    Oracle Applications User's GuideThis guide explains how to enter data, query, run reports, and navigate using the graphical user interface (GUI) available with this release of Oracle Projects (and any other Oracle Applications products). This guide also includes information on setting user profiles, as well as running and reviewing reports and concurrent programs.

    You can access this user's guide online by choosing "Getting Started with Oracle Applications" from any Oracle Applications help file.

    Oracle Projects Documentation Set

    Oracle Projects Implementation GuideUse this manual as a guide for implementing Oracle Projects. This manual also includes appendixes covering function security, menus and responsibilities, and profile options.

    Oracle Projects FundamentalsOracle Project Fundamentals provides the common foundation shared across the OracleProjects products (Project Costing, Project Billing, Project Resource Management, Project Management, and Project Portfolio Analysis). Use this guide to learn fundamental information about the Oracle Projects solution.

    This guide includes a Navigation Paths appendix. Use this appendix to find out how to access each window in the Oracle Projects solution.

    Oracle Project Billing User GuideThis guide shows you how to use Oracle Project Billing to define revenue and invoicing rules for your projects, generate revenue, create invoices, and integrate with other Oracle Applications to process revenue and invoices, process client invoicing, and measure the profitability of your contract projects.

    Oracle Project Costing User GuideUse this guide to learn detailed information about Oracle Project Costing. Oracle ProjectCosting provides the tools for processing project expenditures, including calculating their cost to each project and determining the GL accounts to which the costs are posted.

    Oracle Project Management User GuideThis guide shows you how to use Oracle Project Management to manage projects through their lifecycles -- from planning, through execution, to completion.

  • xxi

    Oracle Project Portfolio Analysis User GuideThis guide contains the information you need to understand and use Oracle Project Portfolio Analysis. It includes information about project portfolios, planning cycles, andmetrics for ranking and selecting projects for a project portfolio.

    Oracle Project Resource Management User GuideThis guide provides you with information on how to use Oracle Project Resource Management. It includes information about staffing, scheduling, and reporting on project resources.

    Oracle Projects GlossaryThis glossary provides definitions of terms that are shared by all Oracle Projects applications. If you are unsure of the meaning of a term you see in an Oracle Projects guide, please refer to the glossary for clarification. You can find the glossary in the online help for Oracle Projects, and in the Oracle Projects Fundamentals book.

    User Guides Related to This Product

    Oracle Assets User GuideThis guide provides you with information on how to implement and use Oracle Assets. Use this guide to understand the implementation steps required for application use, including defining depreciation books, depreciation method, and asset categories. It also contains information on setting up assets in the system, maintaining assets, retiringand reinstating assets, depreciation, group depreciation, accounting and tax accounting,budgeting, online inquiries, impairment processing, and Oracle Assets reporting. This guide also includes a comprehensive list of profile options that you can set to customizeapplication behavior.

    Oracle Business Intelligence System Implementation GuideThis guide provides information about implementing Oracle Business Intelligence (BIS) in your environment.

    Oracle Financials Implementation GuideThis guide provides you with information on how to implement the Oracle Financials E-Business Suite. It guides you through setting up your organizations, including legal entities, and their accounting, using the Accounting Setup Manager. It covers intercompany accounting and sequencing of accounting entries, and it provides examples.

  • xxii

    Oracle General Ledger Implementation GuideThis guide provides information on how to implement Oracle General Ledger. Use this guide to understand the implementation steps required for application use, including how to set up Accounting Flexfields, Accounts, and Calendars.

    Oracle General Ledger User's GuideThis guide provides you with information on how to use Oracle General Ledger. Use this guide to learn how to create and maintain ledgers, ledger currencies, budgets, and journal entries. This guide also includes information about running financial reports.

    Oracle Grants Accounting User GuideThis guide provides you with information about how to implement and use Oracle Grants Accounting. Use this guide to understand the implementation steps required forapplication use, including defining award types, award templates, allowed cost schedules, and burden set up. This guide also explains how to use Oracle Grants Accounting to track grants and funded projects from inception to final reporting.

    Oracle HRMS Documentation SetThis set of guides explains how to define your employees, so you can give them operating unit and job assignments. It also explains how to set up an organization (operating unit). Even if you do not install Oracle HRMS, you can set up employees andorganizations using Oracle HRMS windows. Specifically, the following manuals will help you set up employees and operating units:

    Oracle HRMS Enterprise and Workforce Management Guide

    This user guide explains how to set up and use enterprise modeling, organization management, and cost analysis.

    Managing People Using Oracle HRMS

    Use this guide to find out about entering employees.

    Oracle Internet Expenses Implementation and Administration GuideThis book explains in detail how to configure Oracle Internet Expenses and describes itsintegration with other applications in the E-Business Suite, such as Oracle Payables and Oracle Projects. Use this guide to understand the implementation steps required for application use, including how to set up policy and rate schedules, credit card policies, audit automation, and the expenses spreadsheet. This guide also includes detailed information about the client extensions that you can use to extend Oracle Internet Expenses functionality.

  • xxiii

    Oracle Inventory User GuideIf you install Oracle Inventory, refer to this manual to learn how to define project-related inventory transaction types and how to enter transactions in Oracle Inventory. This manual also describes how to transfer transactions from Oracle Inventory to Oracle General Ledger.

    Oracle Payables Implementation GuideThis guide provides you with information on how to implement Oracle Payables. Use this guide to understand the implementation steps required for how to set up suppliers,payments, accounting, and tax.

    Oracle Payables User's GuideThis guide describes how to use Oracle Payables to create invoices and make payments.In addition, it describes how to enter and manage suppliers, import invoices using the Payables open interface, manage purchase order and receipt matching, apply holds to invoices, and validate invoices. It contains information on managing expense reporting, procurement cards, and credit cards. This guide also explains the accounting for Payables transactions.

    Oracle Payments Implementation GuideThis guide describes how Oracle Payments, as the central payment engine for the Oracle E-Business Suite, processes transactions, such as invoice payments from Oracle Payables, bank account transfers from Oracle Cash Management, and settlements against credit cards and bank accounts from Oracle Receivables. This guide also describes how Oracle Payments is integrated with financial institutions and payment systems for receipt and payment processing, known as funds capture and funds disbursement, respectively. Additionally, the guide explains to the implementer how to plan the implementation of Oracle Payments, how to configure it, set it up, test transactions, and how to use it with external payment systems.

    Oracle Project Manufacturing Implementation ManualOracle Project Manufacturing allows your company to associate manufacturing costs and inventory with a project and task. Use this manual as your first source of information if you are implementing Oracle Project Manufacturing.

    Oracle Property Manager Implementation GuideUse this guide to learn how to implement Oracle Property Manager and perform basic setup steps such as setting system options and creating lookup codes, contacts, milestones, grouping rules, term templates, and a location hierarchy. This guide also describes the setup steps that you must complete in other Oracle applications before you can use Oracle Property Manager.

  • xxiv

    Oracle Property Manager User GuideUse this guide to learn how to use Oracle Property Manager to create and administer properties, space assignments, and lease agreements.

    Oracle Public Sector Advanced Features User GuideOracle Public Sector Advanced Features is an overlay of features that extend the existing functionality of Oracle Financials for the specific needs of the Public Sector. This guide provides information about setting up and using Oracle Public Sector Advanced Features. These features include multi-fund accounts receivable, encumbrance reconciliation reports, Governmental Accounting Standards Board (GASB) 34/35 asset accounting, enhanced funds available inquiry, the Funds Available Detail report, and the Funds Check API.

    Oracle Purchasing User's GuideThis guide describes how to create and approve purchasing documents, including requisitions, different types of purchase orders, quotations, RFQs, and receipts. This guide also describes how to manage your supply base through agreements, sourcing rules, and approved supplier lists. In addition, this guide explains how you can automatically create purchasing documents based on business rules through integrationwith Oracle Workflow technology, which automates many of the key procurement processes.

    Oracle Receivables User GuideThis guide provides you with information on how to use Oracle Receivables. Use this guide to learn how to create and maintain transactions and bills receivable, enter and apply receipts, enter customer information, and manage revenue. This guide also includes information about accounting in Receivables. Use the Standard Navigation Paths appendix to find out how to access each Receivables window.

    Oracle Subledger Accounting Implementation GuideThis guide provides setup information for Oracle Subledger Accounting features, including the Accounting Methods Builder. You can use the Accounting Methods Builder to create and modify the setup for subledger journal lines and application accounting definitions for Oracle subledger applications. This guide also discusses the reports available in Oracle Subledger Accounting and describes how to inquire on subledger journal entries.

    Oracle Time & Labor Implementation and User GuideThis guide describes how to capture work patterns such as shift hours so that this information can be used by other applications such as Oracle General Ledger and Oracle Projects.

  • xxv

    BIS User Guide Online HelpThis guide is provided as online help only from the BIS application and includes information about intelligence reports, Discoverer workbooks, and the Performance Management Framework.

    Installation and System Administration

    Oracle Applications ConceptsThis guide provides an introduction to the concepts, features, technology stack, architecture, and terminology for Oracle Applications. It is a useful first book to read before installing Oracle Applications.

    Installing Oracle ApplicationsThis guide provides instructions for managing the installation of Oracle Applications products. Much of the installation process is handled using Oracle Rapid Install, which minimizes the time to install Oracle Applications and the technology stack by automating many of the required steps. This guide contains instructions for using Oracle Rapid Install and lists the tasks you need to perform to finish your installation. You should use this guide in conjunction with individual product user's guides and implementation guides.

    Oracle Applications Upgrade Guide: Release 11i to Release 12Refer to this guide if you are upgrading your Oracle Applications Release 11i products to Release 12. This guide describes the upgrade process and lists database and product-specific upgrade tasks. You must be at Release 11i to upgrade to Release 12. You cannot upgrade to Release 12 directly from releases prior to 11i.

    Maintaining Oracle ApplicationsUse this guide to help you run the various AD utilities, such as AutoUpgrade, AutoPatch, AD Administration, AD Controller, AD Relink, License Manager, and others. It contains how-to steps, screenshots, and other information that you need to runthe AD utilities. This guide also provides information on maintaining the Oracle Applications file system and database.

    Oracle Applications System Administrator's GuideThis guide provides planning and reference information for the Oracle Applications System Administrator. It contains information on how to define security, customize menus and online help, and manage concurrent programs.

  • xxvi

    Oracle Alert User's GuideThis guide explains how to define periodic and event alerts to monitor the status of your Oracle Applications data.

    Oracle Applications Developer's GuideThis guide contains the coding standards followed by the Oracle Applications development staff. It describes the Oracle Application Object Library components needed to implement the Oracle Applications user interface described in the Oracle Applications User Interface Standards for Forms-Based Products. It also provides information to help you build your custom Oracle Forms Developer forms so that they integrate with Oracle Applications.

    Other Implementation Documentation

    Multiple Organizations in Oracle ApplicationsThis guide describes how to set up and use Oracle Projects with Oracle Applications' Multiple Organization support feature, so you can define and support different organization structures when running a single installation of Oracle Projects.

    Oracle Workflow Administrator's GuideThis guide explains how to complete the setup steps necessary for any Oracle Applications product that includes workflow-enabled processes, as well as how to monitor the progress of runtime workflow processes.

    Oracle Workflow Developer's GuideThis guide explains how to define new workflow business processes and customize existing Oracle Applications-embedded workflow processes. It also describes how to define and customize business events and event subscriptions.

    Oracle Workflow User's GuideThis guide describes how Oracle Applications users can view and respond to workflow notifications and monitor the progress of their workflow processes.

    Oracle Workflow API ReferenceThis guide describes the APIs provided for developers and administrators to access Oracle Workflow.

    Oracle Applications Flexfields GuideThis guide provides flexfields planning, setup and reference information for the Oracle Projects implementation team, as well as for users responsible for the ongoing

  • xxvii

    maintenance of Oracle Applications product data. This manual also provides information on creating custom reports on flexfields data.

    Oracle eTechnical Reference ManualsEach eTechnical Reference Manual (eTRM) contains database diagrams and a detailed description of database tables, forms, reports, and programs for a specific 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. Oracle eTRM is available on Oracle MetaLink.

    Oracle Applications User Interface Standards for Forms-Based ProductsThis guide contains the user interface (UI) standards followed by the Oracle Applications development staff. It describes the UI for the Oracle Applications productsand tells you how to apply this UI to the design of an application built by using Oracle Forms.

    Oracle Manufacturing APIs and Open Interfaces ManualThis manual contains up-to-date information about integrating with other Oracle Manufacturing applications and with your other systems. This documentation includes APIs and open interfaces found in Oracle Manufacturing.

    Oracle Order Management Suite APIs and Open Interfaces ManualThis manual contains up-to-date information about integrating with other Oracle Manufacturing applications and with your other systems. This documentation includes APIs and open interfaces found in Oracle Order Management Suite.

    Training and Support

    TrainingOracle offers a complete set of training courses to help you and your staff master OracleProjects and reach full productivity quickly. These courses are organized into functionallearning paths, so you take only those courses appropriate to your job or area of responsibility.

    You have a choice of educational environments. You can attend courses offered by Oracle University at any of our many Education Centers, you can arrange for our trainers to teach at your facility, or you can use Oracle Learning Network (OLN), OracleUniversity's online education utility. In addition, Oracle training professionals can tailorstandard courses or develop custom courses to meet your needs. For example, you may want to use your organization structure, terminology, and data as examples in a customized training session delivered at your own facility.

  • xxviii

    SupportFrom on-site support to central support, our team of experienced professionals providesthe help and information you need to keep Oracle Projects working for you. This team includes your Technical Representative, Account Manager, and Oracle's large staff of consultants and support specialists with expertise in your business area, managing an Oracle server, and your hardware and software environment.

    Do Not Use Database Tools to Modify Oracle Applications DataOracle STRONGLY RECOMMENDS that you never use SQL*Plus, Oracle Data Browser, database triggers, or any other tool to modify Oracle Applications data unless otherwise 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 whohas changed your information because SQL*Plus and other database tools do not keep arecord of changes.

  • Part 1OVERVIEW

  • Overview of Oracle Projects APIs, Client Extensions, and Open Interfaces 1-1

    1Overview of Oracle Projects APIs, Client

    Extensions, and Open Interfaces

    This chapter contains an overview of the APIs, Client Extensions, and Open Interfaces that are provided with the Oracle Projects applications.

    This chapter covers the following topics:

    Overview of Oracle Projects APIs, Client Extensions, and Open Interfaces

    Overview of Oracle Projects APIs, Client Extensions, and Open InterfacesOracle Projects integration tools are powerful, flexible tools that enable you to capture data from other Oracle applications or your own applications, define necessary format conversions, and direct data to Oracle Projects.

    Oracle Projects applications provide application programming interfaces (APIs), client extensions, and open interfaces that enable you to:

    Import legacy data into Oracle Applications

    Link Oracle Projects with external applications that you build, applications on othercomputers, and even the applications of your suppliers and customers

    Extend the functionality of Oracle Projects to conform with your business

    Oracle Projects APIsApplication programming interfaces (APIs) are procedures that perform individual functions, such as creating a project based on information in an external system. The public APIs can be employed by users of Oracle Projects to integrate Oracle Projects with external systems.

    APIs are called by programs that you write. You cannot modify the code within the APIs.

  • 1-2 Oracle Projects APIs, Client Extensions, and Open Interfaces Reference

    Details about the Oracle Projects APIs are provided in Section II, Oracle Projects Application Programming Interfaces (APIs).

    Oracle Projects Client ExtensionsClient extensions are procedures that you can modify to extend the functionality of Oracle Projects for your business needs. Each client extension procedure performs a specific task, such as deriving raw cost amounts for labor transactions.

    You can modify the code of client extensions to automate your company's business rules.

    Details about the Oracle Projects client extensions are provided in Section III, Oracle Projects Client Extensions.

    Oracle Projects Open InterfacesAn open interface is a public API that enables you to migrate data from an external system using an interface within the product.

    Oracle Projects provides the Transaction Import open interface, which enables you to load transactions from external cost collection systems into Oracle Projects.

    Details about the Transaction Import are provided in Section III, Oracle Projects Open Interfaces.

  • Part 2ORACLE PROJECTS APIS

  • Introduction to Oracle Projects APIs 2-1

    2Introduction to Oracle Projects APIs

    This chapter contains an introduction to the Oracle Projects APIs. It describes security requirements, error messages, and standard API parameters.

    This chapter covers the following topics:

    Introduction to Oracle Projects APIs

    Overview of the Oracle Projects APIs

    Integrating Your External System with Oracle Projects

    Security Requirements

    Handling Error Messages

    Standard API Parameters

    Common APIs

    Controlling Actions in Oracle Projects

    Using API Procedures

    Introduction to Oracle Projects APIsYou can use the Oracle Projects APIs to integrate an external system (for example, a project management system) with Oracle Projects.

    Note: Some of these APIs were previously documented as Activity Management Gateway APIs. The Activity Management Gateway productis no longer licensed. All of the APIs formerly packaged as the Activity Management Gateway are described in this manual.

    This section provides you with the information you need to understand the structure and processing of the public Application Programming Interfaces (APIs) provided with Oracle Projects.

    This chapter provides the following information:

  • 2-2 Oracle Projects APIs, Client Extensions, and Open Interfaces Reference

    Overview of the Oracle Projects APIs. This section describes some of the ways thatyou can use the public APIs in Oracle Projects to integrate Oracle Projects with external management systems.

    Integrating an External System with Oracle Projects. Follow the steps in this section carefully. A properly integrated system ensures that your external system can access the Oracle Projects database and that your Oracle Applications users can obtain the privileges necessary to use the application programming interfaces (APIs) discussed in this manual.

    Security Requirements. Follow the steps in this section to ensure proper security when users access Oracle Projects data from an external system.

    Handling Error Messages. This section describes how Oracle Projects APIs create error messages, and how to display them in an external application.

    Standard API Parameters. This section describes the standard input and output parameters shared by most of the public APIs in Oracle Projects.

    Common APIs. This section provides details about APIs (GET_MESSAGES, GET_DEFAULTS, and GET_ACCUM_PERIOD_INFO) that are available for use in all Oracle Projects APIs.

    Overview of the Oracle Projects APIsThe Oracle Projects Application Programming Interfaces (APIs) enable you to integrate Oracle Projects with third-party systems to build a complete management tool. You can combine the functionality of your preferred system with the features of Oracle Projects, and then safely share data and exchange information.

    The APIs include more than 150 application programming interfaces that:

    Perform real-time or batch sharing of data between your system and Oracle Projects, thereby eliminating duplicate data entry

    Share business rules and workflow from one system to the other

    Share setup, project planning, resource planning, budgeting, actuals, and progress data

    Detailed descriptions of the APIs are provided in the detail chapters for each Oracle Projects application.

    Applications of the Oracle Projects APIsThe Oracle Projects APIs are generic tools that you can use to integrate Oracle Projects with many types of external or third-party systems, including:

  • Introduction to Oracle Projects APIs 2-3

    Collaborative project planning and scheduling systems. Integrate your enterprise business systems with team-oriented project planning and scheduling tools to provide communication links throughout your company.

    Sales management systems. Enter your sales order using a sales management system and call APIs to create a project in Oracle Projects based on the order information.

    Work management systems. Use the Oracle Projects APIs to tailor a comprehensivesolution that includes your work management system. Companies in the utilities industry commonly use this type of system.

    Customer asset management and plant maintenance systems. Share information about work orders, tasks, assets, crew labor charges, and inventory transactions charged to a project.

    Project manufacturing systems. Join inventory, manufacturing, and financial applications using the APIs, as Oracle's project manufacturing solution does.

    Where Information OriginatesThe Oracle Projects APIs make two-way communication possible between Oracle Projects and a third-party external system. For example, if a purchase order issued against a task is being processed within your enterprise, you can restrict that project's task so it can't be deleted from a desktop project management system. (For more information about restricting certain actions, see: Controlling Actions in Oracle Projects,page 2-30.)

    The following table illustrates the types of information that originates in Oracle Projects:

    Information That Originates in Oracle Projects

    Comments

    Project templates with Quick Entry (overridable) fields

    You can override some of the template's default values when you create a project.

    Resources

    Organizations

    Calendars (both GL and PA periods)

    Estimate to Complete (planned for a future release)

  • 2-4 Oracle Projects APIs, Client Extensions, and Open Interfaces Reference

    Information That Originates in Oracle Projects

    Comments

    Actuals: cost amounts (raw and burdened), commitments (raw and burdened), quantities, revenue, PA or GL period, inception-to-date, period-to-date

    Oracle Projects acts as the central repository ofall project actuals, maintains common business rules (such as transaction controls), and collects a wide variety of transactions. Such transactions include phone usage records, labor, depreciation, commitments, usages, and expenses. Oracle Projects also performs complex cost burdening, generates revenue, and sends summarized information to external systems.

    The following table illustrates the types of information that originates in an external system (in this case, a project management system).

    Information That Originates in Your ProjectManagement System

    Comments

    Projects and tasks of the work breakdown structure (WBS)

    Budgets: Types, Time-Phased, Amounts, Quantities, Baseline

    Project managers can enter and baseline budgets from their preferred project management system or from Oracle Projects. Accounting personnel can enter budgets directly into Oracle Projects. Both types of employees can draft and update their own budget versions. Budgets created using projectmanagement systems integrate with Oracle Projects' budget calculation extensions.

    Schedules and schedule changes

    Task parent reassignment You can reassign a task to a different parent task as long the reassigned task remains underthe same top task.

    Percent complete: project level, WBS (any level)

    Once you send this information to Oracle Projects, you can use billing extensions to produce progress billings. You can view this information in Oracle Projects using the project status inquiry (PSI) client extension.

  • Introduction to Oracle Projects APIs 2-5

    Information That Originates in Your ProjectManagement System

    Comments

    Earned value progress reporting: Budgeted Cost of Work Scheduled, Budgeted Cost of Work Performed, Actual Cost of Work Performed, Budget at Completion

    You can use earned value reporting to determine cost variance, schedule variance, and variance at completion. To view this information in Oracle Projects, use the PSI client extension.

    Integrating Your External System with Oracle ProjectsAfter you install and implement Oracle Projects, you can integrate your external systemwith Oracle Projects. Follow the steps below to ensure that your external system can access the Oracle Projects database and that your Oracle Applications users can obtain the privileges necessary to use the APIs discussed throughout this manual.

    Step 1: Create a Database RoleCreate a special database role and assign it to anyone who will use the Oracle Projects APIs. You need to perform this step only once for each database, regardless of the number of users. Users can define their own role names. Oracle Projects provides the script paamgcrole.sql to create and assign these database roles. The script resides in the $PA_TOP/sql directory on the server and creates an output file called paamgcrole.lst. Run the script from any directory in which you have write privileges. You run this script as any user, such as SYSTEM or SYS with Create Role and Grant privileges on Oracle Projects Public APIs and Views.

    The script requires the following arguments:

    New database role name, such as PMXFACE

    Username for the Oracle Applications user account, such as APPS

    From a SQL*Plus session, use the following syntax to run the script:start $PA_TOP/sql/paamgcrole.sql &role &un_apps

    For example, to create the role PMXFACE in the APPS account, enter:start $PA_TOP/sql/paamgcrole.sql PMXFACE APPS

    The script creates the role, and grants the necessary privileges on the required database objects. Check the file paamgcrole.lst to ensure that the script completed successfully.

  • 2-6 Oracle Projects APIs, Client Extensions, and Open Interfaces Reference

    Step 2: Create an Oracle Applications UserAll API users must first be defined as Oracle Applications users. To define Oracle Applications users and their required responsibilities, use the Oracle Applications Userswindow. See: Oracle Applications System Administrator's Guide.

    Step 3: Create a Databas