Monday, August 16, 2021

OIC - How to include an existing integration to a package

Suppose you have missed to include your integration in a package during integration creation. So dont worry, there is a easy way to include your created integration in a package. 

Follow the below steps:

Step1: Click on the integration(it should be deactivated state)


Step2: click on Actions and primary info


Step3: select your package



Step4 : Save it.

OIC - How to Migrate Integrations in OIC

Use case: How to migrate integrations in OIC.

Integrations can be migrated to higher instance in 2 following ways:
  • One Integration at a time: Use .iar file to migrate 1 integration at a time to next instance.
  • Bulk or package Migration: Use package (.par) file to migrate integrations in bulk to higher instance.

Whats is migrated as part of migration:
All connections
Libraries
Lookups

What is not migrated as part of migration:
Connection credentials
Connectivity agent
Analytics
Logs


More details:

One Integration at a time:

Step1: Go to the OIC instance(suppose Dev) and click on the actions of the integration to be exported and click export.


Step2:  the file will be downlaoded as .iar file and this jar will contain the integration and all the underlying components with it like connetion name etc.

Step3 : Now login to higher instance like UAT or SIT
And click the impory button

Step4: choose the .iar file.

Step5: once file is selected, either you can import or import and configure.

Step6: once import done, you will observer that connections are in draft and integration is in configure state. You have to go to the connections and edit your connection as per the instance and activate the integrations.


Bulk or Packge Integrations:

Step1: Whenever you are creating a new integration, keep the integration in package placeholder like ERP related integrations are in samw package etc. By provide a new package name or use existing package.

Step2: Go to package and export one package which you desire to export. It will import .par file.







Step3: Import the exported package.




Step4:
As we have selected import and configure option, you can see all the imported components and integrations like integrations, libraries, certificates, connections etc. Now just check all connctions and edit them as per your new or higher instance.


When to use "import and config" option over import:
Suppose there is already a connection in the higher instance, then during package migration, you can replace your imported connection with the exisitng instance connection.





Friday, August 13, 2021

OIC - Change date time format using xp20:format-dateTime() function

Here, we will play with the xp20:format-dateTime() function and generate different date and time formats.

About  xp20:format-dateTime():

This function takes two arguments

  • dateTime : like 2021-08-13T07:35.29.849+00:00
  • Format: the format which we want.

Meaning of all the format codes:



Lets play with the different date and time formats:

Example1: change the dateTime to dd-MM-yyyy format.

xp20:format-dateTime(startTime,"[D01]-[M01]-[Y001]")

Output: 13-08-2021

Example2: change tthe dateTime to dd-MM-yyyy HH:mm:ss

xp20:format-dateTime(startTime,"[D01]-[M01]-[Y001] [H01]:[m01]:[s01]

Output: 13-08-2021 08:55:22

Example 3 : change the dateTime to yyyy-MM-dd h:mm AM/PM

xp20:format-dateTime(startTime,"[Y001]-[M01]-[D01] [h1]:[m01] [P]

Output: 2021-08-13 8:55 am

Example4: change the datTime to HH:mm Timezone

xp20:format-dateTime(startTime,"[H01]:[m01] [z]

Output: 08:55 GMT+00:00

Example5: change the dateTime to ordinal value of day-monthname-day of the week

xp20:format-dateTime(startTime,"[Dwo]-[MNn]-[FNn]

Output:thirteenth-August-Friday


Used Formats in OIC:


Received output from monitoring:






OIC - convert string yymmdd to date yyyy-mm-dd

Use Case:

The requirement is to take input string doj field as yymmdd and then convert it to yyyy-mm-dd format to send the date to a database or endpoint.

Input:

Doj : 210914

Output: 2021-09-14


Use the following:

concat(substring(string(cutrent-date()),1,2),substring(doj,1,2),"-",substring(doj,3,2),"-",substring(doj,5,2))



Sunday, August 8, 2021

OIC - Oracle Feature Flag overview

Colleced from Oracle #enabling-the-future-today-feature-flags-in-oracle-integration

Feature Flag Overview

Within Oracle Integration we are moving to a model that allows us to trial new features without making them available to everyone.  Everyone runs the same codebase but feature flags control what is available to a specific instance.

How It Works

Each new feature is given a flag that is used to control its availability.  For instance the flag for the small footprint OIC agent was oic.adapters.connectivity-agent.light-weight-agent.  If this flag was enabled for a given OIC instance then they could download the lightweight connectivity agent.  Other OIC instances running the same code but with the flag turned off would not offer the new agent.

Flags are controlled from a central system and can be updated in real time by Oracle development and operations.  This means that feature flags can be turned on very quickly, and also if a problem occurs they can be disabled.

Feature Flag Lifecycle

Feature flags have a lifecycle as illustrated below.




The different stages are:

Internal Only

You may see a product manager demo features on an instance that are not currently available, if using a production pod these may only be available to internal users.  This is where we try things out internally before turning them on for any customers.  Once we are happy with the feature internally we are ready to share it with selected customers and move the feature to Feature Controlled.  Note that this change in stage does not require any code changes, it just alters our internal approval process to enable the feature.

Feature Controlled

Once a feature enters the feature controlled stage then a customer may request that the flag be enabled for one or more of their OIC instances.  If approved then those instances will have the flag enabled and the feature will become available within a few minutes of being enabled.  Again there are no code changes to the customer instance, just the change in the flag status from disabled to enabled in the central feature flag server.

Feature Controlled General Availability

Once we are happy with the stability of a feature we will enable it for all instances.  This again does not require a code change.  We leave the flag in place so that if a specific customer has a problem we can disable the feature just for them or roll it back.  This is a safety measure in case problems occur that were not caught by internal users or early adopters of the feature.

General Availability

Eventually the flag controlling the feature will be removed.  This has no impact on the end user, it just allows us to keep the code paths clean and remove unused code that has been made obsolete by the new feature.  End user will see no difference between this stage and the previous one.  So I mention it here only to explain how we keep our codebase clean.

How to check features from OIC console:

Login your OIC instance and go to profile and then to about section. You can see the Enabled Features.



In my OIC instance, currently no feature is enabled. So its showing empty.



Thursday, August 5, 2021

OIC - How to schedule an integration using iCal expression

Use case:

Here, we will shedule an integration for every 5 minutes interval of time using iCal exp.

Implementation steps:

Step1: choose the scheduled integration and click on actions and select Add schedule.


Step2: select iCal option and privide the below iCal expression to schedule for every 5 mintues interval of time.

FREQ=MINUTELY;INTERVAL=5;



Click validate epression and save

Step3: start the shedule


Step4: now it will show all the future runs for every 5 mintues interval.



Few of the complex iCal exp:

Shedule every 3 years on May 2nd and 7th:

FREQ=YEARLY;INTERVAL=3;BYMONTH=5;BYDAY=2,7;

Schedule each month on the 1st,5th and 10th days of the month at 5:30AM, 10:30AM , 3:30PM

FREQ=MONTHLY;BYMONTHDAY=1,5,10;BYHOUR=5,10,15;BYMINUTE=30

We can also define multiple schedule frequencies using & sign.

Schedule every day 8 am and 8 pm

FREQ=DAILY;BYHOUR=08;BYMINUTE=00;BYSECOND=0;&

FREQ=DAILY;BYHOUR=20;BYMINUTE=00;BYSECOND=0;


OIC - How to modify an existing schedule | Update schedule | Oracle Integration Cloud

We have following 2 methods to modify an schedule:

Method 1: Pause and stop the schedule and update the schedule.

Integration page or monitoring Integration page >> Actions >>Schedule >> pause >> stop >> Edit >> save >> Start schedule












Method2:

  • Delete the existing schedule
  • Add the schedule

Step1: Click on the hamburger sign or actions and click on schedule



Step2: click on Menu and click delete schedule


Step3:  click on add schedule


Step4: Then define your shedule whether to choose simple type or iCal and save.


Step5: start the schedule.



Featured Post

OIC - Creating Folders in SharePoint Using Microsoft Graph API 1.0 in Oracle Integration Cloud

Use Case Many businesses need to automate folder creation in SharePoint based on dynamic inputs. A common requirement is to create folders ...