Tuesday, November 5, 2024

#1034 - OIC Integration Basics - Lab 6 OIC Projects

Introduction

OIC Projects allow you to organize your related OIC artefacts - Integrations, Connections, Lookups, Libraries, Events. Think of a project as your one stop shop, when you developing business processes.

You decide on the granularity of your projects; you could have one per use case, or one for related use cases e.g. all HCM onboarding use cases. RBAC can be applied to the Project design time, that means you can decide who can edit/view/monitor your project and its contents.

Projects contain other OIC artefacts we haven't as yet met -

  • Lookups
  • OIC Events
  • JavaScript Libraries
These will also be discussed in this post.

Before we begin, please note, there are some service limits related to projects, which do limit the amount of integrations etc. However, these limits are very generous. The OIC3 Service Limits doc can be found here.

So let's begin -

You can either create a new project or import a project. Projects are exported as .car files. 

Also, when creating a project, you can decide on its visibility - 

Back to the project I've been using for the other labs - 

Note the tabs on he left - 

The 2 other tabs are for OIC for Healthcare and B2B, more about them later.

In the Integration tab we see Integrations and Connections, which we have already met. We can also create Lookups, OIC Events and include JavaScript libraries.

Lookups

Lookups enable Domain Value Mapping between your Apps.  Think about a simple example where a customer address structure includes a country field.
Each of your apps has a different identifier for the same country e.g.





 


We will leverage the mapper to map the source to target country -

Configure as follows - 

Drag and drop the request country field, replacing the placeholder -

Activate and Run - 













OIC Events

OIC Events allow you to implement publish/subscribe within OIC itself. Net, net, one integration can publish an event, one or more other integrations can subscribe to the same. 

Creating an event means essentially defining the event and its fields. This is in JSON - 

You can also define headers, which can be used for filtering events - 


Publishing an event is easy - 

I can edit the name - 





































I then do the mapping - 
























Note the Event Headers - 

Now to the subscribing integration - 

Note the ability to filter - 

Here I could filter based on the custom header I defined, i.e. filter by country.

I run the Publish integration - 

I click the Project Observe tab - 


The subscriber has been triggered.

Filtering is easy - let's add a filter to only subscribe to orders for Ireland.

{"type":"jq_filter","filter-def":".countryheader==\"Ireland\""}


















 















No comments: