Customer To Meter Master Data Synchronization
This section describes the master data synchronization processes supported by Oracle Utilities Customer to Meter.
In Customer to Meter, Customer Care and Billing information is generally considered the data of record for account, customer, or service agreement-related data. Synchronizing master data between Customer Care and Billing tables and Meter Data Management tables ensures that all account, customer, and service point-related data is correct and up to date before usage transaction calculations are performed. Master data synchronization ensures that when specific types of Customer Care and Billing data are created or updated, corresponding Meter Data Management data is also created or updated.
Initial master data synchronization is performed via a data conversion and migration process. Initial Master Data Conversion for more information.
The table below summarizes the types of data ongoing master data synchronization supported in Customer to Meter:
When Customer Care and Billing data of this type is created and/or updated: | Master Data Synchronization creates and/or updates this type of Meter Data Management data: |
---|---|
Bill Cycle / Bill Cycle Schedule | Bill Cycle / Bill Cycle Schedule |
Contract Option | Dynamic Option |
Contract Option Event | Dynamic Option Event |
Person | Contact |
Service Agreement | Usage Subscription |
For example, when a Customer Care and Billing Service Agreement is created, the synchronization process creates a corresponding Meter Data Management usage subscription.
The Customer to Meter synchronization process is based on the Data Synchronization functionality of the Oracle Utilities Application Framework, and is supported through a set of maintenance objects, master configurations, business objects, and service scripts.
Maintenance Objects
Customer to Meter supports master data synchronization for the following maintenance objects.
Customer Care and Billing Maintenance Object | Meter Data Management Maintenance Object |
---|---|
BILL CYCLE (Bill Cycle) | D1-BILLCYCLE (Bill Cycle) |
CONTRACT OPT (Contract Option) | D1-DOP (Dynamic Option) |
CONTRACT OPT (Contract Option Event) | D1-DOPEVT(Dynamic Option Event) |
PERSON (Person) | D1-CONTACT (Contact) |
SA (Service Agreement) | D1–(Usage Subscription) |
Master Configurations
The following master configurations are used to configure the sync process between Customer Care and Billing data and Meter Data Management data:
Master Configuration |
Name / Description |
Master Data Synchronization Configuration |
Lists all foreign key references that need resolution. Each one should reference the view that contains the external key / production key cross-reference. If initial synchronization process are also configured for data conversion in addition to the ongoing synchronization process, two views are specified. For entities that undergo the ongoing synchronization, an external system / ID type mapping is specified to cater for entities that might be synchronizing from more than one external system. |
Seeder Sync Request Master Configuration |
Lists the maintenance objects (contact, usage subscription, etc.) that require synchronization. Each references the synchronization business object that needs to be instantiated when processing a synchronization request for that maintenance object. For maintenance objects that undergo both initial and the ongoing synchronization, two business objects are specified. |
Outbound Data Synchronization Business Objects
When data is created for one of the above Customer Care and Billing maintenance objects, an outbound synchronization request is created to create the appropriate Meter Data Management data.
Synchronization of Customer Care and Billing data and Meter Data Management data uses the following outbound synchronization business objects:
Data Sync |
Object Name |
Business Object |
Bill Cycle/Schedule > Bill Cycle/Schedule |
MDM2 Bill Cycle Sync Request |
C1-MDM2BillCycleSyncRequest |
Contract Option > Dynamic Option |
MDM2 Contract Option Sync Request |
C1-MDM2ContractOptSyncRequest |
Contract Option Event > Dynamic Option Event |
MDM2 Contract Option Event Sync Request |
C1-MDM2ContrOptEvtSyncRequest |
Person > Contact |
MDM2 Person Sync Request |
C1-MDM2PersonSyncRequest |
Service Agreement > Usage Subscription |
MDM2 SA Sync Request |
C1-MDM2SASyncRequest |
Inbound Data Synchronization Service Scripts
When outbound synchronization requests enter the “Send Request” state, Enter algorithms invoke service scripts to create corresponding inbound data synchronization requests.
Synchronization of Customer Care and Billing data and Meter Data Management data uses the following inbound data synchronization service scripts:
Data Sync |
Name |
Service Script |
Bill Cycle/Schedule > Bill Cycle/Schedule |
Bill Cycle Inbound Sync Request |
X1-InBCSynSS |
Contract Option > Dynamic Option |
Inbound Dynamic Option Sync |
X1-InSyDyOp |
Contract Option Event > Dynamic Option Event |
Inbound Dynamic Option Event Sync |
X1-InSyDyOpE |
Person > Contact |
Inbound Contact Sync |
X1-InSyCont |
Service Agreement > Usage Subscription |
Inbound Usage Subscription Sync |
X1-InSyUS |
Inbound Data Synchronization Business Objects
When outbound synchronization requests enter the “Send Request” state, service scripts create corresponding inbound data synchronization requests. Master data synchronization uses ongoing synchronization requests to continuously keep Meter Data Management data synchronized with corresponding Customer Care and Billing data. Ongoing synchronization requests can be used to maintain contacts, usage subscriptions, dynamic options, and bill cycles.
Ongoing synchronization of Customer Care and Billing data and Meter Data Management data uses the following data synchronization business objects:
Data Sync |
Ongoing Synchronization Object Name |
Business Object |
Bill Cycle/Schedule > Bill Cycle/Schedule |
Inbound Bill Cycle Sync Request |
D2-InboundBillCycleSyncRequest |
Contract Option > Dynamic Option |
Dynamic Option Ongoing Sync Request |
D2- OngoingSyncRequestDynOpt |
Contract Option Event > Dynamic Option Event |
Dynamic Option Event Ongoing Sync Request |
D2- OngoingSyncRequestDynOptEvt |
Person > Contact |
Contact Ongoing Sync Request |
D1-OngoingSyncRequestContact |
Service Agreement > Usage Subscription |
Usage Subscription Ongoing Sync Request |
D2-OngoingSyncRequestUS |
Example Synchronization Process Steps
This section provides an overview of the processing that takes place when an ongoing synchronization request is sent. For each step in the process, the table below provides a brief description of the processing that takes place, and lists the specific objects involved.
Step |
Process |
Objects |
1 |
Data in Customer Care and Billing is created or changed, triggering a synchronization request. For example, a service agreement is updated, and the corresponding usage subscription must be updated. |
|
2 |
An outbound synchronization request is created. |
Outbound Synchronization Request business object: C1-MDM2SASyncRequest |
3 |
When the synchronization requests enters the “Send Request” status, an Enter algorithm invokes the inbound synchronization service script to create an inbound sync request. |
Inbound Synchronization Service Script: X1-InSyUS |
4 |
The service script creates the appropriate inbound synchronization request. In this case, it’s an ongoing synchronization request. |
Inbound Synchronization Request business object: D2-OngoingSyncRequestUS |
5 |
For ongoing synchronization requests, the following steps are performed by Enter algorithms on the synchronization request business object lifecycle states:
|
Setup Transformed Data Algorithm: D1- SETTRANDT Sync Request Pre-Add Data Algorithm: D1-SR-PREADD Resolve Keys - Ongoing Sync Algorithm: D1-RESKEYFAL Sync Request Update Data Algorithm: D1- SR-UPDDAT |