Extensibility for Implementers

Customizing Document Submission Checks

You can extend document submission checks by using the following custom hooks:

These custom hooks for document submission checks are applicable to the following CLM documents:

The documentation on how to code these submission checks is available as comments in the files PO_CUSTOM_SUBMISSION_CHECK_PVT.plb and PO_CUSTOM_SUBMISSION_CHECK_PVT.pls.

Location of the files:

$PO_TOP/patch/115/sql/PO_CUSTOM_SUBMISSION_CHECK_PVT.plb

$PO_TOP/patch/115/sql/PO_CUSTOM_SUBMISSION_CHECK_PVT.pls

The packages are always enabled, requiring no profile options to enable them.

Customizing Funds Check

You can extend the funds check function by using the following custom hook:

Procedure for custom funds check : PO_CUSTOM_FUNDS_PKG.do_action (Fired after the standard Oracle Funds Check and overrides the results of the standard Funds Check.)

This custom hook for Funds Check is applicable to the following CLM documents:

The documentation on how to code the Funds Check is available as comments in the files PO_CUSTOM_FUNDS_PKG.plb and PO_CUSTOM_FUNDS_PKG.pls.

Location of the files:

$PO_TOP/patch/115/sql/PO_CUSTOM_FUNDS_PKG.pls

$PO_TOP/patch/115/sql/PO_CUSTOM_FUNDS_PKG.plb

The packages are always enabled, requiring no profile option to enable them.

Customizing the Print Function

With some standard forms related to Award, there is a requirement to include certain FAR clauses as the print output or not. This depends on how clauses will be modeled, therefore a custom hook is provided where the logic can be written during implementation.

The Package is: PO_DT_CUSTOM_PKG and the function is: FUNCTION get_clause_number(p_header_id NUMBER ) RETURN VARCHAR2;

This function is used to check whether the specified FAR clauses are present as part of the given header id. It returns Y if clauses are present or N if specific clauses are not present.

PO_DT_CUSTOM_PKG

Implementation must be provided for the following custom package: PO_DT_CUSTOM_PKG. The following methods have been added for this package:

Location of the files are: $PO_TOP/patch/115/sql/PO_DT_CUST.pls and $PO_TOP/patch/115/sql/PO_DT_CUST.plb

The packages are always enabled, requiring no profile options to enable them.

PON_DT_CUSTOM_PKG

Implementation must be provided for the following custom package: PON_DT_CUSTOM_PKG. The following methods have been added for this package:

Location of the files are: $PON_TOP/patch/115/sql/PON_DT_CUST.pls and $PON_TOP/patch/115/sql/PON_DT_CUST.plb

The packages are always enabled, requiring no profile options to enable them.

Customizing the Contracts Function

OKC_CODE_HOOK.IS_NOT_PROVISIONAL_SECTION is the code hook that can be leveraged to exclude provisional sections flowing down to the downstream document.

Package: OKC_CODE_HOOK (File OKCCCHKB.pls). Function: IS_NOT_PROVISIONAL_SECTION (p_section_heading IN VARCHAR2). Section Name is the input parameter for this function.

Example illustrating implementation of code hook:

 FUNCTION IS_NOT_PROVISIONAL_SECTION
( p_section_heading IN VARCHAR2
) RETURN VARCHAR2
IS
x_hook_used NUMBER;

BEGIN
x_hook_used := 1;
IF x_hook_used = 1 THEN
-- An example: 'Section K' is a provisional section, then the following piece of code is to be added in the code hook.
              IF p_section_heading = 'Section K' THEN
                 RETURN FND_API.G_FALSE;
              END IF;
          --Note that the section name is case-sensitive
     -One IF block is required for each section name that needs to be dropped
END IF;
RETURN FND_API.G_TRUE;
EXCEPTION WHEN OTHERS THEN
          x_hook_used :=-1;
END IS_NOT_PROVISIONAL_SECTION;

Extending the Workload Assignment feature

Generating Assignment Number

The custom hook 'po_palt_assignments_hook.AssignmentNumberCustHook' is provided as part of the files POPTASHS.pls (package Specification) and POPTASHB.pls (package Body). The custom hook uses Requisition Line IDs as input and returns the Assignment Number. The Assignment Number is used in the Buyer Work Center, when requisition lines are assigned to a workload assignment. Note that you can implement your own code to generate the Assignment Number.

Computing Milestone Completion Date for Assignment

The other custom hooks that are used as part of the concurrent request Compute Milestones Completion Date for Assignment are listed below. They are provided as part of the files POPTMCHS.pls (package Specification) and POPTMCHB.pls (package Body). Implementers can customize the logic to derive the dates for these milestones based on their requirements.These API's take Assignment Number as input and return the relevant date:

The above mentioned package can be extended to compute the completion date for user defined milestones.

Extending the Pre-Filled Information region

To extend the Pre-Filled Information region in a CAR, perform the following steps:

Modify the Data Source

  1. The BI Publisher data template forms the XML source. The following are the seeded data definition used to generate the XML payload.

    Data Definition Code Name
    POAWDFPDSNG Award Data Template for FPDS-NG
    POIDVFPDSNG IDV Data Template for FPDS-NG
    POAWDMODFPDSNG Award Mod Data Template for FPDS-NG
    POIDVMODFPDSNG IDV Mod Data Template for FPDS-NG
  2. Using the XML Publisher Administrator responsibility > Data Definitions, search for the above definitions using the code mentioned. Download the required definition file.

  3. Modify the data template to include fields required. For more information on how to edit a data template, please refer to the Oracle XML Publisher Administration and Developer's Guide.

  4. Create a new custom data definition using XML Publisher Administrator responsibility > Data Definition and upload the modified file.

  5. The custom definition must be specified in the following profiles so that the XML generation process picks the new definition file:

    Profile Name Data Definition Name
    PO: FPDS-NG Award XML Source Award Data Template for FPDS-NG
    PO: FPDS-NG IDV XML Source IDV Data Template for FPDS-NG
    PO: FPDS-NG Award Mod XML Source Award Mod Data Template for FPDS-NG
    PO: FPDS-NG IDV Mod XML Source IDV Mod Data Template for FPDS-NG

Modify the XML payload XSLT

  1. The XML generated from the data template is then transformed to the payload XML required by FPDS-NG. You can locate the following XSLT in the $OA_HTML folder.

    XSLT File Name Applicable Document
    POAWDFPDSNG.xsl Award XML
    POAWDMODFPDSNG.xsl Award Mod XML
    POIDVFPDSNG.xsl IDV XML
    POIDVMODFPDSNG.xsl IDV Mod XML
  2. Modify this file to include the elements of interest. This is an XSLT file to select the appropriate nodes from the source XML.

  3. This will include the newly added elements to FPDS payload XML with the appropriate namespace. This becomes the source for rendering the pre-fill information.

Modify the XSL template to render the pre-fill

  1. The pre-fill information is rendered using BI Publisher XSL-HTML templates. The following are the seeded template definitions:

    Template Code Name
    POAWDPREFIL Award Pre-fill
    POIDVPREFIL IDV Pre-fill
  2. Using the XML Publisher Administrator responsibility > Templates, search for the above templates using the code mentioned. Download the definition file.

  3. This is an XSL stylesheet that will apply to the XML to render the content. Include the columns of interest from the XML payload. For more information on how to edit template files refer to the Oracle XML Publisher Administration and Developer's Guide.

  4. Upload the modified file to the application using the same responsibility under the appropriate template code.