Business Flows
The integration scope supports the following business processes:
• Common Integration Flows (Internally Initiated)
WACS OIC GISMapping Sync (Oracle Integration Cloud Scheduled Job)
This integration flow is used to synchronize the WACS GIS Asset class and related attributes through the Oracle Utilities Work and Asset Cloud Service admin rest service into a lookup inside this Oracle Integration Cloud project.
The integration flow is run as a first step for asset synchronization. It inserts, updates, and deletes asset class information in the existing OUTL-BRT-ArcGIS_WACS_AssetClass lookup.
The end user enters values in the Query, RelativeURI, and ServerId fields. See the Things to Remember chapter for more information about these fields.
The integration is initiated as a scheduled process or via ad-hoc run.
The following diagram shows a graphical representation of the flow:
Business Processing
This scheduled integration process includes the following activities:
1. The Oracle Utilities WACS OIC GISMappings Sync flow is a scheduled integration. It operates asynchronously, allowing both manual execution and scheduling to retrieve the GIS Asset Class and Asset & Location field mapping information defined in the W1-GISToWAMSyncMapping extendable lookup in Oracle Utilities Work and Asset Cloud Service.
2. The process reads the existing OUTL-BRT-ArcGIS_WACS_AssetClass lookup via Oracle Integration Cloud Rest APIs.
3. Each Active record in the W1-GISToWAMSyncMapping extendable lookup in Oracle Utilities Work and Asset Cloud Service is inserted into the OUTL-BRT-ArcGIS_WACS_AssetClass lookup table in Oracle Integration Cloud. If there is a change in the GIS Asset Class or Asset & Location field mappings in the Oracle Utilities Work and Asset Cloud Service extendable lookup, an update is made on the AssetClass and Attribute fields. When the record in the OIC lookup table is updated, any entries in Query, RelativeURI, and ServiceId are not updated or removed. If the record is removed in the WACS extendable lookup, the corresponding record in the OUTL-BRT-ArcGIS_WACS_AssetClass lookup is removed.
4. Out of the box, the OUTL-BRT-ArcGIS_WACS_AssetClass lookup table is populated with a sample record. This record is removed when the flow is run.
5. Any unrecoverable errors thrown are handled by the global fault handler.
6. An optional email notification with error details is sent to the users configured in the OUTL-BRT-ArcGIS_OFS_Email_ID lookup.
7. Email notification is optional. Configure the email.flag property in the OUTL-BRT- ArcGIS_OFS_ConfigProps lookup to ‘true’ to receive email notifications when errors are encountered.
8. Error Handling:
• If notification.type.email.flag in the ArcGIS_WACS_ConfigProps lookup is set to true’, all errors will be sent to the respective email IDs configured in the ArcGIS_WACS_Email_ID lookup under “to”.
• Functional errors: The GISMappings Sync flow reports functional errors due size linit of the lookup column value which is more than 2K characters.
• Remote errors:
• The remote error will occur when the OUTL-BRT-ArcGIS_WACS_AssetClass lookup is accidently deleted from the project and the flow tries to access the lookup.
• The remote error will occur when Oracle Utilities Work and Asset Cloud Service is down. An exception will be thrown, and the Oracle Integration Cloud instance will be marked as ‘failed’.
• After fixing the error, the flow can either be manually triggered or can wait for the next scheduled iteration.
Technical Details
The following table describes the integration processes and the respective ESRI ArcGIS and Oracle Utilities Work and Asset Cloud Service artifacts used in this integration process:
Lookups Referenced
The following table describes customized properties referenced in the integration. For more information about the lookup properties, refer to
Configuring Lookups, Error Handling, and Email Notifications.
ArcGIS Asset Synchronization
Assets in ArcGIS are synchronized to Oracle Utilities Work and Asset Cloud Service as initial and incremental synchronizations. These synchronizations are initiated from the OU ArcGIS WACS Asset Sync scheduled parent flow. This flow, in turn, calls the Initial and Incremental child flows to perform bulk or incremental synchronizations.
The child integrations will retrieve the data from ESRI ArcGIS and will place the files in the on-premises FTP Server or in an OCI Object Storage location based on the configuration.
The synchronization is handled by the following Oracle Integration Cloud integration flows depending on the file transfer preference:
The following diagram shows the synchronization-related processes:

ArcGIS WACS Asset Sync (Oracle Integration Cloud Scheduled Job)
This integration process retrieves the Asset classes information stored in the OUTL-BRT-ArcGIS_WACS_AssetClass lookup table and initiates the child integrations to retrieve the assets from ESRI ArcGIS.
The integration can be run as a scheduled integration with the following scheduled parameters:
• Full_sync: Performs a full or incremental asset synchronization. A full synchronization is done for the first time. The value either contains a “N”(Incremental sync) or a “Y”(Full/Initial sync).
• Last_incremental_execution_datetime: Sets the starting date and time from which to retrieve the ESRI ArcGIS assets data. The last incremental execution datetime contains the last date and time when the incremental synchronization was executed and is reset after each performed execution. This applies only to incremental synchronization. The format for this value is “YYYY-MM-DD HH:mm” in a 24-hour notation.
• Max_records_per_file: Specifies the maximum number of records to be include in each file.
• AssetClasses_to_process: Used to run specific asset classes from the OUTL-BRT-ArcGIS_WACS_AssetClass lookup table. This parameter is a comma separated list of asset classes. Specify “ALL” if all the asset classes in the lookup needs to be run. The default value is “ALL”.
The following diagram shows a graphical representation of the Delete Activities integration process:

Business Processing
The integration process includes the following activities:
1. Initialization phase
• This is a scheduled integration. It operates asynchronously, allowing both manual execution and scheduling.
• Parameters set during each run dictate the how and what to synchronize:
• Full_sync: Defaults to “N” or set to “Y”.
• Last_incremental_execution_datetime: Set in the YYYY-MM-DD HH:mm 24-hour format. This value is reset after the last execution.
• Max_records_per_file: Specifies the number of records to be included in each file.
• AssetClasses_to_process: List of comma separated asset classes to be processed. The default value is “ALL”.
Note: If the parameters are left empty, the last value of the parameter it was executed with is taken. If the parameters are empty on the very first run, the default values are taken.
2. Validate the parameters set for execution. The integration will stop processing and call the Common Notification Handler if any parameters are incorrectly set.
3. Read and loop through the OUTL-BRT-ArcGIS_WACS_AssetClass lookup table. This lookup will be refreshed by the OU WACS OIC GISMappings Sync integration.
4. If the “AssetClasses_to_process” parameter is ALL or contains the specific asset classes from the lookup, then the flow depending on the “Full_sync” parameter passes the request to either of the following:
• OU ArcGIS WACS Initial Assets Sync
• OU ArcGIS WACS Incremental Assets Sync
5. Error handling
An email is triggered based on the “notification.type.email.flag” property value in the OUTL_BRT_AccGIS_WACS_ConfigProps lookup.
• Business errors due to incorrect parameters will trigger an email request. It contains an invalid parameter with the value provided as well with correct information.
• Errors due to faults being triggers will also trigger the email request.
• Faults can occur due to failing to reach the child integrations, or errors during processing.
• Oracle Cloud Integration instance in the above cases is marked as “Failed”.
6. Emails are also sent when configuration errors on the OUTL-BRT-ArcGIS_WACS_AssetClass are encountered. In this case, the Oracle Cloud Integration instance is successful, and it is the user’s responsibility to correct the configuration errors and retry the particular asset classes.
7. The email requests are forwarded to the “OU Common Notification Handler” flow.
Technical Details
The following table describes the integration processes and the respective ESRI ArcGIS and Oracle Utilities Work and Asset Cloud Service artifacts used in this integration process:
Lookups Referenced
The following table describes customized properties referenced in the integration. For more information about the lookup properties, refer to
Configuring Lookups, Error Handling, and Email Notifications.
ArcGIS WACS Initial Assets Sync (Oracle Integration Cloud Initiated)
This process receives an internal request from ArcGIS WACS Asset Sync to retrieve all features with specific attributes from ESRI ArcGIS. The retrieved data is stored in the GeoJSONL files that are uploaded to Oracle Utilities Work and Asset Cloud Service to process.
The following diagram shows a graphical representation of the integration process:

Business Processing
The integration process includes the following activities:
1. Initialization phase
a. Initializes variables from the incoming request retrieved and Oracle Integration Cloud lookups.
b. Defines parameters for querying the ESRI ArcGIS servers (up to three connections/servers identified by ServerId; S1, S2, and S3, defined in the OUTL-BRT-ArcGIS_WACS_AssetClass lookup).
Note: Assets can be stored across different ESRI ArcGIS portals. The incoming request includes the ServerId field, specifying which portal to use. This integration supports up to three configurable ESRI ArcGIS servers with server connection “S1” as the default. Expanding beyond three portals required cloning and customizing the project.
2. Execute the Feature Extraction Loop.
a. Iterates over assets, retrieving feature details via ESRI Query API calls.
b. Handles pagination, updates counters, and ensures correct batch sizes.
• Batch size is defined by the sync.initial.maxresult.count property in the OUTL-BRT-ArcGIS_WACS_ConfigProps lookup. This value should match or be less than the “Maximum Number of Records Returned by Server” setting in the ESRI ArcGIS Server Manager’s Parameters page for each Feature Server Layer. The default value is 2000 records.
• The number of iterations is determined by the records returned by the API response. If the API does not return any records the iteration stops.. The number of features are counted using getFeaturesCount javascript.
c. Response from Query API is read as binary. This response is enhanced to include Assetclass and action by passing it through getCustomGeoJSON javascript function.
3. Manage File Transfer
a. Transfers completed files to the target storage, as specified by the wacs.file.target.transfer.pref property in the OUTL-BRT-ArcGIS_WACS_ConfigProps lookup.
b. If target storage is “os” (Object Storage), it calls the Common OS Transfer child integration process.
c. If the target storage is “ftp” (FTP), it calls the Common FTP Transfer child integration process.
4. Business Notification Email
a. If the notification.email.process.complete.flag is set to ‘true’, a completion email on successful completion with the files and record count information, is sent to the respective email IDs configured in the the ArcGIS_WACS_Email_ID lookup.
5. Error Handling
If the notification.type.email.flag in the ArcGIS_WACS_ConfigProps lookup is set to ‘true’, all errors will be sent to the respective email IDs configured in the ArcGIS_WACS_Email_ID lookup under “to”.
a. Functional errors: ESRI ArcGIS reports functional errors due to invalid parameters or data.
b. Remote errors: Technical errors, such as ESRI ArcGIS is not available.
6. When errors occur:
a. An exception will be thrown, and the Oracle Integration Cloud instance will be marked as ‘failed’.
b. After fixing the error, the flow can either be manually triggered or can wait for the next scheduled iteration.
Technical Details
The following table describes the integration processes and the Oracle Integration Cloud artifacts used in this integration process:
Lookups Referenced
The following table describes customized properties referenced in the integration. For more information about the lookup properties, refer to
Configuring Lookups, Error Handling, and Email Notifications.
ArcGIS WACS Incremental Assets Sync (Oracle Integration Cloud Initiated)
This process receives an internal request from ArcGIS WACS Asset Sync to retrieve all features with specific attributes from ESRI ArcGIS that have changed within a defined period. The defined period is mostly defined as the last execution date time. This will retrieve ESRI ArcGIS changes from that time on.
The retrieved data is stored in a GeoJSONL files that are uploaded to Oracle Utilities Work and Asset Cloud Service to process.
The following diagram shows a graphical representation of the integration process:

Business Processing
The integration process includes the following activities:
1. Initialization phase
a. Initializes variables from the incoming request retrieved and Oracle Integration Cloud lookups.
b. Defines parameters for querying the ESRI ArcGIS servers (up to three connections/servers identified by ServerId; S1, S2, and S3).
Note: Assets can be stored across different ESRI ArcGIS portals. The incoming request includes the ServerId field, specifying which portal to use. This integration supports up to three configurable ESRI ArcGIS servers with server connection “S1” as the default. Expanding beyond three portals required cloning and customizing the project.
c. Sets up tracking variables for files, asset counts, and synchronization details.
2. Retrieve updated asset data.
a. Invokes the ESRI ExtractChanges API to get the ObjectIDs for the updated, added, and deleted features. This API is invoked with “returnIdsOnly = true” to get only the ObjectIds.
b. The API returns results only if the specified attributes are updated and within the modification timestamps.
c. Stores response data in a global variable for further processing.
d. The ObjectIds are stored in a Stage file for additions, updates, and deletions. The ObjectIds are batched based on the sync.increment.objectid.count configuration property.
3. Process added assets
a. Iterates through the “adds” collection, grouping ObjectIds into batches.
b. Stores the ObjectIds in temporary stage files for later retrieval.
4. Process updated assets
a. Identifies modified assets based on specified fields set in the Attributes column in the OUTL-BRT-ArcGIS_WACS_AssetClass lookup.
b. Group the object IDs into batches and stores them in the Stage files.
5. Process deleted assets
a. Retrieves the deleted object IDs and groups them into batches.
b. Stores the object IDs in temporary stage files for later retrieval.
6. Query and retrieve asset details
a. Reads the stage files and retrieves asset details from the ESRI ArcGIS server connections (according to ServerId field: S1, S2, S3).
b. Constructs and executes queries with the appropriate filters and formatting.
c. Response from Query API is read as binary. This response is enhanced to include Assetclass and action by passing it through getCustomGeoJSON javascript function. Results are appended to the temporary files.
7. Manage file creation
a. Creates new files when the record limit per file is reached.
b. During the last iteration, a new file will be created to store any remaining records, even if the record limit is not reached.
8. Manage file transfer
a. Transfers the completed files to the target storage, as specified by the wacs.file.target.transfer.pref property in the OUTL-BRT-ArcGIS_WACS_ConfigProps lookup.
b. If the target storage is “os” (Object Storage), it calls the Common OS Transfer child integration process.
c. If the target storage is “ftp” (FTP), it calls the Common FTP Transfer child integration process.
9. Business notification email
a. If the notification.email.process.complete.flag is set to ‘true’, on successful completion, a completion email with files and record count information, is sent to the respective email IDs configured in the ArcGIS_WACS_Email_ID lookup.
10. Error Handling
If the notification.type.email.flag in the ArcGIS_WACS_ConfigProps lookup is set to ‘true’, all errors will be sent to the respective email IDs configured in the ArcGIS_WACS_Email_ID lookup under “to”.
a. Functional errors: ESRI ArcGIS reports functional errors due to invalid parameters or data.
b. Remote errors: Technical errors, such as ESRI ArcGIS is not available.
11. When errors occur:
a. An exception will be thrown, and the Oracle Integration Cloud instance will be marked as ‘failed’.
b. After fixing the error, the flow can either be manually triggered or can wait for the next scheduled iteration.
Technical Details
The following table describes the integration processes and the artifacts used in this integration process:
Lookups Referenced
The following table describes customized properties referenced in the integration. For more information about the lookup properties, refer to
Configuring Lookups, Error Handling, and Email Notifications.
Common OS Transfer (Oracle Integration Cloud Initiated)
This integration process receives a request to transfer the attached file reference to an Oracle Integration Cloud Object Storage location from where Oracle Utilities Work and Asset Cloud Service will process them.
The following diagram shows a graphical representation of the integration process:

Business Processing
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and perform the following activities:
1. Map the incoming request to the Object Storage REST API.
2. Initiate the file transfer.
3. Error handling:
• The instance will throw a fault to the initiating integration to handle this error.
• The status of this Oracle Integration Cloud instance is marked as ‘Failed’.
Technical Details
The following table describes the integration processes and the artifacts used in this integration process:
Common FTP Transfer (Oracle Integration Cloud Initiated)
This integration process receives a request to transfer the attached file reference to an SFTP content storage location from where Oracle Utilities Work and Asset Cloud Service will process them.
The following diagram shows a graphical representation of the integration process:

Business Processing
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and perform the following activities:
1. Map the incoming request to the FTP Adapter.
2. Initiate the file transfer.
3. Error handling:
• The instance will throw a fault to the initiating integration to handle this error.
• The status of this Oracle Integration Cloud instance is marked as ‘Failed’.
Technical Details
The following table describes the integration processes and the artifacts used in this integration process:
Common Notification Handler (Oracle Integration Cloud Initiated)
This integration process is used to send email notification in case of errors in Oracle Integration Cloud.
The following diagram shows a graphical representation of the integration process:

Business Processing
The integration process deployed on Oracle Integration Cloud is exposed as a REST API and perform the following activities:
1. Map the incoming request to the FTP Adapter.
2. Initiate the file transfer.
3. Error handling:
• The instance will throw a fault to the initiating integration to handle this error.
• The status of this Oracle Integration Cloud instance is marked as ‘Failed’.
Technical Details
The following table describes the integration processes and the artifacts used in this integration process:
Lookups Referenced
The following table describes customized properties referenced in the integration. For more information about the lookup properties, refer to
Configuring Lookups, Error Handling, and Email Notifications.