Update the Party Number in Oracle Utilities
If customer data from your Oracle Utilities customer information system is being imported into Oracle Fusion as part of the initial data load, the Party Number reference must be updated for the Person records in the Oracle Utilities database as well. The necessary characteristic type is C1-EXCID with the Party Number from the Oracle Fusion record as the value.
To populate the appropriate characteristic on each Person record, use a Plug-in Driven Batch process. For additional information on running this process:
-
For cloud implementations, see "Cloud Live Operate Data Fix Plug-In Driven Batch" in the Oracle Utilities Cloud Operations Guide, which is available in the library for your Oracle Utilities customer information system.
-
For on-premises implementations, see "Plug-In Driven Background Processes" in the Framework Administrative User Guide, available in the Oracle Utilities Customer to Meter library.
To use this mechanism, you create a new batch control and the associated script/algorithms:
-
Selection script/algorithm
-
Process records script/algorithm
For the selection script/algorithm, use the relevant selection SQL to find Person records that do not include the Party Number characteristic:
SELECT PER_ID
FROM CI_PER
WHERE PER_ID NOT IN
(SELECT PC.PER_ID FROM CI_PER_CHAR PC WHERE PC.CHAR_TYPE_CD = 'C1-EXCID')
For the process records script/algorith, use the base C1CXPerson business object that includes characteristics to process an update.
Additionally, the update initiated by the script/algorithm must prevent the creation of an echo sync request message back to Oracle Fusion, which would be triggered by default. When the context variable $$sourceExternalSystem is set to CX4U, the audit does not create a sync request.
Use this example script code and verify the format for the Party Number:
move "$personId" to "C1CXPerson/personId";
move 'C1-EXCID' to "C1CXPerson/+personCharacteristic/characteristicType";
move "concat('CIS_', $personId)" to "C1CXPerson/personCharacteristic[last()]/adhocCharacteristicValue";
move '1950-01-01' to "C1CXPerson/personCharacteristic[last()]/effectiveDate";
//prevent an echo sync request
move 'CX4U' to $$sourceExternalSystem;
invokeBO 'C1CXPerson' using "C1CXPerson" for update;
In the example script above, the party number data is populated by using the pattern – string ‘CIS_’ prefixed to the value of personId attribute for each Person Entity.
"concat('CIS_', $personId)"
In the actual script, this should reflect the party number generation pattern used for the particular implementation.
Parent topic: Import Initial Contact Point Data