Skip Headers
Oracle® Application Integration Architecture Oracle Communications Order to Cash Integration Pack Implementation Guide for Siebel CRM, Oracle Order and Service Management, and Oracle Billing and Revenue Management
Release 11.1

Part Number E22651-03
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

27 Configuring the Process Integration for Order Fallout Management

This chapter discusses how to configure the process integration for order fallout management (OFM). This includes setting up Oracle Application Integration Architecture (Oracle AIA) and configuring Siebel Customer Relationship Management (Siebel CRM) to integrate with Oracle AIA for communications. It discusses how to work with domain value maps (DVMs) and cross-references, and handling error notifications.

This chapter includes the following sections:

27.1 Setting Up Oracle AIA

27.2 Configuring Siebel CRM to Integrate with Oracle AIA for Communications

To integrate Siebel CRM with Oracle AIA for Communications, you must:

  1. Install ACR 474.

    For information about how to install ACR 474, see the Siebel Maintenance Release Guide.

  2. For the trouble ticket functionality to work correctly, the following dependencies must be manually added to Siebel Trouble Ticket Area's List of Values (LOVs):

    Area:
    Oracle OSM - OLM
    Oracle OSM - Provisioning
    BRM_01 (add for each Oracle BRM Instance. For example, BRM_02, BRM_03)
    
    Sub-Area:
    OSM OLM ABC
    OSM Provisioning ABC
    BRM ABC
    

    Add additional values, if required.

    For more information about adding values to a LOV, see your Siebel documentation.

27.3 Working with DVMs

Domain value maps (DVMs) are a standard feature of the Oracle service-oriented architecture (SOA) Suite. They enable you to equate lookup codes and other static values across applications, for example, FOOT and FT or US and USA.

DVMs are static in nature, though administrators can add additional maps as required. Transactional business processes never update DVMs; they only read from them. DVMs are stored in XML files and cached in memory at run time.

DVM types are seeded for the order fallout flows, and administrators can extend the list of mapped values by adding more maps. The DVM data should be synchronized with what the participating applications use.

Table 27-1 lists the DVMs for the process integration for order fallout.

Table 27-1 Order Fallout Process Integration DVMs

DVM Description

TROUBLETICKET_AREA

DVM to map the Area of the trouble ticket

SEBL_01 column maps to the Area element in Siebel CRM.

COMMON column points to the SystemCode column of the corresponding system in the AIA Systems page.

TROUBLETICKET_SUBAREA

DVM to map the SubArea of the trouble ticket.

SEBL_01 column maps to the Sub-Area element in Siebel CRM.

COMMON column points to the appropriate FailureSubSystemCode or the faulting service.

TROUBLETICKET_STATUS

DVM to map the status of the trouble ticket.

SEBL_01 column maps to the Status element in Siebel CRM.

COMMON column maps to the appropriate status in Oracle AIA.

TROUBLETICKET_SEVERITY

DVM to map the severity of the trouble ticket.

SEBL_01 column maps to the Severity element in Siebel CRM.

COMMON column maps to the appropriate severity (1-5) in Oracle AIA.

TROUBLETICKET_PRIORITY

DVM to map the recovery priority of the trouble ticket.

SEBL_01 column maps to the Priority element in Siebel CRM.

COMMON column maps to the appropriate priority (1-4) in Oracle AIA.


For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with Message Transformations", Working with DVMs and Cross-References.

27.4 Working with Cross-References

Cross-references map and connect the records within the application network, and they enable these applications to communicate in the same language. The integration server stores the relationship in a persistent way so that others can refer to it.

Table 27-2 lists the order fallout cross-reference.

Table 27-2 Order Fallout Process Integration Cross-Reference

Cross-Reference Table Name Column Names Column Values Description

TROUBLETICKET_TROUBLETICKETID

COMMON

SEBL_01

The trouble ticket ID returned by the Siebel web service is cross-referenced to the BusinessComponentID of the TroubleTicket Response enterprise business message (EBM).

The idea is to use this cross-referenced value for making any updates to this trouble ticket. So this cross-referencing is done only when the response is sought from the process CreateTroubleTicketSiebelCommsProvABCSImpl

CreateTroubleTicketResponseEBM/DataArea/CreateTroubleTicketResponse/Identification/BusinessComponentID stores this value.

A randomly generated ID is used as the COMMON value for the trouble ticket and referenced with the Siebel value.

The row ID for the trouble ticket created in Siebel, which is returned in the ListOfSWITroubleTicketIO/TroubleTicket/Id element of the response of the web service, is cross-referenced.


27.5 Handling Error Notifications

Based on the roles defined for the services, email notifications are sent if a service ends due to an error.

Table 27-3 lists the localized custom errors that are caused by the order fallout management services for data insufficiency for creating a trouble ticket.

Table 27-3 Localized Custom Errors

Error Code Message Text

AIA_ERR_AIACOMOFMPI_0001

Data Insufficient for Trouble Ticket Creation. Order Originating System Code not available.

AIA_ERR_AIACOMOFMPI_0002

Data Insufficient for Trouble Ticket Creation. Order ID not available.


For more information about the errors caused by Siebel CRM or Oracle Billing and Revenue Management (Oracle BRM), see the documentation for that product.

For more information about Oracle AIA error handling, see the Oracle Fusion Middleware Infrastructure Components and Utilities User's Guide for Oracle Application Integration Architecture Foundation Pack, "Introduction to Oracle AIA Error Handling" and "Using Trace and Error Logs."

27.5.1 Describing Delivered Error Notification Roles and Users

The following roles and users are delivered as default values for issuing error notifications for the process integration for order fallout management.

Actor roles and users:

  • Role: AIAIntegrationAdmin

  • User: AIAIntegrationAdminUser

    The default password set for all users is welcome1.

For more information about the errors caused by Siebel CRM or Oracle BRM, see the documentation for that product.

For more information about Oracle AIA error handling, see the Oracle Fusion Middleware Infrastructure Components and Utilities User's Guide for Oracle Application Integration Architecture Foundation Pack, "Introduction to Oracle AIA Error Handling" and "Using Trace and Error Logs."

27.5.2 Using Error Type to Control Response to Order Fallout

The ERROR_TYPE column in the AIA Error Notifications table (AIA_ERROR_NOTIFICATION) determines what happens when there is a failure during order processing.

The supported values for ERROR_TYPE are:

  • AIA_EH_DEFAULT - Generates the standard Oracle AIA error notification.

  • AIA_ORDERFALLOUT_CFS - Results in Oracle AIA notifying an order management system or central fulfillment system (such as Oracle Order and Service Management (Oracle OSM)) regarding the order fallout so that it can create and manage the trouble ticket. This value enables the default Order Fallout handling for the Create and Manage Trouble Ticket for Order Fallout business flow.

  • AIA_ORDERFALLOUT_TTS - Results in Oracle AIA creating a trouble ticket for the order fallout. This value enables the default Order Fallout handling for the Create Trouble Ticket for Order Fallout business flow.

The value AIA_EH_DEFAULT can be combined with the value AIA_ORDERFALLOUT_CFS or AIA_ORDERFALLOUT_TTS, using a comma as the separator. For example, AIA_EH_DEFAULT,AIA_ORDERFALLOUT_CFS results in the actions associated with both the values being triggered.

Note:

You cannot have both AIA_ORDERFALLOUT_CFS and AIA_ORDERFALLOUT_TTS values specified for a given record.

If both the Oracle Communications Order to Cash: Siebel CRM pre-built integration option and the Oracle Communications Order to Cash: Oracle OSM pre-built integration option is installed, the seeded value for ERROR_TYPE is AIA_ORDERFALLOUT_CFS. If the Oracle Communications Order to Cash: Siebel CRM pre-built integration option is installed alone (without the Oracle Communications Order to Cash: Oracle OSM pre-built integration option) the seeded value for ERROR TYPE is AIA_ORDERFALLOUT_TTS.

Different ERROR_TYPE values can be given for different combinations of BPEL and ESB service, business process, system code, and error code. As delivered, Oracle AIA seeds these values for all order services. In cases where a service is used in multiple business processes, it is separately seeded for each business process.

In any given order service, there can be two categories of errors:

  • Business Errors

    A business error is usually due to invalid or incomplete data on the order or missing setup in the end fulfillment system, which results in the request to process an order failing. In this case, for the order to be successfully processed, either the order must be corrected or revised and resubmitted, or the setup in the end fulfillment system must be corrected and the order resubmitted. For this type of error, Order Fallout should be triggered.

    This type of error usually happens when an order reaches either the participating or the edge application (such as Oracle BRM). The expectation is that the fault coming from the application is a BPEL error code: "{http://schemas.oracle.com/bpel/extension}bindingFault". Oracle BRM 7.4 returns a bindingFault when it sees a business error in the order.

  • All Other Errors

    This includes system errors. System errors can arise when a certain system (such as Oracle BRM or BRM JCA Adapter) is down. The assumption is that there is actually nothing wrong with the order data itself and when system errors are addressed, the order can be resubmitted without any changes. For these types of errors, Order Fallout should not occur.

Order services are delivered seeded with two entries in the AIA_ERROR_NOTIFICATIONS table:

  • Error Code - "{http://schemas.oracle.com/bpel/extension}bindingFault

    The seeded value for Error Type is either AIA_EH_DEFAULT,AIA_ORDERFALLOUT_TTS or AIA_EH_DEFAULT,AIA_ORDERFALLOUT_CFS. The expected behavior for this case is both standard AIA error notification and order fallout processing occurs.

  • Error Code - null or no value

    The seeded value for Error Type is AIA_EH_DEFAULT. The expected behavior for this case is only standard Oracle AIA error notification occurs.

Table 27-4 is an example entry for the ProcessFulfillmentOrderBillingBRMCommsAddSubProcess order service.

Table 27-4 Example Entry for ProcessFulfillmentOrderBillingBRMCommsAddSubProcess Order Service

Error Code Service Name Error Type Error Extn Handler

--

ProcessFullmentOrderBillingBRMCommsAddSubProcess

AIA_EH_DEFAULT

AIACOM_OFM_EXT

{http://schemas.oracle.com/bpel/extension}bindingFault

ProcessFullmentOrderBillingBRMCommsAddSubProcess

AIA_EH_DEFAULT,AIA_ORDERFALLOUT_CFS

AIACOM_OFM_EXT


If additional error codes are also classified as business errors, you can add new entries into the AIA_ERROR_NOTIFICATIONS table with the appropriate Error Code value.

Note:

The Error Extn Handler value for all order service entries must be AIACOM_OFM_EXT. This is required so that the correct information is in the fallout and the standard error notification.

To update ERROR_TYPE for seed data in the Error Notifications table:

  1. Open the Application Integration Architecture homepage by logging in to http://<httphost>:<soaport>/AIA.

  2. Click the Setup link. This automatically directs you to the Setup - Error Notifications page.

  3. Update the Error Type column with the appropriate value for each service for which you want to change the configuration:

    For example, if you want system errors to trigger order fallout, update this column on the respective records to AIA_EH_DEFAULT,AIA_ORDERFALLOUT_TTS. This indicates that if a particular service errors out, a standard Oracle AIA error notification is created and the error message is sent to Oracle AIA for fallout.

  4. Click Save to save your changes.

  5. Restart Fusion Middleware (FMW).

If you must perform a bulk update for all of the processes, you can use a SQL script to update the table ERROR_TYPE column in the AIA_ERROR_NOTIFICATIONS table with the appropriate values. See the $AIA_HOME/pips/Communications/O2C/DatabaseObjects/AIA_OFM_CreateOrderFalloutAIAErrorNotificationsData.sql for reference. After the table is updated, you must restart FMW.

For more information about setting up error notifications for Oracle AIA process, see Oracle® Fusion Middleware Infrastructure Components and Utilities User's Guide for Oracle Application Integration Architecture Foundation Pack, "Using Error Notifications" and "Using Trace and Error Logs."

27.6 Configuring Properties for Order Fallout Services

Configure the properties for these services in the AIAConfigurationProperties.xml file.

If you have installed the Oracle Communications Order to Cash for Siebel CRM, Oracle OSM, and Oracle BRM integration, you must configure the properties for these services in the AIAConfigurationProperties.xml file.

It is located here: $AIA_INSTANCE/config or <AIA_INSTANCE>/config. All the property values are case-sensitive. All Boolean values are in lowercase.

For more information about requirements for working with AIAConfigurationProperties.xml, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Building AIA Integration Flows", How to Set Up AIA Workstation.

Table 27-5 shows the settings for the CreateTroubleTicketAIACommsReqImpl service name.

serviceName="{http://xmlns.oracle.com/ABCSImpl/AIA/Industry/Comms/CreateTroubleTicketAIACommsReqImpl/V1}CreateTroubleTicketAIACommsReqImpl

Table 27-5 CreateTroubleTicketAIACommsReqImpl Settings

Property Name Value/Default Values Description

Sender.Default. SystemID

COMMON

Use this only if the request message does not contain the system instance ID. This value is always COMMON because this service is triggered by Oracle AIA.

Routing.TroubleTicketEBSV1.CreateTroubleTicket.RouteToCAVS

true/false. Default = false.

Controls whether TroubleTicketEBS routes messages to the validation system or to the Provider ABCS implementation.

Routing.TroubleTicketEBSV1.CreateTroubleTicket.CAVS.EndpointURI

http://${http.host name}:${http.port}/AIAValidationSystemServlet/asyncrequestrecipient

The endpoint URI of the CAVS simulator.

Routing.TroubleTicketEBSV1.CreateTroubleTicket.MessageProcessingInstruction.EnvironmentCode

CAVS/PRODUCTION / Any Value

Default: PRODUCTION

If CAVS, then the message is routed to CAVS.

For other values, the message is routed to the Provider ABCS Implementation.

TroubleTicket.DefaultSeverity

Any number from 1 to 5.

Default = 2.

If the fault message does not have any severity associated with it, the default severity is assigned to the fault message and reflects the same in the trouble ticket.

TroubleTicket.DefaultPriority

Any number from 1 to 4.

Default = 2.

This service assigns the recovery priority for the trouble ticket by default to the value specified in this configuration property.


Table 27-6 shows the settings for the CreateTroubleTicketSiebelCommsProvABCSImpl service name.

{http://xmlns.oracle.com/ABCSImpl/Siebel/Industry/Comms/CreateTroubleTicketSiebelCommsProvABCSImpl/V1}CreateTroubleTicketSiebelCommsProvABCSImpl

Table 27-6 CreateTroubleTicketSiebelCommsProvABCSImpl Settings

Property Name Value/Default Values Description

Default.SystemID

SEBL_01

Siebel system instance code (defined in BSR). Used when the target system cannot be identified from the request message or if the configuration property. TroubleTicket.UseDefaultInstance is set to true.

ABCSExtension.PreXformEBMtoABMTroubleTicketEBM

true/false

Default: false

Value determines whether the ABCS should invoke the Extension service (before the EBM to ABM transformation).

ABCSExtension.PostXformABMtoEBMTroubleTicketEBM

true/false

Default: false

Value determines whether the ABCS should invoke the Extension service (after the ABM to EBM transformation).

ABCSExtension.PreInvokeABSSWITroubleTicketIOABM

true/false

Default: false

Value determines whether the ABCS should invoke the Extension service (PreInvoke Application).

ABCSExtension.PostInvokeABSSWITroubleTicketIOABM

true/false

Default: false

Value determines whether the ABCS should invoke the Extension service (PostInvoke Application).

Routing.SWI_spcTrouble_spcTicket_spcService.RouteToCAVS

true/false

Default: false

Indicates whether the Partner link SWI_spcTrouble_spcTicket_spcService should be routed to CAVS or the actual application.

Routing.SWI_spcTrouble_spcTicket_spcService.CAVS.EndpointURI

http://${http.host name}:${http.port}/AIAValidationSystemServlet/asyncresponsesimulator

Endpoint URI of the CAVS simulator for this partner link - SWI_spcTrouble_spcTicket_spcService.

Routing.SWI_spcTrouble_spcTicket_spcService.SEBL_01.EndpointURI

Endpoint URI of the SEBL_01 Siebel instance

Endpoint URI of the SEBL_01 Siebel instance.

Routing.SWI_spcTrouble_spcTicket_spcService.MessageProcessingInstruction.EnvironmentCode

CAVS/PRODUCTION/Any Value

Acts as a reference and is not used in the service.

TroubleTicket.GenerateTroubleTicketResponse

true/false

Default: false

CreateTroubleTicketSiebelCommsProvABCSImpl creates a trouble ticket response message (creates a cross-reference for the trouble ticket ID with the Siebel ID) and invokes the CommunicationsTroubleTicketResponseEBSV1 if this property is set to true or if the response code attribute is not null. Otherwise, this service acts only as a fire-and-forget flow and ignores the response.

TroubleTicket.UseDefaultInstance

true/false

Default: false

If set to true, overwrites the target Siebel instance to the default instance indicated by the property Default.SystemID.

Gives the user an option to create a trouble ticket in a Siebel instance different from the one where the order was placed.

TroubleTicket.SR_TYPE

Order Failure

SR_TYPE identifies that the trouble ticket is for Order Failure. Siebel web service expects this value to be Order Failure for Order Failure Trouble Tickets.

Routing.TroubleTicketEBSResponseV1.CreateTroubleTicketEBSResponse.RouteToCAVS

true/false

Default: false

Indicates whether the ResponseEBS should route the message to CAVS or the designated target service.

Routing.TroubleTicketEBSResponseV1.CreateTroubleTicketEBSResponse.CAVS.EndpointURI

http://${http.host name}:${http.port}/AIAValidationSystemServlet/asyncresponserecipient

Endpoint URI for the CAVS simulator.

Routing.TroubleTicketEBSResponseV1.CreateTroubleTicketEBSResponse.MessageProcessingInstruction.EnvironmentCode

CAVS/PRODUCTION / Any Value

Default: PRODUCTION

If CAVS, routes the message to CAVS.

For other values, routes the message to the target service.


Table 27-7 shows the settings for the UpdateTroubleTicketSiebelCommsProvABCSImpl service name.

{http://xmlns.oracle.com/ABCSImpl/Siebel/Industry/Comms/UpdateTroubleTicketSiebelCommsProvABCSImpl/V1}UpdateTroubleTicketSiebelCommsProvABCSImpl

Table 27-7 UpdateTroubleTicketSiebelCommsProvABCSImpl Settings

Property Name Value/Default Values Description

Default.SystemID

SEBL_01

Siebel system instance code (defined in BSR). Used when the target system cannot be identified from the request message or if the configuration property TroubleTicket.UseDefaultInstance is set to true.

ABCSExtension.PreXformEBMtoABMTroubleTicketEBM

true/false

Default: false

Value determines whether the ABCS should invoke the Extension service (before the EBM to ABM transformation).

ABCSExtension.PreInvokeABSSWITroubleTicketIOABM

true/false

Default: false

Value determines whether the ABCS should invoke the Extension service (PreInvoke Application).

Routing.SWI_spcTrouble_spcTicket_spcService.RouteToCAVS

true/false

Default: false

Indicates whether the Partner link SWI_spcTrouble_spcTicket_spcService should be routed to CAVS or the actual application.

Routing.SWI_spcTrouble_spcTicket_spcService.CAVS.EndpointURI

http://${http.host name}:${http.port}/AIAValidationSystemServlet/asyncrequestrecipient

Endpoint URI of the CAVS simulator for this partner link - SWI_spcTrouble_spcTicket_spcService.

Routing.SWI_spcTrouble_spcTicket_spcService.SEBL_01.EndpointURI

Endpoint URI of the SEBL_01 Siebel instance

Endpoint URI of the SEBL_01 Siebel instance.

Routing.SWI_spcTrouble_spcTicket_spcService.MessageProcessingInstruction.EnvironmentCode

CAVS/PRODUCTION/Any Value

Acts as a reference and is not used in the service.


Table 27-8 shows the settings for the CreateOrderFalloutNotificationOSMCFSCommsProvImpl service name.

{http://xmlns.oracle.com/ABCSImpl/OSMCFS/Industry/Comms/CreateOrderFalloutNotificationOSMCFSCommsProvImpl/V1}CreateOrderFalloutNotificationOSMCFSCommsProvImpl

Table 27-8 CreateOrderFalloutNotificationOSMCFSCommsProvImpl Settings

Property Name Value/Default Values Description

Default.SystemID

OSMCFS_01

Siebel system instance code (defined in BSR). Used when the target system cannot be identified from the request message or if the configuration property TroubleTicket.UseDefaultInstance is set to true.

Routing.CreateOrderFalloutNotification.RouteToCAVS

true/false

Default: false

Indicates whether the Partner Link CreateOrderFalloutNotification should be routed to CAVS or the JMS Producer service.

Routing.CreateOrderFalloutNotification.CAVS.EndpointURI

http://${http.host name}:${http.port}/AIAValidationSystemServlet/asyncrequestrecipient

Endpoint URI of the CAVS instance.

Routing.CreateOrderFalloutNotification.OSMCFS_01.EndpointURI

http://${http.host name}:${http.port}/orabpel/default/CreateOrderFalloutNotificationOSMCFSCommsJMSProducer/1.0

Endpoint URI of the actual target service.

Routing.CreateOrderFalloutNotification.MessageProcessingInstruction.EnvironmentCode

CAVS/PRODUCTION/Any Value

Acts as a reference and is not used in the service.

Fault.DefaultSeverity

Any number from 1 to 5

Default - 2

If the fault message has no severity associated with it, assigns the default severity to the fault message and reflects the same in the trouble ticket.


The following fields extract the localized values using the aia:getAIALocalizedString xpath function:

EBM Field Name: DataArea / CreateTroubleTicket / Description

Siebel Field Name: Description

ResourceBundle - oracle.apps.aia.core.i18n.AIAListResourceBundle

ResourceBundle Key - TROUBLETICKET_DESCRIPTION

Resource Bundle Value: SalesOrder- {OrderNumber} # {OrderRevision}for Account {AccountName} failed at {Timestamp}

..

EBM Field Name: EBMHeader/BusinessScope/ID

Siebel Field Name: Abstract

ResourceBundle - oracle.apps.aia.core.i18n.AIAListResourceBundle

ResourceBundle Key - TROUBLETICKET_ABSTRACT

Resource Bundle Value: [{Timestamp}] Trouble Ticket for (Sales)Order - {OrderNumber} # {OrderRevision}