This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Sync Project - inserting objects works but not the update

Hi Experts, 

I'm having a really bad time trying to make a synchronization project to work. Almost there but can't find the missing configuration to make the update work when calling the synchronization workflow from a process (ADHocProjection). 

I have the following:

  • SQL DB Sync project
  • Using stored procedures for Insert/Update/Delete. For the updates I'm using "Script based" data operations, and "Pattern based" for Inserts and Deletes.
  • Sync project is being used for Provisioning only (1IM > Target System)
  • Adding or updating an object works fine from the "Target system>Browse" functionality within the Synchronization Editor.
  • Running a simulation or executing the sync workflow works fine. Meaning it detects when is an insert/update on an object and it runs the Stored Procedures defined.
  • (Tricky part) the mapping is between 1IM.UNSAccountBInUNSGroupB > DBTargetSystem.Accounts, since Account and Role membership represents an Account in the target system.
    • User can be a member of only one role (UNSGroupB) at the time.
    • Insert is triggered when there is a new record in UNSAccountBInUNSGroupB and there is no matching Account in the target system.
    • Update "should" be trigger when there is a new record in UNSAccounBInUNSGroupB but there is already an Account in the target system.
  •  When running the Sync workflow from a process task (on insert in UNSAccounBInUNSGroupB table) the provisioning log shows: "There are no changed objects logged for this synchronization log". This only happens when the Account exists in the Target System, so when it suppose to run an update and not an insert. 

Any suggestions? Tips?

Thanks,

JM 

Parents
  • Hi JM,

    Not sure...but if your pre-script was to convert Insert to Update, under the right conditions that you describe, would that activate the Update Workflow correctly?  In the case where it was a 'true Insert',  then it would leave the event as Insert.

    You are right to pay attention ot the Object Mapping rules: you correctly point out that failure to correctly match objects can result in the connector choosing an operation that we would not expect.  As you say, failing to find the object will certainly not help the update operation succeed :-).

    If you zip up some screen shots or artifacts from your config we can try to read over it.

    What version are you working with and is this a freshly created Sync Project?  I would recommend 7.1.1 with a newly created Sync Project to be sure that all is crispy.

    Rob.

Reply
  • Hi JM,

    Not sure...but if your pre-script was to convert Insert to Update, under the right conditions that you describe, would that activate the Update Workflow correctly?  In the case where it was a 'true Insert',  then it would leave the event as Insert.

    You are right to pay attention ot the Object Mapping rules: you correctly point out that failure to correctly match objects can result in the connector choosing an operation that we would not expect.  As you say, failing to find the object will certainly not help the update operation succeed :-).

    If you zip up some screen shots or artifacts from your config we can try to read over it.

    What version are you working with and is this a freshly created Sync Project?  I would recommend 7.1.1 with a newly created Sync Project to be sure that all is crispy.

    Rob.

Children
No Data