Business Events

Oracle Fusion Cloud Maintenance raises several business events that can be configured and used for outbound integration with third-party applications.

The Oracle Workflow Business Event System is an application service that leverages Oracle Advanced Queuing (AQ) infrastructure to communicate business events between systems. The Business Event System consists of the Event Manager and workflow process event activities. The Event Manager contains a registry of business events, systems, named communication agents within those systems, and subscriptions indicating that an event is significant to a particular system. Events can be raised locally or received from an external system or the local system through AQ.

Key Features

  • Used only for outbound integration.
  • Ability to use Oracle Integration Cloud (OIC)-based connectors to listen to these events and perform actions in any third-party applications that integrate with Oracle Maintenance

Best Practices

  • Enable business events to integrate Oracle Maintenance with external applications.
  • It's recommended to use Oracle Maintenance REST APIs with business events to get the details that the integrating application requires.

Constraints

  • Not recommended for integrations with large volumes of data.
  • Third-party platforms can't be used for business-event integration.

Business Events Available for Outbound Integration

Oracle Maintenance provides business events that external systems can use to perform specific actions.

Business Event Description Event Raise Points Enrichment Service Enabled by Using
Customer Asset Created Signals that a customer asset is created.

An Enterprise asset is converted to a Customer asset using a Sales Order Shipment or Fulfillment.

A Customer asset is created from Sales Order Shipment or Fulfillment.

A Customer asset is created from the user interface.

A Customer asset is created using the REST API.

A Customer asset is create using file-based data import (FBDI).

SOAP service: AssetService

Operation: getAsset

Always enabled
Customer Asset Relationship Created Signals that a customer asset relationship is created. A new component is created as a child of the Customer asset.

SOAP service: AssetRelationshipService

Operation: getAssetRelationship

Always enabled
Customer Asset Relationship Deleted Signals that an asset relationship is deleted. A component is removed from the Customer asset.

SOAP service: AssetRelationshipService

Operation: getAssetRelationship

Always enabled
Customer Asset Updated Signals that a customer asset is updated. Changes in quantity, lot, serial, item, location, and the customer information of the Customer asset.

SOAP service: AssetService

Operation: getAsset

Always enabled
Maintenance Asset Created Signals that a maintenance asset is created. A new Enterprise asset is created in the system from integrations, or using the user interface, REST APIs, and FBDI.

SOAP service: AssetService

Operation: getAsset

Always enabled
Maintenance Asset Updated Signals that a maintenance asset is updated. When the Maintenance asset is updated for item, lot, serial, quantity, and location.

SOAP service: AssetService

Operation: getAsset

Always enabled
Work Order Create Signals that a work order is created. When the Maintenance work order is created.

SOAP service: WorkOrderEnrichService

Operation: getWorkOrderEnrich

Always enabled
Work Order Update Signals that a work order is updated. When the Maintenance work order is updated.

SOAP service: WorkOrderEnrichService

Operation: getWorkOrderEnrich

Always enabled

Business Event Payloads

This table shows Oracle Maintenance business events and their corresponding payloads.

Business Event Event Payload
Customer Asset Created
<xs:element name="CUSTOMER_ASSET_CREATEInfo"> <xs:complexType> <xs:sequence> <xs:element name="AssetId" type="LongValuePair" minOccurs="1"/> <xs:element name="AssetNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="ItemId" type="LongValuePair" minOccurs="1"/> <xs:element name="ItemOrganizationId" type="LongValuePair" minOccurs="1"/> <xs:element name="SerialNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="LotNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="Quantity" type="DecimalValuePair" minOccurs="1"/> <xs:element name="CustomerId" type="LongValuePair" minOccurs="1"/> <xs:element name="CustomerSiteId" type="LongValuePair" minOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> 
Customer Asset Relationship Created
<xs:element name="CUSTOMER_ASSET_RELATIONSHIP_ADDInfo"> <xs:complexType> <xs:sequence> <xs:element name="RelationshipId" type="LongValuePair" minOccurs="1"/> <xs:element name="SubjectId" type="LongValuePair" minOccurs="1"/> <xs:element name="SubjectAssetNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="RelationshipTypeCode" type="StringValuePair" minOccurs="1"/> <xs:element name="ObjectId" type="LongValuePair" minOccurs="1"/> <xs:element name="ObjectAssetNumber" type="StringValuePair" minOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element>
Customer Asset Relationship Deleted
<xs:element name="CUSTOMER_ASSET_RELATIONSHIP_REMOVEInfo"> <xs:complexType> <xs:sequence> <xs:element name="RelationshipId" type="LongValuePair" minOccurs="1"/> <xs:element name="SubjectId" type="LongValuePair" minOccurs="1"/> <xs:element name="SubjectAssetNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="RelationshipTypeCode" type="StringValuePair" minOccurs="1"/> <xs:element name="ObjectId" type="LongValuePair" minOccurs="1"/> <xs:element name="ObjectAssetNumber" type="StringValuePair" minOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element>
Customer Asset Updated
<xs:element name="CUSTOMER_ASSET_UPDATEInfo"> <xs:complexType> <xs:sequence> <xs:element name="AssetId" type="LongValuePair" minOccurs="1"/> <xs:element name="AssetNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="ItemId" type="LongValuePair" minOccurs="1"/> <xs:element name="ItemOrganizationId" type="LongValuePair" minOccurs="1"/> <xs:element name="SerialNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="LotNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="Quantity" type="DecimalValuePair" minOccurs="0"/> <xs:element name="ActiveEndDate" type="DateTimeValuePair" minOccurs="0"/> <xs:element name="CustomerId" type="LongValuePair" minOccurs="0"/> <xs:element name="CustomerSiteId" type="LongValuePair" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element>
Maintenance Asset Created
<xs:element name="MAINTENANCE_ASSET_CREATEInfo"> <xs:complexType> <xs:sequence> <xs:element name="AssetId" type="LongValuePair" minOccurs="1"/> <xs:element name="AssetNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="ItemId" type="LongValuePair" minOccurs="1"/> <xs:element name="ItemOrganizationId" type="LongValuePair" minOccurs="1"/> <xs:element name="SerialNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="LotNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="Quantity" type="DecimalValuePair" minOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element>
Maintenance Asset Updated
<xs:element name="MAINTENANCE_ASSET_UPDATEInfo"> <xs:complexType> <xs:sequence> <xs:element name="AssetId" type="LongValuePair" minOccurs="1"/> <xs:element name="AssetNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="ItemId" type="LongValuePair" minOccurs="1"/> <xs:element name="ItemOrganizationId" type="LongValuePair" minOccurs="1"/> <xs:element name="SerialNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="LotNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="Quantity" type="DecimalValuePair" minOccurs="0"/> <xs:element name="ActiveEndDate" type="DateTimeValuePair" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element>
Work Order Create
 <xs:element name="WorkOrderCreateInfo"> <xs:complexType> <xs:sequence> <xs:element name="WorkOrderNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="WorkOrderId" type="LongValuePair" minOccurs="1"/> <xs:element name="OrganizationId" type="LongValuePair" minOccurs="1"/> <xs:element name="BackToBackFlag" type="StringValuePair" minOccurs="1"/> <xs:element name="ContractMfgFlag" type="StringValuePair" minOccurs="1"/> <xs:element name="SourceSystemType" type="StringValuePair" minOccurs="1"/> <xs:element name="SourceSystemId" type="DecimalValuePair" minOccurs="1"/> <xs:element name="SourceHeaderRef" type="StringValuePair" minOccurs="1"/> <xs:element name="SourceLineRef" type="StringValuePair" minOccurs="1"/> <xs:element name="ScoSupplyOrderId" type="LongValuePair" minOccurs="1"/> <xs:element name="InterfaceSourceCode" type="StringValuePair" minOccurs="1"/> <xs:element name="OrchestrationCode" type="StringValuePair" minOccurs="1"/> <xs:element name="Status" type="StringValuePair" minOccurs="1"/> <xs:element name="ManufacturingParametersDefinitionsP.OrganizationCode" type="StringValuePair" minOccurs="1"/> <xs:element name="StatusCode" type="StringValuePair" minOccurs="1"/> <xs:element name="BatchCode" type="StringValuePair" minOccurs="1"/> <xs:element name="BatchId" type="LongValuePair" minOccurs="1"/> <xs:element name="HeaderNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="MessageName" type="StringValuePair" minOccurs="1"/> <xs:element name="WorkMethodId" type="LongValuePair" minOccurs="0"/> <xs:element name="MntForecastId" type="LongValuePair" minOccurs="0"/> <xs:element name="SystemStatusCode" type="StringValuePair" minOccurs="0"/> <xs:element name="WorkOrderStatusId" type="LongValuePair" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element>
Work Order Update
 <xs:element name="WorkOrderUpdateInfo"> <xs:complexType> <xs:sequence> <xs:element name="WorkOrderNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="WorkOrderId" type="LongValuePair" minOccurs="1"/> <xs:element name="OrganizationId" type="LongValuePair" minOccurs="1"/> <xs:element name="BackToBackFlag" type="StringValuePair" minOccurs="1"/> <xs:element name="ContractMfgFlag" type="StringValuePair" minOccurs="1"/> <xs:element name="SourceSystemType" type="StringValuePair" minOccurs="1"/> <xs:element name="SourceSystemId" type="DecimalValuePair" minOccurs="1"/> <xs:element name="SourceHeaderRef" type="StringValuePair" minOccurs="1"/> <xs:element name="SourceLineRef" type="StringValuePair" minOccurs="1"/> <xs:element name="ScoSupplyOrderId" type="LongValuePair" minOccurs="1"/> <xs:element name="InterfaceSourceCode" type="StringValuePair" minOccurs="1"/> <xs:element name="OrchestrationCode" type="StringValuePair" minOccurs="1"/> <xs:element name="WorkOrderStatusId" type="LongValuePair" minOccurs="1"/> <xs:element name="WorkDefinitionAsOfDate" type="DateTimeValuePair" minOccurs="1"/> <xs:element name="Status" type="StringValuePair" minOccurs="1"/> <xs:element name="ManufacturingParametersDefinitionsP.OrganizationCode" type="StringValuePair" minOccurs="1"/> <xs:element name="StatusCode" type="StringValuePair" minOccurs="1"/> <xs:element name="BatchCode" type="StringValuePair" minOccurs="1"/> <xs:element name="BatchId" type="LongValuePair" minOccurs="1"/> <xs:element name="HeaderNumber" type="StringValuePair" minOccurs="1"/> <xs:element name="MessageName" type="StringValuePair" minOccurs="1"/> <xs:element name="WorkMethodId" type="LongValuePair" minOccurs="0"/> <xs:element name="MntForecastId" type="LongValuePair" minOccurs="0"/> <xs:element name="SystemStatusCode" type="StringValuePair" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element>