Enhancement request for Native Database connector - inject extra values in provisioning workflow manually

Hi all,

We have a SQL table for a custom target application attached to OneIM's UNSAccountB, scoped to the proper UNSRootb. We are able to read from this table making it possible to onboard useraccount and entitlements from this table. SyncEditor is a great tool to simply configure the attribute flow. In Designer we have a custom provisioning object created, targeting our Update workflow for this application. Works fine as well. We are able to read and write using regular Sync flows and are able to provision new accounts and updates on this account.

But the SQL table we target has some extra colums like, last date modified, last user modified so we want to inject some static data into the update workflow.

In SyncEditor, on the left hand side of the connector, you are able to create virtual attributes and put a static value in there. Like "vrt_userModified = "IAMAccount" and "vrt_dateModified = date.today" for example. We mapped those to the target columns. But when you do an update, only the changed data from your unaccountb useraccount flow into the connectors workflow and the static virtual attributes (although mapped to the target column in the SQL app) are totally ignored. Would be great if it is possibile to put the virtual attributes in the flow as well. What we did to workaround this, is to change some attribute using the OnSaving event and use this in the virtual attribute. Sometimes it is really handy to inject some extra data in the workflow without the need to have it changed first from IAM. What are the possibilities to do this ? Current version is 8.1.0

KR,

Ronald

Parents Reply Children
  • Well that is a way to do it but that requires most of the times extra fields (schema extenstions) in the UNSAccountb table. Most of the times you get the data from the uid_person for this unsaccount as the Person updates drive the target account updates. In this case you end up duplicating Person data to UNSaccountb columns to make use of this "forceSyncOf" parameter. So thats why it would be great imho to have that supported in the SyncEditor as you have all your attributes for a flow in your mapping there. 

  • Or did i read it wrong and it is possible to use objectwalking style here as well ? Like Person.ColumnName, ADSAccount.columnname ? Does it take the UID_Person into consideration ? Also noticed that the mapping does not allow you to map XUserUpdated and XDateUpdated or do i need to refresh the schema for this first ? Those values always change for example and can be uses to map with target columns as it is just a string / data value

  • I'll give you that it is strange that the mapping of a fixed value is not considered during an ADHoc-Update but without seeing the complete mapping settings and the version you are using it is hard to see if this is a configuration or a general issue. You may want to contact support on that matter.

    In regards to the data duplication, your assumption is not quite right. You can of course add properties from other objects (your Person => UNSAccountB example) in the AdHoc-Projection, so no data duplication is necessary but you need to specify the all of these foreign properties in the ForceSyncOf parameter and, in case that you want to trigger an Adhoc-Projection if one of these foreign properties have been changed, you need to create custom process on the originating table to trigger the AdHoc-Projection manually. You will find an example of this technique when you take a look at the processes that update the thumbnail picture in an AD user when the JPEGPhoto of the Person has changed. Processes to look at would be ADS_Person_Transfer JPegPhoto to AD and ADS_ADSAccount_Update_ThumbnailPhoto. The ForceSyncOf parameter gets a value of Person.JPegPhoto in this case.