Setting up Oracle Utilities Customer Care and Billing
Setting up Oracle Utilities Customer Care and Billing for the integration involves:
For more information on configuring and working with Oracle Utilities Customer Care and Billing, refer to the Oracle Utilities Customer Care and Billing user documentation.
This section provides details about how to configure these items.
Some configurations described may be required for general functionality and do not necessarily relate directly to the integration; however these are called out as particularly significant configuration items. The inclusion of such items does not mean that other general items that are not mentioned do not need to be configured.
Oracle Utilities Customer Care and Billing Admin Data Table Configuration
This section describes the unique setup issues specifically related to configuring your system for the integration.
For more information about configuring Oracle Utilities Customer Care and Billing, see the Oracle Utilities Customer Care and Billing User Guide.
Country
Navigate to the portal under the Admin menu to create as needed.
The Main page is used to customize the fields and field descriptions that are displayed where addresses are used in the system. This ensures that all addresses conform to the customary address format and conventions of the particular country you have defined.
Guideline
Corresponding DVM
Create the Country codes
OUCCB2_OUMDM2_Country
 
Disconnect Location
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Create Disconnect Location codes
 
The codes defined here must exactly match values in the DVM indicated.
OUCCB2_OUMDM2_DisconnectLocation
 
SP Type
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Create SP Types
 
The codes defined here must exactly match values in the DVM indicated.
OUCCB2_OUMDM2_SPType
 
CIS Division
Define a CIS division is associated with a jurisdiction by navigating to the CIS Division portal under the Admin menu. The definition of a jurisdiction is a geographic-oriented entity with unique business rules. For example, if you conduct business in California and Nevada, and each state has different collection rules, you need a separate jurisdiction for each state. Set up a CIS division for each jurisdiction in which you conduct business.
Create the required CIS Division codes. The CIS Division and SA Type combination are concatenated with an exclamation point as a separator of the two values in the DVM indicated.
Example: CIS Division is CA and SA Type is E-RES. The Oracle Utilities Customer Care and Billing value defined in the OUCCB2_OUMDM2_USType dvm is CA!E-RES.
Guideline
Corresponding DVM
Create CIS Division codes
OUCCB2_OUMDM2_USType
 
SA Type
Navigate to the portal under the Admin menu to create as needed. The CIS Division and SA Type combination are concatenated with an exclamation point as a separator of the two values in the DVM indicated.
Example: CIS Division is CA and SA Type is E-RES. The Oracle Utilities Customer Care and Billing value defined in the OUCCB2_OUMDM2_USType DVM is CA!E-RES.
Guideline
Corresponding DVM
Create SA Types
OUCCB2_OUMDM2_USType
 
Meter Type
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Create Meter Types
 
The codes defined here must exactly match values in the DVM indicated.
OUCCB2_OUMDM2_DeviceType
 
Manufacturer and Model
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Create Manufacturer
codes
OUCCB2_OUMDM2_Manufacturer
Create Model codes
OUCCB2_OUMDM2_Model
The codes defined here must exactly match values in the DVM indicated.
 
Meter Configuration Type
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Create Meter Configuration Types
 
The codes defined here must exactly match values in the DVM indicated.
OUCCB2_OUMDM2_DeviceConfigType
 
Read Out Type
Navigate to the Lookup portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Create Read Out Types
 
The codes defined here must exactly match values in the DVM indicated.
OUCCB2_OUMDM2_ReadOutType
 
Service Type
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Create Service Types
 
The codes defined here must exactly match values in the DVM indicated.
OUCCB2_OUMDM2_MCServiceType
 
Unit of Measure
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Define unit of measurement codes.
 
The codes defined here must exactly match values in the DVM indicated.
OUMDM2_OUCCB2_UOM
 
Time of Use
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Define time of use codes
 
The codes defined here must exactly match values in the DVM indicated.
OUMDM2_OUCCB2_TOU
 
Service Quantity Identifier
Navigate to the portal under the Admin menu to create as needed.
Guideline
Corresponding DVM
Define service quantity identifiers
 
The codes defined here must exactly match values in the DVM indicated.
OUMDM2_OUCCB2_SQI
 
Feature Configuration
To enable navigation from Oracle Utilities Customer Care and Billing to Oracle Utilities Meter Data Management, setup the Oracle Utilities Meter Data Management URL option type on the General System Configuration feature configuration. The option value must contain the URL for the Oracle Utilities Meter Data Management system (see the demo environment for an example).
Master Configuration
Navigate to the Master Configuration portal in the Admin menu to configure the Meter Data Management Integration Master Configuration:
Field
Value
External System
MDM
Meter Read High Low Details - Outbound Message Type
Estimated and High- Low Readings Outbound Message Type
To Do Types
To Do Type for the event
Installation Options - Framework
Select the algorithm ‘C1-MDM2HLB’ for the System Event ‘Meter Read High Low Limits’.
Oracle Utilities Customer Care and Billing System Data Table Configuration
This section provides information on configuring system data in Oracle Utilities Customer Care and Billing.
BO Algorithms
Algorithm Type
Description
C1-CMDM2PRI
C1-CMDM2SAI
C1-CMDM2SPI
C1-CMDM2MTRI
C1-CMDM2CFGI
C1-CMDM2SMHI
C1-CMDM2MRI
C1-CMDM2COI
C1-CMDM2COEI
C1-CMDM2BCI
Configure the pre-processing algorithms that create the initial snapshot for the Person, SA, SA Relationship, SP, Meter, Meter Configuration, Meter Read and SP/Meter History entities. Refer to the algorithm descriptions for details on how to specify the parameters below.
Define the read BOs that each of the algorithms uses to build the initial/final snapshot. The following read BOs are delivered for use by these algorithms:
C1-MDM2Person
C1-MDM2Account
C1-MDM2SA
C1-MDM2Premise
C1-MDM2SP
C1-MDM2Meter
C1-MDM2MeterConfiguration
C1-MDM2MR
C1-MDM2SPMeterHistory
C1-MDM2ContractOption
C1-MDM2ContractOptionEvent
C1-MDM2BillCycle
 
If additional elements are needed in the sync request, your implementation may create a child of any of these BOs and add the element under a group called <customElements>. This ensures that they are included in the sync request message at the proper group nodes, so that any custom translation your implementation may decide to do at the integration layer can be done.
 
Define the data area that holds the elements needed in the snapshot. The following data areas are delivered for use by these algorithms:
C1- MDM2PersonBasedSnapshot
C1-MDM2SABasedSnapshot
C1- MDM2SPBasedSnapshot
C1-MDM2MeterBasedSnapshot
C1- MDM2MtrConfigBasedSnapshot
C1-MDM2MRBasedSnapshot
C1- MDM2SPMtrHistorySnapshot
C1-MDM2ContrOptBasedSnapshot
C1-MDM2ContrOptEvBasedSnapshot.
C1-MDM2BillCycleBasedSnapshot
Your implementation should not have to create a custom data area as this already provides a <customElements> node in its schema to allow the addition of any elements not included in the base solution.
 
To also pass additional SP Information like Latitude and Longitude elements as part of the SP Sync, define post script = C1-CapAddSPI as part of parameter1 of Capture MDM2 SP-Based Initial Snapshot algorithm.
 
To filter the qualifying types for each of the syncs define these values in the algorithm, so that only changes to records of these types are communicated across to Oracle Utilities Meter Data Management. (i.e., Person or Business Flag (person type), SA Type, SP Type, Meter Type, Meter Configuration Type – this is used for both Meter Configuration Sync and SP/Meter History Sync., Contract Option Type and Contract Option Event Type)
 
To specify custom read BOs and data areas by Type define your custom BO along with the Type value you wish to use it with.

For example, particular SA types for the SA Sync or particular SP types for the SP sync. The algorithm uses these values instead of those defined in points 1 and 2.
C1-MDM-TMOT
This monitor algorithm sets a timeout limit on the receipt of a response from the external system. Define the number of hours your implementation wishes to wait for a response from Oracle Utilities Meter Data Management before transitioning the sync request into the Error state.
F1-TD-CREATE
This enter algorithm creates a To Do entry. At a minimum, your implementation must define the To Do Type to use in creating the To Do entry and the Characteristic Type For Log Entry used in linking the To Do entry to the sync request via its logs. The base product provides F1-SYNRQ and F1-TODO, respectively, for this purpose. For details on the other parameters used by this algorithm, see the algorithm type description.
C1-CHK-DTSY
This monitor algorithm delays the usage request transmission until all related sync requests are in a final state. If your implementation only wishes to delay usage requests for certain external system sync requests, define the external system as an algorithm parameter.
C1-USGCY-PRE
If your implementation would like to use the automated retry option for batch billing, add the pre-processing algorithm (C1-USGCY-PRE) on the MDM Cyclical Billing Usage Request BO. Refer to the description on the BO for further detail.
C1-TRN-RELSY
If your implementation would prefer online bills to not have to be dependent on sync batch jobs to transition any related sync requests, plug this algorithm in on the MDM Non Cyclical Billing Usage Request BO. Note that the monitor algorithms on the Awaiting Data Sync state of the parent BO need to be moved down to the children BOs (both the Oracle Utilities Meter Data Management Non Cyclical and Cyclical Billing Usage Request BOs). C1-TRN-RELSY needs to be placed before these monitor algorithms. The ongoing sync request BOs in Oracle Utilities Meter Data Management also will need to have the monitor process on their initial states removed (this includes the composite sync request).
 
Maintenance Object Algorithms
Maintenance object audit algorithms contain the logic to instantiate a sync request (as long as one does not already exist in the initial state for the MO-Primary Keys combination). A generic algorithm F1-GCHG-CDCP comes with the base product and is plugged in on maintenance objects that need to instantiate sync requests for the same maintenance object. This algorithm instantiates the BOs defined in the Sync Request BO MO Option (see Maintenance Objects below). For maintenance objects that need a sync request instantiated for a different maintenance object, unique algorithms that contain this logic are used. (Example: Changes to the Account maintenance object need to be communicated via an SA sync request; or changes to the Premise maintenance object need to be communicated via an SP sync).
Algorithm Type
Description
C1-ACCTCDCSA
This algorithm instantiates an SA-based sync request whenever a change to the Account maintenance object is detected. Define the sync request BO to be instantiated in the algorithm’s parameters.
C1-PREMCDCSP
This algorithm instantiates an SP-based sync request whenever a change to the Premise maintenance object is detected. Define the sync request BO to be instantiated in the algorithm’s parameters.
Maintenance Objects
Maintenance Object
Description
PERSON
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2PersonSyncRequest BO in the Sync Request BO MO Option.
ACCOUNT
Specify the MO Audit algorithm configured in the previous section.
SA
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2SASyncRequest BO in the Sync Request BO MO Option.
SP
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2SPSyncRequest BO in the Sync Request BO MO Option.
PREMISE
Specify the MO Audit algorithm configured in the previous section.
METER
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2MtrSyncRequest BO in the Sync Request BO MO Option.
MTR CONFIG
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2MtrConfigSyncRequest BO in the Sync Request BO MO Option.
SP/MTR HIST
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2SpMtrHistSyncRequest BO in the Sync Request BO MO Option.
METER READ
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2MRSyncRequest BO in the Sync Request BO MO Option.
CONTRACT OPT
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2ContractOptSyncRequest BO in the Sync Request BO MO Option.
COP EVENT
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1-MDM2ContrOptEvtSyncRequest BO in the Sync Request BO MO Option.
BILL CYCLE
Specify the generic MO Audit algorithm F1-GCHG-CDCP. Also specify the C1- MDM2BillCycleSyncRequest BO in the Sync Request BO MO Option.
 
Business Objects
Business Object
Description
C1-MDM2PersonSyncRequest
C1-MDM2SASyncRequest
C1-MDM2SPSyncRequest
C1-MDM2MtrSyncRequest
C1-MDM2MtrConfigSyncRequest
C1-MDM2ContractOptSyncRequest
C1-MDM2ContrOptEvtSyncRequest
C1-MDM2BillCycleSyncRequest
 
These business objects define the behavior of the outbound sync requests for Oracle Utilities Meter Data Management. It contains the schema elements monitored and synchronized to Oracle Utilities Meter Data Management.
The following BO Options must be configured to create the outbound sync request:
Outbound Message Type: This has a reference to the outbound message BO to use. The base package includes the following BOs for use with each sync request:
C1-MDM2PersonSyncReqOutMsg
C1- MDM2SASyncReqOutMsg
C1- MDM2SPSyncReqOutMsg
C1- MDM2MtrSyncReqOutMsg
C1- MDM2MtrConfigSyncReqOutMsg
C1- MDM2MRSyncReqOutMsg
C1- SpMtrHistSyncReqOutMsg
C1-MDM2ContrOptSyncReqOutMsg
C1-MDM2ContrOptEvSyncReqOutMsg
C1-MDM2BillCycleSyncReqOutMsg

Refer to “Defining Outbound Message Types” in the user documentation for more information.
External System: This has a reference to the outbound message type and its corresponding configuration for communicating with the external system. The base package includes the message XSL C1-CCBJMSQAddNamespace.xsl. Refer to “External Systems” in the user documentation for more information.
 
 
 
Specify the pre-processing algorithm configured in the previous section.
Specify the time out algorithm as a monitor algorithm on the Awaiting Acknowledgement state for this BO.
Specify the To Do creation algorithm on the Error state for this BO.
 
Depending on the technology used to communicate the sync request to the external system, you may need to create your own enter algorithm and plug it into the Send Request state. The base package comes with an algorithm that creates a message and sends it into a JMS Queue. If your implementation uses this algorithm (C1-CR-OUTMSG), you must define the BO Options for External System and Outbound Message Type.
 
The monitor process on the “Pending” state of the sync request business objects should not be removed by implementation. If near real time processing of sync requests are needed, schedule the sync request monitor batch (F1-SYNRQ) frequently.
C1-UsageRequest
This business object defines the behavior of a usage request.
To configure your system for usage requests using this business object:
Create a bill segment type for service agreements that require bill determinants. This bill segment type should reference the following base product algorithms:
Create Algorithm: Create bill segment using a usage request.
Get Consumption Algorithm: Get bill segment consumption using a usage request.
Set up SA types for service agreements that require bill determinants. These SA types should have a special role flag of Bill Determinants Required and should reference the bill segment type mentioned above.
A cancellation reason is required when a usage request is cancelled. Your implementation must define valid cancel reasons. Navigate to the lookup page and then define valid values for the lookup field C1_USG_CANCEL_RSN_FLG.
Create a 'Check for Response Timeout' algorithm (see above) and specify your timeout criteria. Update the Awaiting Bill Determinants state on the usage request BO to reference the timeout algorithm.
 
In addition to the standard BO options, the following BO options are relevant to usage request business objects:
External System: An external system is required to communicate usage requests to the external system.
Outbound Message Type: An outbound message type is required for the usage request outbound message.
C1-UsageRequestNonCyclical
This business object defines the behavior of a usage request created from non-cyclical or online bill generation.
In addition to the standard BO options, the following BO options are relevant to usage request business objects:
External System: An external system is required to communicate usage requests to the external system.
Outbound Message Type: An outbound message type is required for the non-cyclical billing usage request outbound message. This outbound message type must reference the base MDM Non-Cyclical Billing Usage Request Outbound Message.
C1-UsageRequestCyclicalBilling
This business object defines the behavior of a usage request created from the cyclical or batch billing process.
In addition to the standard BO options, the following BO options are relevant to usage request business objects:
External System: An external system is required to communicate usage requests to the external system.
Outbound Message Type: An outbound message type is required for the cyclical billing usage request outbound message. This outbound message type must reference the base MDM Cyclical Billing Usage Request Outbound Message business object.
 
There are two possible options if MDM is unable to calculate bill determinants within the bill cycle window. The first option is for CCB to create and send a usage request each night of the billing window and for MDM to return an error each night it's unable to calculate usage. The second option is for CCB to send a usage request on the first night of the billing window and for MDM to keep retrying to calculate usage throughout the bill cycle window. If your implementation prefers the latter approach, then specify the Set Automated Retry On Usage Request algorithm on the MDM Cyclical Billing Usage Request BO.
C1-CorrectedReadNotification
 
This business object is used to process a corrected read notification received from Oracle Utilities Meter Data Management. The system attempts to find any frozen bill segments and rebills these segments using one of the following methods:
Given a usage ID (MDM2 integration).
Given a service agreement and corrected read period (MDM1 integration).
To configure your system for corrected read processing using this business object:
Ensure that it's specified as the OCBG Corrected Read BO maintenance object option on the Off Cycle Bill Generator MO (C1-OCBG)
A cancellation reason is required when a corrected read notification is cancelled. Your implementation must define valid cancel reasons. Navigate to the lookup page and define valid values for the lookup field C1_CORRD_CAN_RSN_FLG
 
Create a 'Check for Response Timeout' algorithm (see above) and specify your timeout criteria. Update the Processing Required state on the corrected read BO to reference the timeout algorithm
 
In addition to the standard BO options, the following BO options are relevant to usage request business objects:
System Creation Only: Use this option to identify OCBG BO's that may not be instantiated by a user.
Example: Corrected reads are only created by the system when notification is received from MDM. This option is used to exclude a BO from the drop-down list of valid BO's on add. It also prevents the SA linked to the corrected read OCBG from being skipped by normal billing.
 
 
Menus
Configure the following context menus to allow navigation from Oracle Utilities Customer Care and Billing to Oracle Utilities Meter Data Management:
Menu
Navigation Option
Description
CI_CONTEXTSERVICEPOINT
c1SPMDM2GoTo
Allows navigation from the CCB SP context menu to MDM service point portal
CI_CONTEXTSERVICEAGREEMENT
c1SAMDM2GoTo
Allows navigation from the CCB SA context menu to MDM usage subscription portal
CI_CONTEXTSERVICEAGREEMENT
c1SAGoToMDM2-360
Allows navigation from the CCB SA context menu to MDM 360 View
CI_CONTEXTPERSON
c1PerMDM2GoTo
Allows navigation from the CCB person context menu to MDM contact portal
CI_CONTEXTMETER
c1MtrMDM2GoTo
Allows navigation from the CCB meter context menu to MDM device portal
CI_CONTEXTUSAGE
c1UsgMDM2GoTo
Allows navigation from the CCB usage request context menu to MDM usage transaction portal
Once configured, users should be able to launch the Oracle Utilities Meter Data Management system from these context menus. Also note that these context menus have been configured in the demo environment; use the demo data as a reference.
Batch Scheduling
This is the batch process to run the sync request. It is a generic batch process that is used for different sync processes. It includes parameters that can be used to control which sync request BOs to process.
Batch Code
Description
F1-SYNRQ
Sync Request Monitor Process. This is the batch process to run the sync request. It is a generic batch process that is used for different sync processes. It includes parameters that can be used to control which sync request BOs to process.
 
Batch Parameters
Parameter Description
Value
maintenanceObject
Sync Request maintenance object.
F1-SYNC REQ
(This is the default value.)
isRestrictedByBatchCode
The value of true restricts processing to sync requests whose current state is linked to this batch code.
 
restrictToBusinessObject
Enter a business object code here to limit the process to sync requests linked to this business object.
 
restrictToBOStatus
Enter a status code here to limit the process to sync requests in this state.
PENDING
Populate this value to only process sync request, in Pending status.
 
Batch Code
Description
C1-SYNIL
Generic Sync Request Initial Load - This process creates an initial sync request BO for a particular MO. A script parameter is provided, so implementations can further restrict the creation of initial sync requests to certain records within the MO.
C1-USGDF
Usage Scheduled Monitor Process (Deferred) - This batch process invokes monitoring rules associated with the current state of usage records. This batch needs to be executed twice for the Business Object “C1-UsageRequestCyclicalBilling”, once for Pending state and then for Billing Determinants Received state.
BILLING
Create bills using the bill cycle - The bill cycle process creates bills for accounts with an "open" bill cycle.
 
To generate initial sync requests, submit the C1-SYNIL batch job. (Refer to the previous section for the parameters necessary to set it up.)
To transition Sync Requests out of the Pending state, run the F1-SYNRQ batch job.
To create Usage Requests from batch billing, submit the BILLING batch job.
To transition Usage Requests out of the Pending state or the Billing Determinants Received state, run the C1-USGDF batch job.
For more information about the sync request process, the business objects, maintenance objects, and other components used for this process, see the “Data Synchronization” section in the Oracle Utilities Framework User Guide.
For more information about the usage request process, see the “Defining Meter, Item & Equipment Options” chapter in the Oracle Utilities Customer Care and Billing User Guide.
Oracle Utilities Customer Care and Billing Inbound Message Configuration
This section describes the configuration needed for Oracle Utilities Customer Care and Billing to receive messages from the integration layer by consuming them from the queues.
Note: This Inbound Message Configuration setup is NOT needed if implementation uses the Integration JMS Wrapper processes to receive messages coming from the integration processes. Skip this section and proceed to Oracle Utilities Customer Care and Billing Outbound Message Configuration.
For first-time installation, skip this configuration. For an existing implementation that has already done this setup but want to switch and use the Integration JMS Wrapper processes instead, the JMS configuration can be left as is. These configurations will not be used but the MDB Configuration files must be removed to avoid any issues with message consumption from the queue.
WebLogic Server JMS Configuration
To configure JMS on the Oracle Utilities Customer Care and Billing WebLogic server, log in to the console using the URL http://<server_name>:<port_number>/console.
Example: http://ccbserver:7001/console
Note: The WebLogic Server JMS Configuration is NOT needed if the the JMS Wrappers are installed.
JMS Module
Create a new JMS module in the WebLogic console.
1. Open the WebLogic console and create a new JMS module.
2. Enter a meaningful name for the JMS module. This JMS module is used to create configurations which consume messages from remote WebLogic queues.
Example: MDMInegrationModule.
Foreign Server
Create a new Foreign server under the JMS module in the WebLogic console.
1. Enter the WebLogic console and select the JMS module created for the integration.
2. Create a Foreign server under the JMS module.
3. Enter the following for the Foreign server:
Name: Name for the Foreign server.
Example: CCBMDMForeignServer
JNDI Initial Context Factory: weblogic.jndi.WLInitialContextFactory
JNDI Connection URL: Add the URL for the Integration SOA server in the format t3://<SOA Server>:<SOA_ManagedServer_Port>.
Example: t3://soaserver.com:8002
JNDI Properties Credential: Password for the SOA server user
JNDI Properties - java.naming.security.principal=<SOA Server user>
Example: weblogic.
4. Under the Foreign server, create a foreign destination for each remote queue.
Name: Name of the foreign destination.
Local JNDI Name: Add a local JNDI name for the Integration Queue. Local JNDI name is later added manually as part of configuration in weblogic-ejb-jar.xml > <weblogic-enterprise-bean> > <message-driven-descriptor> > <destination-jndi-name>.
Remote JNDI Name: JNDI name of the queue on the Integration SOA server.
For each integration point, one destination is created.
5. Under the Foreign server, create a Remote Connection Factory according to the following example:
Name: Name of the remote connection factory.
Local JNDI Name: Add a local JNDI name to the Integration Connection Factory. This JNDI name is added manually later as part of configuration in WebLogic-ejb-jar.xml > <weblogic-enterprise-bean> > <message-driven-descriptor> > <connection-factory-jndi-name>.
Remote JNDI Name> JNDI name of the JMS Connection factory on the Integration SOA server.
Example WebLogic Server JMS Setup
Person Sync
Destination Name
Local JNDI Name
Remote JNDI Name
jms/LocalOUCCB2
PersonSyncResponse
jms/OUCCB2
PersonSyncResponse
 
SP Sync
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
SPSyncResponse
jms/LocalOUCCB2
SPSyncResponse
jms/OUCCB2
SPSyncResponse
 
SA Sync
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
SASyncResponse
jms/LocalOUCCB2
SASyncResponse
jms/OUCCB2
SASyncResponse
SA Relationship Sync
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
SARelSyncResponse
jms/LocalOUCCB2SA
RelationshipSyncResponse
jms/OUCCB2SA
RelationshipSyncResponse
 
Meter Sync
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
MeterSyncResponse
jms/LocalOUCCB2
MeterSyncResponse
jms/OUCCB2
MeterSyncResponse
 
Meter Configuration Sync
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
MeterConfigSyncResponse
jms/LocalOUCCB2
MeterConfigSyncResponse
jms/OUCCB2
MeterConfigSyncResponse
 
SP-Meter History Sync
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
SPMeterHistSyncResponse
jms/LocalOUCCB2
SPMeterHistSyncResponse
jms/OUCCB2
SPMeterHistSyncResponse
 
Batch BD
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
BatchBDResponse
jms/LocalOUCCB2
BatchBDResponse
jms/OUCCB2
BatchBDResponse
 
Online BD
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
OnlineBDResponse
jms/LocalOUCCB2
OnlineBDResponse
jms/OUCCB2
OnlineBDResponse
 
Replacement Reads
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
ReplReadRequest
jms/LocalOUCCB2
ReplReadRequest
jms/OUCCB2
ReplReadRequest
 
Scalar Meter Reads
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2Meter
ReadSyncResponse
jms/LocalOUCCB2
MeterReadSyncResponse
jms/OUCCB2
MeterReadSyncResponse
 
Dynamic Options
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2
DyanmicOptSyncResponse
jms/LocalOUCCB2
DynamicOptSyncResponse
jms/OUCCB2
DynamicOptSyncResponse
 
Dynamic Options Events
Destination Name
Local JNDI Name
OUCCB2DynamicOptEvtSyncResponse
jms/LocalOUCCB2OUMDM2DynamicOptEvtSyncResponse
 
Bill Cycle
Destination Name
Local JNDI Name
Remote JNDI Name
OUCCB2BillCycleSyncResponse
jms/LocalOUCCB2BillCycle
SyncResponse
jms/OUCCB2BillCycle
SyncResponse
 
Configuration File Changes for MDBs
Note that the MDB configuration is NOT needed if implementation uses the Integration JMS Wrapper processes to receive messages coming from the integration processes.
Configure Message Driven Beans (MDB)
It is recommended that you use the Oracle Utilities Customer Care and Billing template and the CM (Customer Modification) feature to make changes to these configuration files. This ensures that your modifications cannot be overwritten by future application patches.
Modify files: ejb-jar.xml and ejb-weblogic-jar.xml
Location: Oracle Utilities Customer Care and Billing Enterprise Archive (EAR) file.
Observe the following while making configuration file changes:
The Oracle Utilities Customer Care and Billing configuration files, ejb-jar.xml and ejb-weblogic-jar.xml, must be modified to configure Message Driven Beans (MDB). MDBs which receive messages from the integration queues. These files are part of the Oracle Utilities Customer Care and Billing Enterprise Archive (EAR) file.
The Oracle Utilities Customer Care and Billing application needs to be redeployed after these changes are made.
Managing configuration files: Configuration files such as config.xml, ejb-jar.xml, and ejb-weblogic-jar.xml are managed through template configuration files which reside in the environment's templates directory. When the initialSetup.sh script is executed, environment specific information is combined with the template to create the target file which is then deployed to the correct location. When the environment is started (spl.sh start), changes are automatically deployed to WebLogic.
Templates: Extending existing templates: For Oracle Utilities Customer Care and Billing it is possible to extend existing templates with the use of Include template file(s) in the same location as the existing template. Using #ouaf_user_exit within the target template that is extended, additional configuration from the included template is processed and appended to the target template where the #ouaf_user_exit is present.
Enabling changes for the integration: To enable your changes for integration with Oracle Utilities Meter Data Management it is recommended that you first make a “CM” copy of the existing template and then make your changes to the CM version. If there are any problems with starting the application, delete the CM versions of the files and rerun initialSetup to regenerate and redeploy the original versions.
If you make CM versions of the template files and later install a patch which updates the base template, the CM version will not be updated.
Create an MDB to Receive Messages
Use these steps to create an MDB from the Oracle Utilities Customer Care and Billing inbound queue:
1. Create an MDB for each Oracle Utilities Customer Care and Billing inbound queue to receive messages and invoke the Oracle Utilities Customer Care and Billing service. For simplicity, we refer to the names of the target configuration files in the following examples. However, you should make your changes in the templates/cm_<target file>.include version of the file and then execute initalSetup.sh (Unix) or initalSetup.cmd (Windows) to deploy the generated file.
2. Create or modify the following files to configure the MDBs:
cm_ejb-jar.xml.wls.jms_1.include
cm_ejb-jar.xml.wls.jms_2.include
cm_weblogic-ejb-jar.xml.jms.include
cm_config.xml.jms.include
a. Add the <message-driven> and <container-transaction> tag for each inbound queue in the ejb-jar.xml files. Also, add a security role with role cisusers in the ejb-jar.xml files.
Example: cm_ejb-jar.xml.wls.jms_1.include
<!--Batch BD Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2BatchBDResponse</description>
<display-name>OUCCB2BatchBDResponse</display-name>
<ejb-name>OUCCB2BatchBDResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—Meter Config Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2MeterConfigSyncResponse</description>
<display-name>OUCCB2MeterConfigSyncResponse</display-name>
<ejb-name>OUCCB2MeterConfigSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—Meter Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2MeterSyncResponse</description>
<display-name>OUCCB2MeterSyncResponse</display-name>
<ejb-name>OUCCB2MeterSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—Online BD Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2OnlineBDResponse</description>
<display-name>OUCCB2OnlineBDResponse</display-name>
<ejb-name>OUCCB2OnlineBDResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—Person Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2PersonSyncResponse</description>
<display-name>OUCCB2PersonSyncResponse</display-name>
<ejb-name>OUCCB2PersonSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—Replacement Read Request Integration Point -->
<message-driven>
<description>MDB for OUCCB2ReplReadRequest</description>
<display-name>OUCCB2ReplReadRequest</display-name>
<ejb-name>OUCCB2ReplReadRequest</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—SA Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2SASyncResponse</description>
<display-name>OUCCB2SASyncResponse</display-name>
<ejb-name>OUCCB2SASyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!-SA Relationship Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2SARelationshipSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—Meter History Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2SPMeterHistSyncResponse</description>
<display-name>OUCCB2SPMeterHistSyncResponse</display-name>
<ejb-name>OUCCB2SPMeterHistSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—SP Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2SPSyncResponse</description>
<display-name>OUCCB2SPSyncResponse</display-name>
<ejb-name>OUCCB2SPSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—Meter Read Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2MeterReadSyncResponse</description>
<display-name>OUCCB2MeterReadSyncResponse</display-name>
<ejb-name>OUCCB2MeterReadSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—Dynamic Option Event Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2DynamicOptEvtSyncResponse</description>
<display-name>OUCCB2DynamicOptEvtSyncResponse</display-name>
<ejb-name>OUCCB2DynamicOptEvtSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
<!—Dynamic Option Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2DynamicOptSyncResponse</description>
<display-name>OUCCB2DynamicOptSyncResponse</display-name>
<ejb-name>OUCCB2DynamicOptSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
 
</message-driven>
<!-Bill Cycle Sync Response Integration Point -->
<message-driven>
<description>MDB for OUCCB2BillCycleSyncResponse</description>
<display-name>OUCCB2BillCycleSyncResponse</display-name>
<ejb-name>OUCCB2BillCycleSyncResponse</ejb-name>
<ejb-class>com.splwg.ejb.mdb.MessageProcessor</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
</message-driven>
 
Example: cm_ejb-jar.xml.wls. jms_2.include
<security-role>
<role-name>cisusers</role-name>
</security-role>
 
<!—Batch BD Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2BatchBDResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—Meter Config Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2MeterConfigSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—Meter Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2MeterSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—Online BD Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2OnlineBDResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—Person Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2PersonSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—Replacement Read Request Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2ReplReadRequest</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—SA Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2SASyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—SA Relationship Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2SARelationshipSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—Meter History Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2SPMeterHistSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—SP Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2SPSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—SA Relationship Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2SARelationshipSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!—Meter Read Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2MeterReadSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!-Dynamic Option Event Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2DynamicOptEvtSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!-Dynamic Option Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2DynamicOptSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
<!-Bill Cycle Sync Response Integration Point -->
<container-transaction>
<method>
<ejb-name>OUCCB2BillCycleSyncResponse</ejb-name>
<method-name>onMessage</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
 
b. Modify the cm_weblogic-ejb-jar.xml.jms.include file. Add the <weblogic-enterprise-bean> tag for each inbound queue.
The references in <weblogic-enterprise-bean> tag include:
<ejb-name>: MDB name given in ejb-jar.xml.
<destination-jndi-name>: JNDI name provided in JMS module > Foreign server > Foreign destination > Local JNDI name.
<connection-factory-jndi-name>: JNDI name provided in JMS module > Foreign server > Remote Connection Factory > Local JNDI name.
Example: cm_weblogic-ejb-jar.xml.jms.include
<!—Batch BD Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2BatchBDResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2BatchBDResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
 
<!—Meter Configuration Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2MeterConfigSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2MeterConfigSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!—Meter Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2MeterSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2MeterSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!—Online BD Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2OnlineBDResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2OnlineBDResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!—Person Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2PersonSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2PersonSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!—Replacement Read Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2ReplReadRequest</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2ReplReadRequest</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!—SA Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2SASyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2SASyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!-SA Relationship Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2SARelationshipSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2SARelationshipSyncResponse</destination-
jndi-name>
<connection-factory-jndi-name>jms/
LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!—SP Meter History Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2SPMeterHistSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2SPMeterHistSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!—SP Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2SPSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2SPSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!—Meter Read Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2MeterReadSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2MeterReadSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!-Dynamic Options Event Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2DynamicOptEvtSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2DynamicOptEvtSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!-Dynamic Options Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2DynamicOptSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2DynamicOptSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
<!-Bill Cycle Sync Response Integration Point -->
<weblogic-enterprise-bean>
<ejb-name>OUCCB2BillCycleSyncResponse</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>5</max-beans-in-free-pool>
<initial-beans-in-free-pool>1</initial-beans-in-free-pool>
</pool>
<destination-jndi-name>jms/LocalOUCCB2BillCycleSyncResponse</destination-jndi-name>
<connection-factory-jndi-name>jms/LocalOUCCB2OUMDM2ConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
 
Example: cm_config.xml.jms.include
<jms-system-resource>
<name>CCBMDMForeignServer</name>
<target>myserver</target>
<sub-deployment>
<name>JMSCCBMDMForeignServer</name>
<target>myserver</target>
</sub-deployment>
<descriptor-file-name>jms/ccbmdmintegrationmodule-jms.xml</descriptor-file-name>
</jms-system-resource>
Oracle Utilities Customer Care and Billing Outbound Message Configuration
This section describes the following configuration needed for Oracle Utilities Customer and Billing to send messages out to the integration layer:
All the jms queues/server/JMS connections can be found by navigating to Admin > J > JMS Connection.
Similarly message senders can be found by navigating to Admin > M > Message Sender. In older versions, all JMS related portals can be found under IWS on the Admin menu.
Note: The Outbound Message Configurations (JNDI Server, JMS Queue and JMS Connection) setup are NOT needed when using the Integration JMkS Wrapper processes to send messages to the integration. Proceed to Message Sender, Outbound Message Type and External System Configuration setup.
For new installation and existing implementations that want to use the Integration JMS Wrapper services instead of the queues, follow the instructions above. Existing implementations that has already done the outbound message configuration to send messages to queues can just leave the old setup as is. These configurations will just be ignored and not use.
JNDI Server
Create a new JNDI server pointing to the integration SOA server.
1. Navigate to the JNDI Server portal under the Admin menu.
2. Enter the JNDI server name.
Example: CI_MDM_JNDI
3. Enter the JNDI server description
Example: CCB-MDM Integration server
4. Enter the Provider URL in the format t3//<SOA Server>: <SOA _ManagedServer_Port>.
Example: t3://soaserver.us.oracle.com:8002
5. Enter the Initial Context Factory.
Example: weblogic.jndi.WLInitialContextFactor
JMS Queue
Create a new JMS queue for each integration queue where Oracle Utilities Customer Care and Billing sends messages.
1. Navigate to the JMS Queue portal under the Admin menu.
2. Enter the following:
JMS Queue: Queue name in Oracle Utilities Customer Care and Billing.
Description: Queue description
Queue Name: JNDI name of the queue on the integration server.
Example: jms/OUCCB2PersonSyncRequest
Target Client Flag: JMS
JNDI Server: Select the JNDI server created for integration.
Note: Only define the queues where Oracle Utilities Customer Care and Billing will publish or write messages.
Example JMS Queue Setup
Person Synchronization Integration Process
JMS Queue
Description
Queue Name
Target Client
JNDI Server
CI_MDM2PSyn
Person Sync Request
jms/OUCCB2
PersonSyncRequest
JMS
CI_MDM_JNDI
 
SP Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
CI_MDM2SPSyn
SP Sync Request
jms/OUCCB2
SPSyncRequest
JMS
CI_MDM_JNDI
 
SA Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
CI_MDM2SASyn
SA Sync Request
jms/OUCCB2
SASyncRequest
JMS
CI_MDM_JNDI
SA Relationship Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
SA Relationship Synchronization Integration
SA Relationship Sync Request
jms/OUCCB2
SARelationship SyncRequest
JMS
CI_MDM_JNDI
 
Meter Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
CI_MDM2MSyn
Meter Sync Request
jms/OUCCB2
MeterSyncRequest
JMS
CI_MDM_JNDI
 
Meter Configuration Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
CI_MDM2MCSyn
Meter Configuration
Sync Request
jms/OUCCB2
MeterConfigSyncRequest
JMS
CI_MDM_JNDI
 
SP-Meter History Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
CI_MDM2SHSyn
SP-Meter
History Sync Request
jms/OUCCB2
SPMeterHistSyncRequest
JMS
CI_MDM_JNDI
 
Batch BD Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
BatchBDReq2
Batch Bill
Determinant Request
jms/OUCCB2
BatchBDRequest
JMS
CI_MDM_JNDI
 
Online BD Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
OnlineBDReq2
Online Bill
Determinant Request
jms/OUCCB2OnlineBD
Request
JMS
CI_MDM_JNDI
 
Scalar Meter Read Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
CI_MDM2MRSyn
Scalar Meter
Read Sync Request
jms/OUCCB2
MeterReadSyncRequest
JMS
CI_MDM_JNDI
 
Dynamic Options Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
CI_MDMCOSync
Dynamic Option Sync
Sync Request
jms/OUCCB2Dynamic
OptSyncRequest
JMS
CI_MDM_JNDI
 
Dynamic Option Events Synchronization Integration Process
JMS Queue
Description
Queue Name
Target
Client
JNDI Server
CI_MDMCOESyn
Dynamic Option Events Sync Request
jms/OUCCB2
DynamicOptEvtSync
Request
JMS
CI_MDM_JNDI
 
Bill Cycle Synchronization Integration Process
JMS Queue
Description
Queue Name
Target Client
JNDI Server
CI_MDMBCSync
Bill Cycle Sync Request
jms/OUCCB2
BillCycleSyncRequest
JMS
CI_MDM_JNDI
JMS Connection
Create a new JMS connection used to connect to the integration queues.
1. Navigate to the JMS Connection portal under the Admin menu.
2. Enter the following:
JMS Connection: Connection name in Oracle Utilities Customer Care and Billing.
Description: Connection description
JNDI Server: Select the JNDI server created for this integration (as described in the JNDI Server section).
JNDI ConnectionFactory: JNDI name of the connection factory on the Integration server.
Example: jms/OUCCOUMDMConnectionFactory
JMS
Connection
Description
JNDI Server
JNDI Connection
Factory
CI_MDM2_CF
CCB MDM
Integration Connection
CI_MDM_JNDI
jms/OUCCB2OUMDM2
ConnectionFactory
Message Sender
This section focuses on the message sender.
Message Sender to Invoke Integration Asynchronous Processes
If Oracle Utilities Customer Care and Billing is writing to the integration queues, create a Message Sender for each outbound queue. Refer to Message Sender for Each Outbound Queue setup below.
Note that the Message Sender for each JMS Wrapper Service Configuration is not needed.
If Oracle Utilities Customer Care and Billing is calling the integration JMS Wrapper services, create a Message Sender for each JMS Wrapper service. Refer to Message Sender for Each Integration JMS Wrapper Service setup below.
Note that when the Integration JMS Wrapper Services are used, the Message Sender for each outbound queue configuration is not needed.
Message Sender for Each Outbound Queue
Create a real time Message Sender configured to communicate with the integration queue.
Navigate to the Message Sender portal under the Admin menu. Do the following:
1. Enter a unique Message Sender and its description.
2. Populate the following values:
Message Sender – Sender name in Oracle Utilities Customer Care and Billing.
Description – Description of the sender.
Invocation Type Real-time
Message Class – RTJMSQSNDR (Realtime JMS Queue Sender)
Active - Select the checkbox.
MSG EncodingUTF-8 message encoding
JMS Connection – JMS Connection created for the integration.
JMS Queue – JMS Queue created for the Oracle Utilities Customer Care and Billing outbound queue.
3. Select the Context tab and set values for the following context types:
JMS Message Type (Bytes(Y)/Text(N))N
JMS User Name – User for the SOA server to be accessed.
JMS User Password Password for the SOA server to be accessed.
Message Sender for Each Integration JMS Wrapper Service
Create a real time Message Sender configured to communicate with the integration JMS wrapper service.
Navigate to the Message Sender portal under the Admin menu and do the following:
1. Enter a unique Message Sender and its description.
2. Populate the following values:
Message Sender – Sender name in Oracle Utilities Customer Care and Billing.
Description – Sender description
Invocation Type Real-time
Message Class – SOAPSNDR (SOAP Sender)
Active - Select the checkbox.
MSG EncodingUTF-8 message encoding
3. Select the Context tab and set values for the following context types:
HTTP Header - SOAPAction:"process"
HTTP Login User - User ID to access Integration BPEL process
HTTP Password - Password to access Integration BPEL process
HTTP Method (POST/GET) - POST
HTTP Timeout - 60
HTTP Transport Method - SendReceive
HTTP URL 1 - Set the URL to be accessed. If the URL value does not fit, use the additional HTTP URL types to set the complete URL.
Example Message Sender Setup For Outbound Queues
Person Synchronization Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDM2PSyn
MDM Person
Sync Request Sender
CI_MDM2_CF
CI_MDM2PSyn
SP Synchronization Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDM2SPSyn
MDM SP
Sync Request Sender
CI_MDM2_CF
CI_MDM2SPSyn
SA Synchronization Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDM2SASyn
MDM SA
Sync Request Sender
CI_MDM2_CF
CI_MDM2SASyn
SA Relationship Synchronization Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDM2SARel Syn
MDM SA Relationship
Sync Request Sender
CI_MDM2_CF
CI_MDM2SA
RelSyn
Meter Synchronization Integration Process
Message Sender
Description
JMS
Connection
JMS Queue
CI_MDM2MSyn
MDM Meter
Sync Request Sender
CI_MDM2_CF
CI_MDM2MSyn
Meter Configuration Synchronization Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDM2MCSyn
MDM Meter
Configuration Sync Request Sender
CI_MDM2_CF
CI_MDM2MCSyn
SP-Meter History Synchronization Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDM2SHSyn
MDM SP-Meter
History Sync Request Sender
CI_MDM2_CF
CI_MDM2SHSyn
Batch BD Integration Process
Message Sender
Description
JMS Connection
JMS Queue
 BatchBDReq2
MDM Batch Bill
Determinant JMS Queue Sender
CI_MDM2_CF
 BatchBDReq2
Online BD Integration Process
Message Sender
Description
JMS Connection
JMS Queue
OnlineBDReq2
MDM Online Bill
Determinant JMS Queue Sender
CI_MDM2_CF
OnlineBDReq2
 
Scalar Meter Read Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDM2MRSyn
MDM Scalar Meter
Read JMS Queue Sender
CI_MDM2_CF
CI_MDM2MRSyn
 
Dynamic Options Synchronization Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDMCOSYNC
MDM Contract Option Sync Request Sender
CI_MDM2_CF
CI_MDMCOSync
 
Dynamic Option Synchronization Events Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDMCOESYN
MDM Contract Option Event Sync Request Sender
CI_MDM2_CF
CI_MDMCOESyn
 
Bill Cycle Synchronization Integration Process
Message Sender
Description
JMS Connection
JMS Queue
CI_MDMBCSync
MDM Bill Cycle
Sync Request Sender
CI_MDM2_CF
CI_MDMBCSync
Example Message Sender Setup For Integration JMS Wrapper Services
Person Sync Request JMS Write Service
Message Sender
Description
HTTP URL
PerSynReqJW
Person Sync Request
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/
soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2PersonSyncReqJMS
WriteSvc/OUCCB2OUMDM2
PersonSyncReqJMSWriteSvc_client_ep
SP Sync Request JMS Write Service
Message Sender
Description
HTTP URL
SPSynReqJW
SP Sync Request
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/
soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2SPSyncReqJMS
WriteSvc/OUCCB2OUMDM2
SPSyncReqJMSWriteS vc_client_ep
SA Sync Request JMS Write Service
Message Sender
Description
HTTP URL
SASynReqJW
SASyncRequest
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2SASyncReqJMS
WriteSvc/OUCCB2OUMDM2S
ASyncReqJMSWriteSvc_client_ep
SA Relationship Sync Request JMS Write Service
Message Sender
Description
HTTP URL
SARelSynReqJW
SARelSyncRequest
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2SARelationshipSync
ReqJMSWriteSvc/OUCCB2OUMDM2SA
RelationshipSyncReqJMSWriteSvc_
client_ep
Meter Sync Request JMS Write Service
Message Sender
Description
HTTP URL
MtrSynReqJW
MeterSyncRequest
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/ soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2MeterSyncReqJMS
WriteSvc/OUCCB2OUMDM2
MeterSyncReqJMSWriteSvc_client_ep
SP/Meter History Sync Request JMS Write Service
Message Sender
Description
HTTP URL
SPMHSynReqJW
SPMeterHistory Sync
Request JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/
soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2SPMeterHistSyncReqJMSWriteSvc/OUCCB2OUMDM2
SPMeterHistSyncReqJMSWriteSvc_
client_ep
Meter Configuration Sync Request JMS Write Service
Message Sender
Description
HTTP URL
MtCfSynReqJW
Meter Configuration SyncRequest
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/
soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2MeterConfigSyncReq
JMSWriteSvc/OUCCB2OUMDM2
MeterConfigSyncReqJMSWriteSvc_
client_ep
Batch BD Request JMS Write Service
Message Sender
Description
HTTP URL
BatchBDReqJW
BatchBDRequest
JMS Write Wrapper Service
http://intenv:8001/soa-infra/services/
CCB2-MDM2/OUCCB2OUMDM2Batch
BDReqJMSWrit eSvc/
OUCCB2OUMDM2BatchBDReqJMSWrit
eSvc_client_ep
Online BD Request JMS Write Service
Message Sender
Description
HTTP URL
OnlineBDReqJW
OnlineBDRequest
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/
soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2OnlineBDReqJMS
WriteSvc/ OUCCB2OUMDM2
OnlineBDReqJMSWriteSvc_client_ep
Meter Read Sync Request JMS Write Service
Message Sender
Description
HTTP URL
MRSynReqJW
MeterReadSyncRequest JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/
soa-infra/services/CCB2-MDM2/
OUCCB2OUMDM2MeterReadSyncReqJMSWriteSvc/OUCCB2OUMDM2
MeterReadSyncReqJMSWriteSvc_client_ep
Contract Option Sync Request JMS Write Service
Message Sender
Description
HTTP URL
COSynReqJW
Contract Option Sync Request
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/soa-infra/services/CCB2-MDM2/OUCCB2OUMDM2DynamicOptSyncReq JMSWriteSvc/OUCCB2OUMDM2DynamicOptEvtSync
ReqJMSWriteSvc_client_ep
Contract Option Event Sync Request JMS Write Service
Message Sender
Description
HTTP URL
COEvSynReqJW
ContractOptionEventSyncRequest
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/soa-infra/services/CCB2-MDM2/OUCCB2OUMDM2
DynamicOptEvtSyncReqJMSWriteSvc/OUCCB2OUMDM2DynamicOptEvtSyncReqJMSWriteSvc_client_ep
Bill Cycle Sync Request JMS Write Service
Message Sender
Description
HTTP URL
BCSynReqJW
BillCycleSyncRequest
JMS Write Wrapper Service
http://soa_host:soa_managerServer_Port/soa-infra/services/CCB2-MDM2/ OUCCB2OUMDM2
BillCycleSyncReqJMSWriteSvc/OUCCB2OUMDM2BillCycleSyncReqJMSWriteSvc_client_ep
Note: The endpoint URL for the integration services can be obtained from the SOA EnterpriseManager. From the SOA folder, navigate to Navigator > soa-infra > CCB2-MDM2 partition and select the composite application. At the top of the page, click Test. The composite application's endpoint URL is shown there.
 
 
 
 
 
 
 
 
 
Message Sender to Invoke Integration Synchronous Services
Create a new Message Sender for each Integration Synchronous Service being called.
1. Navigate to the Message Sender portal under the Admin menu.
2. Enter a unique Message Sender and its description.
3. Populate the following values:
Message Sender – Sender name in Oracle Utilities Customer Care and Billing
Example: REGHILOW
Description – Description of the sender.
Invocation Type – Real-time
Message Class – RTHTTPSNDR (Real Time Sender to route messages via HTTP)
Active - Select the checkbox.
MSG Encoding – UTF-8 message encoding
4. Select the Context tab and set values for the following context types:
HTTP Header SOAPAction:"process"
HTTP Login User – User ID to access Integration BPEL process
HTTP Password - Password to access Integration BPEL process
HTTP Method (POST/GET) – POST
HTTP Timeout - 60
HTTP Transport Method - SendReceive
HTTP URL 1 - Set the URL to be accessed. If the URL value does not fit, use the additional HTTP URL types to set the complete URL.
Example Message Sender Setup For Integration Synchronous Services
Get Register Read High-Low Boundaries Integration Process
Message Sender
Description
HTTP URL
REGHILOW
Request For Estimated and
High-Low Readings Sender
LowReadReqEBF/ouccb2oumdm2highlowreadreqebf_client_ep
 
Get Usage Request Integration Process
Message Sender
Description
HTTP URL
WX-RateAnlys
Usage Request
Sender
UsageReqEBF/ouccb2oumdm2ssusagereqebf_client_ep
 
Usage Adjustment Request Integration Process
Message Sender
Description
HTTP URL
WX-UsageAdjs
Usage Adjustment
Request Sender
UsageAdjustmentReqEBF/ouccb2oumdm2ssusageadjustmentreqebf_client_ep
 
SA Activation Bill Cycle Request Integration Process
Message Sender
Description
HTTP URL
DETBILLCYCLE
Determine Bill
Cycle Sender
http://demoenv:8015/soa-infra/services/CCB2-MDM2/OUCCB2OUMDM2SAActivationBillCycleRequestEBF/ouccb2oumdm2saactivationbillcyclereqebf_client_ep
 
 
 
 
 
 
Usage Transaction Info Update Integration Process
Message Sender
Description
HTTP URL
UTSTATUPD
Send UT Info Update Sender
http://demoenv:8015/soa-infra/services/CCB2-MDM2/OUCCB2OUMDM2
UpdateUTInfoEBFUpdateUTInfo
 
 
 
 
 
 
Note: The endpoint URL for the integration processes can be obtained from the SOA Enterprise Manager. From the SOA folder navigate to Navigator> soa-infra > CCB2-MDM2 and select the composite application. At the top of the page, click the Test tab. The composite application’s endpoint URL is shown there.
Outbound Message Type
Create an outbound message type for each Oracle Utilities Customer Care and Billing outbound message to send out.
1. Navigate to the Outbound Message Type portal under the Admin menu.
2. Enter an outbound message type, description, and detailed description.
3. Select the outbound message business object created for a specific outbound queue.
Example Outbound Message Type Setup
Person Synchronization Integration Process
Outbound Message
Type
Description
Business Object
CI_MDM2PSYN
MDM Person Sync
Request Outbound Message
C1-MDM2
PersonSyncReqOutMsg
 
SP Synchronization Integration Process
Outbound Message Type
Description
Business Object
CI_MDM2SPSYN
MDM SP Sync Request
Outbound Message
C1-MDM2
SPSyncReqOutMsg
 
SA Synchronization Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM2SASYN
MDM SA Sync Request
Outbound Message
C1-MDM2SASyncReqOutMsg
SA Relationship Synchronization Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM2SARELSYN
MDM SA Relationship
Sync Request Outbound Message
C1-MDM2SARelSyncReqOutMsg
 
Meter Synchronization Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM2MSYN
MDM Meter Sync Request
Outbound Message
C1-MDM2MtrSyncReqOutMsg
 
Meter Configuration Synchronization Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM2MCSYN
MDM Meter Configuration
Sync Request Outbound Message
C1-MDM2
MtrConfigSyncReqOutMsg
 
SP-Meter History Synchronization Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM2SHSYN
MDM SP-Meter History
Sync Request Outbound Message
C1-MDM2
SpMtrHistSyncReqOutMsg
Batch BD Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM_BBD
MDM Batch Bill
Determinants Outbound Message
C1-CyclicalUsgReqOutMsg
Online BD Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM_OBD
MDM Online
Bill Determinants Outbound Message
C1-NonCyclicalUsgReqOutMsg
Scalar Meter Read Synchronization Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM2MRSYN
MDM Meter Read
Sync Request Outbound Message
C1-MDM2MRSyncReqOutMsg
Get Register Read High-Low Boundaries Integration Process
Outbound
Message Type
Description
Business Object
CI_MDM2RHILO
Request For Estimated
and High-Low Readings
Outbound Message
C1-MDM2EstAndHighLowReqOutMsg
Get Usage Request Integration Process
Outbound
Message Type
Description
Business Object
C1-USAGEREQ
Usage Request Outbound Message
C1-UsageRequestOutMsg
Get Usage Adjustment Request Integration Process
Outbound Message
Type
Description
Business Object
WX-USGADJREQ
Usage Adjustment Request
Outbound Message
C1-UsageAdjustmentsOutMsg
SA Activation Bill Cycle Request Integration Process
Outbound Message
Type
Description
Business Object
CI_DETBILCYC
SA Activation Bill Cycle
Request Outbound
Message
C1-DetSPBillCycleOutMsg
Dynamic Options Synchronization Integration Process
Outbound Message
Type
Description
Business Object
CI_MDMCOSYNC
MDM Contract Option
Sync Request Outbound Message
C1-MDM2ContrOptSyncReqOutMsg
Dynamic Options Event Synchronization Integration Process
Outbound Message
Type
Description
Business Object
CI_MDMCOESYN
MDM Contract Option Event
Sync Request Outbound Message
C1-MDM2ContrOptEvSyncReqOutMsg
Bill Cycle Synchronization Integration Process
Outbound Message
Type
Description
Business Object
CI_MDMBCSYNC
MDM Bill Cycle
Sync Request Outbound Message
C1-MDM2BillCycleSyncReqOutMsg
Usage Transaction Info Update Integration Process
Outbound Message
Type
Description
Business Object
CI-MDMUTUPD
Usage Transaction Info Update Outbound Message
C1-UpdateMDMUsageInfoOutMsg
External System
Create an external system for the integration.
Note: The system supports defining XSLs as a managed content record. For backward compatibility, the system supports defining XSL as a file in the file system. This is a system wide setting that is defined using the Feature Configuration page. The Feature Type is “External Messages” and Option Type is “XSL Location”. Set the value to “F1FL” to support XSL in the file system. The file location is configured using a system property. To support XSL in managed content, no option is needed since it is the default. You may explicitly define the “F1MC” value, if required.
1. Navigate to the External System portal under the Admin menu.
2. Enter a unique external system and description.
Example: Name = CI_MDM, Description = Oracle Utilities Meter Data Management
3. Set the Our Name in Their System field to Customer Care and Billing.
4. Associate the outbound message types created to the external system.
For each outbound message type, set the following:
Outbound Message Type – Set the outbound message type created for Oracle Utilities Customer Care and Billing outbound message.
Processing MethodReal-time
Message Sender – Set the Message Sender created for the message.
Message XSL
When sending to queues - Use C1-CCB2JMSQAddNamespace.xsl
When invoking webservices - Use CDxAddEnvelope-SOAP1-2.xsl
Response XSL
When invoking webservices - Use C1-CCBRemoveEnvEnvelopeAndNamespace.xsl
Note: When sending outbound messages through web services, Message XSL and Response XSL only need to be populated when the Message Sender used for this outbound message type has a Message Class of RTHTTPSNDR (Real Time Sender to route messages via HTTP. Message Senders with Message Class of SOAPSNDR (Sender for real-time HTTP/SOAP messages) do not need to populate the Message XSL and Response XSL to add and remove SOAP envelope.
If Oracle Utilities Customer Care and Billing sends JMS messages to the integration queues, use the message senders created for each outbound queue. See Message Sender for Each Outbound Queue for more information.
If Oracle Utilities Customer Care and Billing is sending JMS messages to the integration JMS Wrapper service, use the message senders create for each JMS Wrapper service. See Message Sender for Each Integration JMS Wrapper Service for more information.
Example: External System – CI_MDM1
Outbound Message Type
Processing Method
Message Sender
Message XSL
CI_MDM2PSYN
Real-time
CI_MDM2PSyn or PerSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM2SPSYN
Real-time
CI_MDM2SPSyn or SPSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM2SASYN
Real-time
CI_MDM2SASyn or SASynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM2SARELSYN
Real-time
CI_MDM2SARelSyn or SARelSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM2MSYN
Real-time
CI_MDM2MSyn or MtrSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM2MCSYN
Real-time
CI_MDM2MCSyn or MtCfSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM2SHSYN
Real-time
CI_MDM2SHSyn or SPMHSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDMCOSYNC
Real-time
CI_MDMCOSync or COPTSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDMCOESYN
Real-time
CI_MDMCOESyn or COEvSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDMBCSYNC
Real-time
CI_MDMBCSync or BCSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM_BBD
Real-time
BatchBDReq2 or BatchBDReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM_OBD
Real-time
OnlineBDReq2 or OnlineBDReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM2MRSYN
Real-time
CI_MDM2MRSyn or MRSynReqJW
C1-CCB2JMSQAddNamespace.xsl
CI_MDM2RHILO
Real-time
REGHILOW
CDxAddEnvelope-SOAP1-2.xsl
Response XSL: C1-CCBRemoveEnvEnvelopeAndNamespace.xsl
C1-USAGEREQ
Real-time
WX-RateAnlys
CDxAddEnvelope-SOAP1-2.xsl
Response XSL: C1-CCBRemoveEnvEnvelopeAndNamespace.xsl
WX-USGADJREQ
Real-time
WX-UsageAdjs
CDxAddEnvelope-SOAP1-2.xsl
Response XSL: C1-CCBRemoveEnvEnvelopeAndNamespace.xsl
CI_DETBILCYC
Real-time
DETBILLCYCLE
CDxAddEnvelope-SOAP1-2.xsl
Response XSL: C1- CCBRemoveEnvEnvelopeAndNamespace.xsl
CI-MDMUTUPD
Real-time
UTSTATUPD
CDxAddEnvelope-SOAP1-2.xsl
For more information on configuration guidelines, refer to the Oracle Utilities Customer Care and Billing documentation.