7 Available to Promise Check Integration Flow

This chapter provides an overview of the Available to Promise (ATP) Check integration flow and discusses Siebel Customer Relationship Management (Siebel CRM) and Oracle E-Business Suite (Oracle EBS) interfaces, core Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

This chapter includes the following sections:

7.1 ATP Check Requests

The ATP Check integration flow can be called on request before the Create (or Revise) Order integration flow. The ATP Check integration flow starts in Siebel CRM to obtain product availability quantities and dates from Oracle EBS. This data is returned to Siebel CRM so that a Customer Service Representative (CSR) can inform the customer and continue with the order submit process. Calling ATP Check before an order is submitted increases the chances of successfully fulfilling the order from the back office. Setting correct expectations with customers increases customer satisfaction.

The product Id, requested date, and quantities are sent to Oracle EBS to check the available inventory. Oracle EBS can return a promise date and quantity, or it can present multiple promise dates if the desired quantity is not available on the requested date. ATP information can be requested for an order line or for an entire order. Reservations are not supported.

Note:

Inventory locations must be maintained manually in both systems and they must have the same name and address. Inventory Location Ids are manually cross-referenced.

This integration flow works only with Siebel sales orders, not quotes.

Figure 7-1 and Figure 7-2 illustrate where the ATP Check integration flow fits in the Order to Cash integration flow.

Figure 7-1 ATP Check Integration Flow (1 of 2)

ATP Check Integration Flow (1 of 2)

Figure 7-2 ATP Check Integration Flow (2 of 2)

ATP Check Integration Flow (2 of 2)

7.1.2 Solution Assumptions and Constraints

These are the assumptions for the ATP Check integration flow:

  1. Support for ATP Check is only for simple products (that is, Items).

  2. ATP Check cannot be performed against a complex product structure, namely pick-to-order (PTO) or assemble-to-order (ATO).

  3. Available quantity at the line-level appears only when the status is Available.

    For any other ATP status, the quantity value at the line-level is not supplied. If the status is Out of Stock, ATP not applicable, or Plan not found, then the available quantity shown at the line-level is omitted and the actual available status appears at the Promise line-level.

  4. The default requested date that appears in the Siebel CRM fulfillment view is the system date plus one day.

    This value is used for the ATP Check, and the resultant availability reflects this date.

7.1.3 ATP Check Integration Flow

This integration flow uses the following interfaces:

  • CheckATPSalesOrderSiebelReqABCSImpl

  • SalesOrderEBS

  • ProcessSalesOrderATPCheckEbizProvABCSImpl

Figure 7-3 illustrates the ATP Check integration scenario.

Figure 7-3 ATP Check Flow Sequence Diagram

ATP Check Flow Sequence Diagram
  1. From the Siebel Order window, search and select your order.

    1. In the Order window, select the Fulfillment tab.

      A line item appears on the line item applet.

    2. Navigate to the line item applet.

      The promise schedule line applet and request schedule line applet appear at the bottom of the window.

    3. Select a single line item, and click Inquire on the line item applet to check the availability of the current line item.

      Alternatively, click Inquire All to check the availability of all line items for the order.

  2. Invoke the Siebel web service that calls the CheckATPSalesOrderSiebelReqABCSImpl with the operation CheckATP.

  3. The CheckATPSalesOrderSiebelReqABCSImpl transforms the CheckATPSalesOrderReqMsg into the ProcessSalesOrderATPCheckEBM and invokes the SalesOrderEBS with the operation ProcessSalesOrderATPCheck.

  4. The SalesOrderEBS routes the ProcessSalesOrderATPCheckEBM and the operation ProcessSalesOrderATPCheck routes it to the ProcessSalesOrderATPCheckEbizProvABCSImpl.

  5. The ProcessSalesOrderATPCheckEbizProvABCSImpl, with the input message ProcessSalesOrderATPCheckEBM, does a transformation from ProcessSalesOrderATPCheckEBM to the input of the MSC_ATP_BPEL-24CALL_ATP_BPEL API.

  6. The response of the MSC_ATP_BPEL-24CALL_ATP_BPEL API is transformed back to the ProcessSalesOrderATPCheckResponseEBM and the response is sent back to the SalesOrderEBS.

  7. The SalesOrderEBS routes the ProcessSalesOrderATPCheckResponseEBM to the invoking CheckATPSalesOrderSiebelReqABCSImpl, using the ProcessSalesOrderATPCheck operation.

  8. The CheckATPSalesOrderSiebelReqABCSImpl transforms the ProcessSalesOrderATPCheckResponseEBM into the CheckATPSalesOrderRespMsg and the response is sent back to the invoking Siebel web service.

  9. If the integration flow is successful, the ATP amounts appear in Siebel CRM.

7.2 Siebel CRM Interfaces

For the ATP Check integration flow, these are the Siebel CRM web services:

  • ATPCheckInterfaceRequestOrdersIO.xsd

    Siebel should call CheckATPSalesOrderSiebelReqABCSImpl with a CheckATPSalesOrderReqMsg ABM.

  • ATPCheckInterfaceResponseOrdersIO.xsd

    Siebel expects CheckATPSalesOrderRespMsg ABM from CheckATPSalesOrderSiebelReqABCSImpl.

For more information about Siebel web services, see CRM Web Services Reference.

7.3 Oracle EBS Interfaces

For the ATP integration flow, these are the Oracle EBS web services:

  • APPS_XX_BPEL_EBS11I10ATPCHECK_MSC_ATP_BPEL-24CALL_ATP_BPEL.xsd

    Service Name: XX_BPEL_EBS11I10ATPCHECK. MSC_ATP_BPEL$CALL_ATP_BPEL

  • APPS_XX_BPEL_EBS11I10ATPCHECK_MSC_ATP_BPEL-24CALL_ATP_BPEL.xsd

    Service Name: XX_BPEL_EBS11I10ATPCHECK. MSC_ATP_BPEL$CALL_ATP_BPEL

For more information about Oracle E-Business Suite web services and documentation prior to Release 12.1.3, see the library on Oracle Technology Network: http://www.oracle.com/technetwork/documentation/applications-167706.html?. For Oracle E-Business Suite documentation for R12.1.3 and beyond, see this library: https://download.oracle.com/docs/cd/E18727_01/index.htm?

7.4 Core Oracle AIA Components

The ATP Check integration flow uses the following delivered horizontal components:

  • SalesOrderEBO

  • ProcessSalesOrderATPCheckEBM

  • ProcessSalesOrderATPCheckResponseEBM

  • SalesOrderEBS

The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located here: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Core/EBO/

The industry enterprise business service (EBS) WSDL files are located here: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Core/EBO/

For detailed documentation of individual EBOs and EBMs, click the Oracle AIA Reference Doc link on EBO and EBM detail pages in Oracle Enterprise Repository.

For more information about using the Oracle Enterprise Repository and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle AIA SOA Repository."

EBOs can be extended, for instance, to add new data elements. These extensions are protected, and they remain intact after a patch or an upgrade.

For more information, see Oracle Fusion Middleware Concepts and Technologies Guide for Oracle Application Integration Architecture Foundation Pack, "Understanding Extensibility."

7.5 Integration Services

The following services are delivered with the ATP Check integration flow:

  • SalesOrderEBS

  • CheckATPSalesOrderSiebelReqABCSImpl

  • ProcessSalesOrderATPCheckEbizProvABCSImpl

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle AIA SOA Repository."

7.5.1 SalesOrderEBS

For the ATP Check integration flow, the SalesOrderEBS exposes the QuerySalesOrderList operation and:

  • Routes the ProcessSalesOrderATPCheckEBM to the Oracle EBS provider service.

  • Routes the ProcessSalesOrderATPCheckResponseEBM to the requester service.

For more information about this EBS, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Designing and Developing Enterprise Business Services" and Oracle Fusion Middleware Concepts and Technologies Guide for Oracle Application Integration Architecture Foundation Pack, "Understanding Enterprise Business Services."

7.5.2 CheckATPSalesOrderSiebelReqABCSImpl

The CheckATPSalesOrderSiebelReqABCSImpl is the application business connector service (ABCS) implementation that exposes the CheckATP operation related to ATP Check integration on the Siebel ABM.

The CheckATPSalesOrderSiebelReqABCSImpl transforms the Siebel Request Message into the ProcessSalesOrderATPCheckEBM and calls the SalesOrderEBS. The SalesOrderEBS routes it to the provider service ProcessSalesOrderATPCheckEbizProvABCSImpl. The provider service gets the ATPCheck details from the Oracle EBS and sends back the ProcessSalesOrderATPCheckResponseEBM to the routed EBS. The routing EBS then routes it to the CheckATPSalesOrderSiebelReqABCSImpl.

The CheckATPSalesOrderSiebelReqABCSImpl transforms the ProcessSalesOrderATPCheckResponseEBM to the Siebel response message and returns it to the calling Siebel web service.

The CheckATPSalesOrderSiebelReqABCSImpl has the following transformations:

  • XformATPCheckInterfaceRequestOrders_to_ProcessSalesOrderATPCheckEBM

  • XformProcessSalesOrderATPCheckResponseEBM_to_ATPCheckInterfaceResponseOrders

7.5.3 ProcessSalesOrderATPCheckEbizProvABCSImpl

The ProcessSalesOrderATPCheckEbizProvABCSImpl BPEL process is used by the ProcessSalesOrderATPCheck integration flow. The SalesOrderEBS routes the ProcessSalesOrderATPCheckEBM message to the provider ABC ProcessSalesOrderATPCheckEbizProvABCSImpl. This is the provider implementation of ATP for Oracle EBS.

The ProcessSalesOrderATPCheckEbizProvABCSImpl transforms the ProcessSalesOrderATPCheckEBM message to an Oracle EBS API-specific message (ABM Message). The provider ABCS calls the Oracle EBS adapter with the ABM message and gets the ABM response message from Oracle EBS. The ProcessSalesOrderATPCheckEbizProvABCSImpl transforms this response ABM message to the ProcessSalesOrderATPCheckResponseEBM and sends it back to the SalesOrderEBS.