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

Part Number E50337-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
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) for the Oracle Communications Order to Cash Integration Pack for Siebel customer relationship management (Siebel CRM), Oracle Communications Order and Service Management (OSM), and Oracle Communications Billing and Revenue Management (BRM) (the integration). Configuration includes:

Configuring Oracle AIA for Order Fallout Management

To configure Oracle AIA for OFM:

  1. If necessary, update the data seeded by the installation process in the AIA_ERROR_NOTIFICATIONS table. See "Using Error Type to Control Response to Order Fallout" for more information.

  2. Ensure that the SystemType for the applications configured in the AIA_SYSTEMS table matches the COMMON value of the TROUBLETICKET_AREA DVM.

Configuring Siebel CRM for Integrated Order Fallout Management

To configure Siebel CRM for OFM:

  1. Install ACR 474. See Siebel Maintenance Release Guide for information.

  2. Add the following dependencies to Siebel Trouble Ticket Area's List of Values (LOVs) for the trouble ticket functionality:

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

    Add additional values, if required.

    See Siebel documentation for more information on adding values to a LOV.

Working with Domain Value Maps for Order Fallout Management

DVMs are a standard feature of the Oracle 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 Management DMVs

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.


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

Working with Cross-References for Order Fallout Management

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 Management Cross-Reference

Cross-Reference Table Name Column NameCOMMON Column ValueSEBL_01 Description

TROUBLETICKET_TROUBLETICKETID

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.

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


Handling Error Notifications for Order Fallout Management

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 BRM, see the documentation for that product.

See Oracle Fusion Middleware Infrastructure Components and Utilities User's Guide for Oracle Application Integration Architecture Foundation Pack for more information about AIA error handling.

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 BRM, see the documentation for that product.

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 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 OSM pre-built integration options are 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 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 BRM). The expectation is that the fault coming from the application is a BPEL error code: "{http://schemas.oracle.com/bpel/extension}bindingFault". 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 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.

Configuring the Process Integration for Order Fallout Services

Configure the properties described in this section in the AIA_HOME/aia_instances/INSTANCE_NAME/AIAMetaData/config/AIAConfigurationProperties.xml file.

See Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack for more information about working with AIAConfigurationProperties.xml.

Note:

Entries in the AIAConfigurationProperties.xml file are case sensitive

Table 27-5 shows the properties for the CreateTroubleTicketAIACommsReqImpl service.

Table 27-5 CreateTroubleTicketAIACommsReqImpl Properties

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 from Oracle AIA.

EBSOverride.TroubleTicketEBS.CreateTroubleTicket.PortType

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

Port Type of the provider ABCS/EBS service of the CreateTroubleTicket operation.

EBSOverride.TroubleTicketEBS.CreateTroubleTicket.Address

http://${fp.server.soaserverhostname}:${fp.server.soaserverport}/soa-infra/services/default/CreateTroubleTicketSiebelCommsProvABCSImpl/CreateTroubleTicketSiebelCommsProvABCSImpl

Address of the provider ABCS/EBS service CreateTroubleTicket operation.

EBSOverride.TroubleTicketEBS.CreateTroubleTicket.ServiceName

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

Service Name of the provider ABCS/EBS service of the CreateTroubleTicket operation.

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 properties for the CreateTroubleTicketSiebelCommsProvABCSImpl service name.

Table 27-6 CreateTroubleTicketSiebelCommsProvABCSImpl Properties

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).

EBSOverride.TroubleTicketEBSResponse.CreateTroubleTicketResponse.PortType

{http://xmlns.oracle.com/Industry/Comms/CreateTroubleTicketRespOSMCFSCommsJMSProducer/V1}CreateTroubleTicketRespOSMCFSCommsJMSProducer

Port Type of the provider ABCS/EBS service of the CreateTroubleTicketResponse operation.

EBSOverride.TroubleTicketEBSResponse.CreateTroubleTicketResponse.Address

http://${fp.server.soaserverhostname}:${fp.server.soaserverport}/soa-infra/services/default/CreateTroubleTicketRespOSMCFSCommsJMSProducer

Address of the provider ABCS/EBS service of the CreateTroubleTicketResponse operation

EBSOverride.TroubleTicketEBSResponse.CreateTroubleTicketResponse.ServiceName

{http://xmlns.oracle.com/Industry/Comms/CreateTroubleTicketRespOSMCFSCommsJMSProducer/V1}CreateTroubleTicketRespOSMCFSCommsJMSProducer

Service Name of the provider ABCS/EBS service of the CreateTroubleTicketResponse operation

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.SEBL_01.EndpointURI

Endpoint URI of the SEBL_01 Siebel instance

Endpoint URI of the SEBL_01 Siebel instance or CAVS simulator (if RouteToCAVS is true.)

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.


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

Table 27-7 UpdateTroubleTicketSiebelCommsProvABCSImpl Properties

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.SEBL_01.EndpointURI

Endpoint URI of the SEBL_01 Siebel instance

Endpoint URI of the SEBL_01 Siebel instance or CAVS simulator (if RouteToCAVS is true.)


Table 27-8 shows the properties for the CreateOrderFalloutNotificationOSMCFSCommsProvImpl service.

Table 27-8 CreateOrderFalloutNotificationOSMCFSCommsProvImpl Properties

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.OSMCFS_01.EndpointURI

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

Endpoint URI of the service that sends the fallout notification to OSMCFS_01. The default value is the EndpointURI of the out-of-the-box JMS enqueuing or producing service that enqueues or produces the message in the OSM JMS Queue.

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}