18Defining Integration Workflows for Siebel Energy
Defining Integration Workflows for Siebel Energy
This chapter explains integration using prebuilt sample workflows that might be provided with your Siebel application or that might be available on request. It includes the following topics:
About Integration Workflows in Siebel Energy
A workflow process is a sequence of steps that automates a business function. Some workflow processes (also known as business processes) allow your company to integrateSiebel Energy with back-office applications and databases. You can implement integration with third-party applications by using the following resources and techniques:
Prebuilt workflows. Some prebuilt workflow processes are included in the sample database distributed with Siebel Energy, along with prebuilt integration objects in the Siebel Tools repository. If a workflow process mentioned in this chapter is not in your Siebel application’s sample database, then it might be available on request. For help with requesting a workflow process, contact your Oracle sales representative to request assistance from Oracle's Professional Services.
Manual integration. Your company can automate the integration between Siebel Energy and other applications manually. To automate the integration between Siebel Energy and other applications manually, you normally use both Oracle’s Siebel Business Process Designer and Siebel Enterprise Application Integration (Siebel EAI).
This chapter covers the following subjects:
Information about how sample integration workflow processes can be used to automate or partially automate a business process.
Descriptions of sample integration workflow processes that are available in the Siebel Energy sample database.
Details of sample workflow processes to help you understand how a workflow process is set up. Refer to these samples when you design your own integration workflow processes.
You can automate business processes using workflow processes in combination with Business Process Administration. This chapter does not give detailed information about Business Process Administration or application integration in general. For information about these topics, see Siebel Business Process Framework: Workflow Guide and the Siebel Enterprise Application Integration (Siebel EAI) guides, available on the Siebel Bookshelf.
Terminology for Integration Workflows in Siebel Energy
This topic describes some terms used in this chapter in the context of workflow processes.
Siebel EAI. Siebel Enterprise Application Integration (Siebel EAI) is a set of tools, technologies, and prebuilt functional integrations that facilitate application integration. It supports message-based integration with external applications. Using Oracle’s Siebel Enterprise Application Integration (Siebel EAI) module, a service provider can connect Siebel Energy directly to another application within the operational support architecture or connect to a hub or queue. This process allows middleware vendors to build their own Siebel-to-third-party connectors.
Integration Objects. Integration objects define the content of the messages that are initiated or received by Siebel Energy. They are based on business objects. The repository stores both integration objects and the mapping between business objects and integration objects.
Business Services. Business services act on objects to move data, convert data formats, and perform calculations. TheSiebel Energy repository contains some business services that specifically help with integration tasks. You can also build your own in Siebel Tools (at design time) or in the Siebel Web client (at run time).
Workflow Processes. Workflow processes are sequences of steps that are used by Business Process Administration to automate a business function. Workflow process steps call business services that perform the procedures needed to perform a business process.
Sample Integration Workflows for Siebel Energy
This topic describes the sample integration workflow processes.
Some workflow process steps call other workflow processes. For example, the first step of the CUT Send Account Data workflow process calls the CUT Get Account Data workflow process. In this example, the CUT Get Account Data workflow process is a subprocess of the CUT Send Account Data workflow process.
Some sample workflow processes communicate using the EAI MQSeries Transport business service. If your company does not use MQ Series, then you can replace the appropriate step with one that uses either a custom transport business service, the provided HTTP business service, or the provided XML file business service. Business services are located in the Oracle’s Siebel Tools repository and are available for use when defining workflow processes.
The integration objects used in the samples follow:
CUT Sample Account IO
CUT Sample Asset IO
CUT Sample Credit Alert IO
CUT Sample Fraud Alert IO
CUT Sample Sales Order IO
CUT Sample Service Profile IO
CUT Sample Trouble Ticket IO
CUT Sample Work Order IO
CUT Send Account Data Workflow
This workflow sends to back-office applications the customer account data that end users create or modify in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Get Account Data. This step invokes the CUT Get Account Data subprocess. For more information, see CUT Get Account Data Workflow.
Send Account Data. This step invokes the EAI MQSeries Server Transport business service.
CUT Get Account Data Workflow
This workflow retrieves account data fromSiebel Energy to respond to a request from an external application. The external application calls the CUT Send Account Data workflow using the available Siebel object interfaces. The CUT Send Account Data workflow calls this workflow. The external application retrieves the data from Siebel Energy, using this workflow as an API.
Workflow Description. This workflow performs the following actions:
Get Account Data. This step uses the Query method of the EAI Siebel Adapter business service and the CUT Sample Account IO.
Convert to XML. This step uses the Integration Object Hierarchy to XML Document method of the EAI XML Converter business service.
CUT Receive Account Data Workflow
This workflow receives customer account data that is modified in a back-office application because the data must be updated in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Receive Account Update. This step uses the Receive method of the EAI MQSeries Server Transport business service.
Convert to Internal. This step uses the XML Document to Integration Hierarchy method of the EAI XML Converter business service.
Update Account. This step uses the Insert or Update method of the EAI Siebel Adapter business service.
CUT Send Service Profile Data Workflow
This workflow synchronizes the service profile data that end users create or modify in Siebel Energy with the service profile data in back-office applications.
Workflow Description
This workflow performs the following actions:
Get Service Profile Data. This step invokes the CUT Get Service Profile Data subprocess. For more information, see CUT Get Service Profile Data Workflow.
Send Service Profile Data. This step uses the EAI MQSeries Server Transport business service.
CUT Get Service Profile Data Workflow
This workflow retrieves service profile data from Siebel Energy to respond to a request from an external application. The external application calls the CUT Send Service Profile Data workflow using the available Siebel object interfaces. The CUT Send Service Profile Data workflow calls this workflow. The external application retrieves the data from Siebel Energy, using this workflow as an API.
Workflow Description
This workflow performs the following actions:
Get Service Profile Data. This step uses the Query method of the EAI Siebel Adapter business service and the CUT Sample Service Profile IO.
Convert to XML. This step uses the Integration Object Hierarchy to XML Document method of the EAI XML Converter business service.
CUT Receive Service Profile Data Workflow
This workflow synchronizes service profile data that end users create or modify in an external application with the service profile data in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Receive Service Profile Update. This step uses the Receive method of the EAI MQSeries Server Transport business service.
Convert to Internal. This step uses the XML Document to Integration Hierarchy method of the EAI XML Converter business service.
Update Service Profile. This step uses the Insert or Update method of the EAI Siebel Adapter business service.
CUT Send Sales Order Data Workflow
This workflow sends to back-office applications the sales order data that end users create in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Get Sales Order Data. This step invokes the CUT Get Sales Order Data subprocess. For more information, see CUT Get Sales Order Data Workflow.
Send Sales Order Data. This step uses the EAI MQSeries Server Transport business service.
CUT Get Sales Order Data Workflow
This workflow retrieves sales order data from Siebel Energy to respond to a request from an external application. The external application calls this workflow using the available Siebel object interfaces. The external application retrieves the data from Siebel Energy directly, using this workflow as an API.
Workflow Description
This workflow performs the following actions:
Get Sales Order Data. This step uses the Query method of the EAI Siebel Adapter business service and the CUT Sample Sales Order IO.
Convert to XML. This step uses the Integration Object Hierarchy to XML Document method of the EAI XML Converter business service.
CUT Receive Sales Order Data Workflow
This workflow receives sales order data that is modified in a back-office application because the data must be updated in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Receive Sales Order Update. This step uses the Receive method of the EAI MQSeries Server Transport business service.
Convert to Internal. This step uses the XML Document to Integration Hierarchy method of the EAI XML Converter business service.
Update Sales Order. This step uses the Insert or Update method of the EAI Siebel Adapter business service.
CUT Send Work Order Data Workflow
This workflow sends to back-office applications the work order data that end users create in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Get Work Order Data. This step invokes the CUT Get Work Order Data subprocess. For more information, see CUT Get Work Order Data Workflow.
Send Work Order Data. This step uses the EAI MQSeries Server Transport business service.
CUT Get Work Order Data Workflow
This workflow retrieves work order data from Siebel Energy to respond to a request from an external application. The external application calls this workflow using the available Siebel object interfaces. The external application retrieves the data from Siebel Energy directly, using this workflow as an API.
Workflow Description
This workflow performs the following actions:
Get Work Order Data. This step uses the Query method of the EAI Siebel Adapter business service and the CUT Sample Work Order IO.
Convert to XML. This step uses the Integration Object Hierarchy to XML Document method of the EAI XML Converter business service.
CUT Receive Work Order Data Workflow
This workflow receives work order data that is modified in a back-office application because the data must be updated in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Receive Work Order Update. This step uses the Receive method of the EAI MQSeries Server Transport business service.
Convert to Internal. This step uses the XML Document to Integration Hierarchy method of the EAI XML Converter business service.
Update Work Order. This step uses the Insert or Update method of the EAI Siebel Adapter business service.
CUT Send Trouble Ticket Data Workflow
This workflow sends to back-office applications the trouble ticket data that customers create through a Siebel Energy customer application or through a phone call to a CSR.
Workflow Description
This workflow performs the following actions:
Get Trouble Ticket Data. This step invokes the CUT Get Trouble Ticket Data subprocess. For more information, see CUT Get Trouble Ticket Data Workflow.
Send Trouble Ticket Data. This step uses the EAI MQSeries Server Transport business service.
CUT Get Trouble Ticket Data Workflow
This workflow retrieves trouble ticket data fromSiebel Energy to respond to a request from an external application. The external application calls this workflow using the available Siebel object interfaces. The external application retrieves the data from Siebel Energy directly, using this workflow as an API.
Workflow Description
This workflow performs the following actions:
Get Trouble Ticket Data. This step uses the Query method of the EAI Siebel Adapter business service and the CUT Sample Trouble Ticket IO.
Convert to XML. This step uses the Integration Object Hierarchy to XML Document method of the EAI XML Converter business service.
CUT Receive Trouble Ticket Data Workflow
This workflow creates a trouble ticket in a back-office application and sends it to Siebel Energy. Updates to trouble tickets stored in a back-office application are communicated toSiebel Energy in the same way, allowing CSRs to see the latest information about externally generated trouble tickets.
Workflow Description
This workflow performs the following actions:
Receive Trouble Ticket Update. This step uses the Receive method of the EAI MQSeries Server Transport business service.
Convert to Internal. This step uses the XML Document to Integration Hierarchy method of the EAI XML Converter business service.
Update Trouble Ticket. This step uses the Insert or Update method of the EAI Siebel Adapter business service.
CUT Receive Fraud Alert Data Workflow
This workflow creates a fraud alert record in a back-office application and sends it to Siebel Energy. Updates to fraud alert information stored in the back-office application are communicated toSiebel Energy in the same way, allowing CSRs to see the latest information about externally generated alerts.
Workflow Description
This workflow performs the following actions:
Receive Fraud Alert Update. This step uses the Receive method of the EAI MQSeries Server Transport business service.
Convert to Internal. This step uses the XML Document to Integration Hierarchy method of the EAI XML Converter business service.
Update Fraud Alert. This step uses the Insert or Update method of the EAI Siebel Adapter business service.
CUT Receive Credit Alert Data Workflow
This workflow creates a credit alert record in a back-office application and sends it to Siebel Energy. Updates to credit alert information stored in the back-office application are communicated toSiebel Energy in the same way, allowing CSRs to see the latest information about externally generated alerts.
Workflow Description
This workflow performs the following actions:
Receive Credit Alert Update. This step uses the Receive method of the EAI MQSeries Server Transport business service.
Convert to Internal. This step uses the XML Document to Integration Hierarchy method of the EAI XML Converter business service.
Update Trouble Ticket. This step uses the Insert or Update method of the EAI Siebel Adapter business service.
CUT Send Phone Number Data Workflow
This workflow sends to back-office applications the phone number data that end users create in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Get Phone Number Data. This step invokes the CUT Get Phone Number Data subprocess. For more information, see CUT Get Phone Number Data Workflow.
Send Phone Number Data. This step uses the EAI MQSeries Server Transport business service.
CUT Get Phone Number Data Workflow
This workflow retrieves phone number data from to respond to a request from an external application. The external application calls this workflow using the available Siebel object interfaces. The external application retrieves the data fromSiebel Energy directly, using this workflow as an API.
Workflow Description
This workflow performs the following actions:
Get Phone Number Data. This step uses the Query method of the EAI Siebel Adapter business service and the CUT Sample Asset IO.
Convert to XML. This step uses the Integration Object Hierarchy to XML Document method of the EAI XML Converter business service.
CUT Receive Phone Number Data Workflow
This workflow receives phone number data that is modified in a back-office application because the data must be updated in Siebel Energy.
Workflow Description
This workflow performs the following actions:
Receive Phone Number Update. This step uses the Receive method of the EAI MQSeries Server Transport business service.
Convert to Internal. This step uses the XML Document to Integration Hierarchy method of the EAI XML Converter business service.
Update Phone Number. This step uses the Insert or Update method of the EAI Siebel Adapter business service.
Sample Integration Workflow: CUT Send Account Data
This topic examines a send-type sample workflow process to help you understand how the workflow process is set up.
This sample workflow process sends an XML string, created from an account record, to an IBM MQSeries queue. For more information about profiles, see Profiles in Siebel Energy.
The following shows this workflow: Get account data, Send account data.
Workflow Description
This workflow performs the following actions:
Get Account Data. This step invokes the Get Account Data subprocess. For more information about this workflow, see Sample Integration Workflow: CUT Get Account Data.
Send Account Data. This step invokes the EAI MQSeries Server Transport business service to put the XML message onto the MQSeries queue, called Employee. The message is represented by the Message Text argument.
The Queue Manager Name and Physical Queue Name are defined during the MQSeries setup. The Account XML message is sent to the queue specified by the Physical Queue Name property, which is managed by the queue manager specified in the Queue Manager Name property.
CUT Send Account Data Workflow Properties
Properties that apply to all steps of a workflow process are called workflow process properties. These properties apply to all workflow processes. These properties follow:
Error Message
Error Code
Object Id
Siebel Operation Object Id
The CUT Send Account Data workflow has the following additional properties:
Account XML. Specifies the Siebel object that has been converted to XML.
Input: Siebel Int Object Name. Specifies the input Integration Object used in send workflows.
Process Instance Id. Specifies the process instance and is automatically populated when a process is executed and persistence is enabled.
Sample Integration Workflow: CUT Get Account Data
The sample workflow subprocess retrieves account data.
The following shows this subprocess: Get Account Data, Convert to XML.
Workflow Description
This workflow performs the following actions:
Get Account Data. This step uses the query method of the EAI Siebel Adapter business service to get an instance of an account record from the Siebel database. The CUT Sample Account IO describes the structure of the Account business object and was created using the Integration Object Builder. The other part of the query criteria is the Object Id, which is a process property that contains the row ID for the account in the sample DB.
Note: The CUT Sample Account IO value is actually specified as a process property that is used as the input argument for the process step.Convert to XML. This step uses the Integration Object Hierarchy to XML Document method of the Siebel EAI XML Converter business service to convert the outbound Siebel Message to XML and store it in the Account XML output argument.
Sample Integration Workflow: CUT Receive Account Data
This topic examines a receive-type sample workflow process to help you understand how the workflow process is set up.
This sample workflow process receives an XML string from an IBM MQSeries queue and updates the Account instance in the Siebel database.
The following shows this workflow: Receive account update, Convert to internal, Update account.
Workflow Description
This workflow performs the following actions:Receive Account Update. This step uses the Receive method of the EAI MQSeries Server Transport business service to retrieve the inbound message from the Account physical queue. This queue is named in the Physical Queue Name argument.
In this case, the output from the receive step is put into the Account XML process property. The assumption is that the inbound message is already in XML format.
Convert to Internal. This step uses the XML Document to Integration Object Hierarchy method of the Siebel EAI XML Converter business service to convert the inbound message to the Siebel business object format.
The output argument from this step is stored in the Account Message process property, in the Siebel Message format.
Update Account. This step uses the Insert or Update method of the EAI Siebel Adapter business service to perform the updating task. The EAI Siebel Adapter business service checks the Siebel database for an Account record that matches the current instance of Account in the Account Message property, and completes the following actions:
If an Account record matching the current instance does not appear in the database, then the adapter inserts the record into the database.
If an Account record in the database matches the current instance, then the adapter updates the record with the instance.
CUT Receive Account Data Workflow Properties
Set workflow process properties when you need a property to be true for the entire workflow. For example, the CUT Receive Account Data workflow process has five properties. The Error Message, Error Code, Object Id, and Siebel Operation Object Id properties are included in each workflow process by default. The Account XML property defines the MQSeries message as XML recognizable by Oracle’s Siebel Business Applications.
The CUT Receive Account Data workflow process has the following additional properties:
Account Message. Contains the object in its Siebel Energy hierarchical format when converted. It must be in this format before it can be inserted or updated in Siebel Energy.
Account XML. Specifies the Siebel object that has been converted to XML.
Process Instance Id. Specifies the process instance and is automatically populated when a process is executed and persistence is enabled.
Workflows for Oracle Utilities Customer Care and Billing Integration
This topic describes the workflows that support the integration of Siebel Energy with Oracle Utilities Customer Care and Billing. By modifying these workflows, you can configure Siebel Energy functionality according to the business requirements of your company. For more information about workflows and about customizing workflows, see Siebel Business Process Framework: Workflow Guide.
This topic describes the following workflows:
SWI Statement Profile Update Workflow
This workflow calls the SyncCustomerSiebelEventAggregator outbound Web service to synchronize the statement profile details from the Siebel application with the external application. It is called when a change is made to the statement profile details.
The following shows this workflow.

Workflow Description
This workflow performs the following actions:
Query Statement Profile. Queries for the Statement Profile Id of a statement profile in which a change has been made. Derives the value of the UTCCanonical input parameter for this step from the UTCCanonical process property. The default value of this property is N. If the value passed is Y, then the query returns data for any field of the type DTYPE_UTCDATETIME in UTC Canonical format.
Get Custom Attributes. Gets the language and locale details for the Siebel Enterprise Server.
Set Custom Attributes. Sets the Siebel Enterprise Server details, such as the language and locale values, in the request message to make an outbound Web service call.
Statement Profile Update Web Service. Calls the aggregatespevent method of the SyncCustomerSiebelEventAggregator business service and updates the statement profile of the customer record. If the response received contains an error, then the workflow proceeds to the Set Error Msg step.
Set Error Msg. If an error occurs in Step 4, then this step displays an error message.
Associated Business Service Methods
The following table shows the steps in this workflow that call business service methods.
Workflow Step | Method Called | In Business Service |
---|---|---|
Statement Profile Update Web Service |
aggregatespevent |
SyncCustomerSiebelEventAggregator |
Set Error Msg |
CheckAndSetError |
SWI External Integration Service |
SISOMBillingSubmitOrderWebService Workflow
This workflow submits an order from the Siebel application to the billing application and creates a new account, if needed, in the billing application. This workflow is called when a user clicks Submit on the order header of the Sales Orders screen.
The following shows this workflow.

Workflow Description
This workflow performs the following actions:
Run On WorkflowProcMgr. Checks the setting of the RunOnWorkflowProcMgr process property. By default, the RunOnWorkflowProcMgr process property is set to N. If this property is set to Y, then this step calls Step 2 , which runs the workflow on the WorkflowProcMgr object manager. If this property is set to N, then the workflow proceeds to Step 5 and runs on the current object manager.
Submit Sync on WorkflowProcMgr. Calls the workflow recursively with the RunOnWorkflowProcMgr process property set to N, so that the workflow goes through the normal process.
Refresh Order Header. Refreshes the order header to reflect the status and other changes after submission.
Refresh Order Line Items. Refreshes the order line items to reflect the status and other changes after submission and ends the workflow.
Revision>1 & Fulfillment Mode <> TSQ? Checks whether the Order Revision number is greater than 1. If the Order Revision number is greater than 1, then this step checks whether this order is valid.
Invalidate Stale Orders. If the Order Revision number is greater than 1, then this step calls the InValidateStaleOrders method, which checks whether one or more Previous Line Items of the Line Items of the current order has reached the Point of No Return. If one or more Previous Line Items have reached Point of No Return, then Siebel Energy displays an error message and prevents the user from submitting the current order.
Is Invalid Order? Checks whether the Fulfillment Mode is Cancel. Depending on the result, this step takes one of the following actions:
If the Fulfillment Mode is Cancel, then this step determines that the order is already submitted for cancellation and resets the active order.
If the Fulfillment Mode is not Cancel, then this step submits the order and calls the SIS OM Submit Order Process workflow. For more information about the SIS OM Submit Order Process workflow, see Siebel Order Management Guide.
Stop 0. Displays an error message if the user attempts to submit a sales order before the user submits the parent order.
Is Fulfillment Status = Pending, Passed or Failed TSQ? Checks for the Fulfillment Status Code values Pending TSQ, Passed TSQ, and Failed TSQ. Also checks to see whether the Order Status value is not equal to Open. If both conditions are true, then proceeds to Step 10.
Update Fulfillment Mode and Order Header Status. Sets the value of the Fulfillment Status to Deliver, and sets the Status of the order to Open.
Change Line Item Status. Sets the Status of each line item to Open.
Reset Active Order. Resets the Active Order so that the current order is no longer the active order.
Do Synch order? Checks whether the Enable AIA Comms system preference is set to True, or whether Enable AIA Utility is set to True.
Is Fulfillment Mode = Deliver? Checks whether the Fulfillment Mode is Deliver. If the value matches, then only Step 20 is run.
Query Order. Derives the value for the UTCCanonical input parameter of this step from the value of the UTCCanonical process property. The default value for this process property is N.
Is Parent Order Status = Pending? Validates that the status of the parent order is Pending to determine whether the parent order is submitted before the child order (Submitted Order).
Update Order. Updates the Status of the submitted order to Pending if Step 16 returns a value of Yes.
Update Line Items. If the parent order is not submitted, then this step updates the status of the corresponding order line item to Pending.
Is Fulfillment Mode = Deliver? Checks whether the Fulfillment Mode is Deliver. If the Fulfillment Mode is Deliver, then only Step 20 is run.
Compute Previous Values. Derives the value of the UTCCanonical input parameter for this step from the UTCCanonical process property. The default value of this process property is N.
The behavior of the workflow depends on the value of the UTCCanonical process property. If the value is N, then the workflow converts the date values of the Sales Order to UTC and Canonical format. To change this behavior, you can change the default value for the UTCCanonical process property in this workflow to Y.
Note: Previous values are computed when an order is modified from an asset, and during the change order process. Previous values are not computed for revision orders.Get Custom Attributes. Reads the enterprise details, such as the Siebel Enterprise Server name, language, and locale.
Set Custom Attributes. Sets the enterprise details as part of the request message.
AIA Testing Enable? Checks whether the Enable AIA Testing system preference is set to True.
Write to File. Creates an XML file for the submitted order that includes the complete order structure with details of the record, and writes the file to the location specified by the Order Backup Path system preference.
Submit Order WS. Includes an input argument named siebel_transport_param:JMSPriority, which maps the order priority to the JMS priority.
Update Orders. If any of the preceding steps includes an exception, then this step changes the status of the order from Open to Pending.
The following table shows the steps in this workflow that call business service methods.
Workflow Step | Method Called | In Business Service |
---|---|---|
Submit Sync on WorkflowProcMgr |
SubmitRequest |
Server Requests |
Refresh Order Header |
Refresh Business Component |
SIS OM PMT Service |
Refresh Order Line Items |
Refresh Business Component |
SIS OM PMT Service |
Invalidate Stale Orders |
InValidateStaleOrders |
CMU External Integration Service |
Change Line Item Status |
SetLIAccounts |
CUT eSales Order Entry Toolkit Service |
Reset Active Order |
Set Profile Attribute |
SIS OM PMT Service |
Query Order |
Query |
EAI Siebel Adapter |
Compute Previous Step |
ComputePreviousValues |
CMU External Integration Service |
Get Custom Attributes |
GetEnterpriseParameters |
CMU External Integration Service |
Set Custom Attributes |
SetAttributesToMessage |
CMU External Integration Service |
Write to File |
WriteEAIMsg |
EAI XML Write to File |
Submit Order WS |
process |
SWISubmitOrder |