How to Process ERP Cloud Business Events in Oracle Integration?

Business events is a feature in Fusion Applications. The Oracle ERP Cloud Adapter in Oracle Integration enables you to easily integrate with Oracle ERP Cloud without having to know about the specific details involved in the integration. The adapter provides declarative support for subscribing to business events raised by various modules in Oracle ERP Cloud and Oracle Supply Chain Management Cloud.

Eventhough Business Events can be easily subscribed from OIC , we see lot of Customers/Partners face challenges in identifying the steps to Enable Business Events in ERP Cloud. This blog is an attempt to provide an overview and also consolidate the steps  which may vary for each module in ERP Cloud.

Let's understand a bit on how Business events in Fusion Applications are processed and Subscribed by OIC.



Business Event Subscription Phase: When an event is selected in ERP Cloud adapter (ex. Purchase Order) we can choose the event to be subscribed and an expression to filter the events. OIC creates a subscription entry in ERP Cloud Subscription Service with a unique identifier and corresponding filter expression



Business Event Enablement Phase: Business events in ERP Cloud modules needs to be explicitly enabled in many cases. Once the event is enabled event information is published in the Event Catalog.



Subscriber Discovery Phase: When a business object is created, updated or deleted, an event is triggered inside Fusion Application. Event handler framework in FA is responsible to receive the events (if the event is enabled), enrich the payload and filter out unwanted ones and send it out to subscribers. Event Handler Framework discovers all the subscribers (ex. OIC integration flow) of the event (ex. Purchase Order) and sends the enriched Business Object payload. This is real value add of leveraging ERP Cloud Adapter which can Subscribe seamlessly and without the need of additional API calls in the Integration Flow

Workflow for Configuring Prerequisite Steps to Process Business Events


In this blog I will specifically stress upon how to enable Business Events in various modules of ERP Cloud. Please note that the process to enable Business Events is different for every module. 

1. Create Fusion Applications User (a.k.a Integration User ex. oic.integrationuser)
a. This user is configured in the OIC ERP Adapter Connection
b. This account is used to connect to the Fusion Application, and populate endpoint properties in the Adapter Connection Wizard
c. This user (ex. bala.gupta) must have the below roles/privileges
  • Integration Specialist
  • AttachmentsUser
  • FND_MANAGE_CATALOG_SERVICE_PRIV (Privilege needs to be added in Custom role ex: OIC_INTEGRATION_ROLE Ref: Creating Custom Roles)
2. Subscribe to Events In ERP Cloud
OIC ERP Cloud adapter supports subscribing to events (Ref: List of Events) of several modules in ERP Cloud application. Ensure the events are enabled in the ERP Cloud.
ERP Cloud Supports Two categories of events
  • Standard Business Events
  • Custom Business Events
Standard Business Events

Enabling Financial Events

Financial Events follows an Opt-in feature to enable flag in ERP Business Event metadata excepting to Payables Events.Some business events are disabled by default and you need to enable them before subscribing to them. To enable a business event, use the ERP Business Events REST Endpoints. We can identify the list of business events that are disabled by default using the Get all business event records REST endpoint.

Note: Before following the steps to enable business events, it is always good idea to verify the ERP Cloud Adapter documentation by referring to “Enable By Using” column in the table. Follow the below steps if the “Enable By Using” column mentions “REST API”. Payables events needs an explicit Profile option to be set at Site level

Security: Associate Access FSCM Integration Rest Service privilege to the Integration Account to use the ERP Business Events REST endpoints.
Privilege Name: Access FSCM Integration Rest Service
Privilege Code: FUN_FSCM_REST_SERVICE_ACCESS_INTEGRATION_PRIV

Steps to Enable a Business Event using REST API
i. Get the list of all business events to be enabled
ii. Identify the ErpBusinessEventId of the business event you want to enable
iii. Enable business event by ErpBusinessEventId

Worked Example
To enable the “ReceivablesInvoicePaid” business event code, follow these steps:

Sample URL:
https://<server>/fscmRestApi/resources/<version>/erpBusinessEvents/< ErpBusinessEventId from previous step>


Sample Response:

 

Identify the ErpBusinessEventId of the desired business event

Use Update the enabled indicator for a business event REST endpoint of the ErpBusinessEventId record

Sample URL:

https://<server>/fscmRestApi/resources/<version>/erpBusinessEvents/< ErpBusinessEventId from previous step>

Sample Request Body:
{
"EnabledFlag": true
}


Enabling Payables Events

Navigate to Setup and Maintenance in ERP Cloud. Search for the task “Manage Payables Profile Options”.
Search for “ORA_AP_ENABLE_BUSINESS_EVENTS” Profile Option and set the Site Level value to “Yes”


 






Enabling Supplier Events

ERP Cloud Adapter supports subscribing to Supplier Create/Update Events. This is a new feature in ERP cloud and needs to be enabled.

These events include SupplierNumber and SupplierID attributes in the output payload. The Oracle Integration needs to use the event attributes to invoke the Suppliers REST API to get the required supplier information from Procurement Cloud.

From ERP Cloud Navigate to Navigator -> My Enterprise -> New Features -> Available Features. Search for “Suppliers” Functional Area

Select Enable and in Edit Suppliers, select the check box for Enable Outbound Supplier Profile Integration Using Oracle Integration Cloud


Enabling Sales Order Events

From Setup and Maintenance, Search for the task “Manage Business Event Trigger Points”. Enable the Event as per the functional requirement












Enabling Project Portfolio Management Events

In ERP Cloud Navigate to Navigator -> My Enterprise -> New Features -> Available Features. Below is the list of options and their path to enable the public events. Search for the event name as per the “Option to be Enabled”

Work Area

Supported Public Event

Opt in Work Area

Option to be Enabled

Project Management

Project Deliverable Status Changes

Project Execution Management

Generate Public Events on Project Deliverable Status Changes

Task Management

Project Task Progress Status Changes

Project Execution Management

Generate Public Events on Project Task Progress Status Changes

Task Management

Project Milestone Completion

Project Execution Management

Generate Public Events on Project Milestone Completion

Project Foundation

Project Status Change

Project Financial Management

Publish Public Events on Project Status Change

Project Financial Management

Publishing Financial Project Progress

 Project Financial Management 
-> Project Control

Generate Public Events When Publishing Financial Project Progress

Project Financial Management

Financial Project Plan Changes

Project Financial Management 
-> Project Control

Generate Public Events on Change in Financial Project Plan


Worked Example: Enabling “Generate Public Events on Change in Financial Project Plan”








Enabling Inventory Management Events

You can use business events to integrate with your external third-party logistics (3PL) or warehouse management system (WMS) using REST or Simple Object Access Protocol (SOAP) services. Use the Manage Inventory Business Event Configurations task to select which business event to raise when integrating with your external 3PL or WMS for these functions:

· Outbound receipt advices
· Outbound shipment requests
· ASN and ASBN creation
· ASN and ASBN cancellation
· Transfer order creation
· Transfer order update
· Transfer order cancellation
· Pick confirm

Configure business events to specify whether to use REST or SOAP services to integrate with your external 3PL or WMS.

  1. To configure inventory business events, use the Manage Inventory Business Event Configurations task:

    • Offering: Manufacturing and Supply Chain Materials Management

    • Functional Area: Inventory Management

    • Task: Manage Inventory Business Event Configurations

  2. On the Mange Inventory Business Event Configurations page, click the Add icon to add a new business event configuration.

  3. Select an operation such as Outbound Receipt Advice or Outbound Shipment Request for the event type.

  4. Select an event name to adopt either SOAP or REST services.

    For example, for the event type of Outbound Receipt Advice, choosing an event name of Outbound receipt advice adopts REST, while choosing Receipt advice event notification adopts SOAP.

  5. Select an organization.

    Note: If you don't specify an organization, the business event applies to all organizations.
  6. Click Save and Close.


Custom Business Events

Whenever we create a new custom object in Oracle ERP Cloud using Oracle Application Composer, custom business events can be published explicitly. Once published, these business events can be subscribed from Oracle Integration (OIC). Business Events are visible for selection when configuring the Oracle ERP Cloud Adapter in OIC as a trigger connection in the Adapter Endpoint Configuration Wizard.

For each Custom parent Object, OIC supports 3 Standard Events (Create, update, and delete). Any operations on child custom objects generate update events for the parent custom objects. When a record is created, OIC is notified with record detail information through event handler framework on subscription to any related events

Enabling Custom Object Events

· Create a custom object in ERP Cloud

· Generate custom object pages (Create/Update Layouts)

· Set the profile option, ZCX_CUSTOM_OBJECT_EVENTS, which is used to enable and register custom object events. The profile option is disabled by default

Note: Refer Support note 2535444.1 for detailed verbiage of the steps

Generate Integration Events from Application Composer. This step publishes custom objects as Integration events



Verify if the events are published in the custom catalog

$ curl --location --request GET 'https://<erp_cloud_host>/soa-infra/PublicEvent/customCatalog' --header 'Authorization: Basic abcedefghiji=' \

The custom object event should be available in the catalog







Once, we have the events enabled OIC ERP Cloud adapter can be used to subscribe to the Business Events















Hope this blog provides you a reference point to identify the steps to enable business events in ERP Cloud. As a note of caution, always refer to the ERP Cloud documentation for the latest steps. 

Comments

  1. I truly appreciate the time and work you put into sharing your knowledge. I found this topic to be quite effective and beneficial to me. Thank you very much for sharing. Continue to blog.

    Data Engineering Solutions 

    Artificial Intelligence Solutions

    Data Analytics Services

    Data Modernization Services

    ReplyDelete

Post a Comment