MIM 2016: MIM WAL and the Delta Removed table

The MIM WAL Delta table will tell you if a multi-valued attribute has changed via the following tables

  • Delta/MultiAttrib1/Added
  • Delta/MultiAttrib1/Removed

Works all well and nice until you get a case where the MultiV attrib is cleared by removing all the existing values. That results in a null and there is nothing reported in the Removed table. Might be a big deal if I have an MPR that fires off a workflow when that MultiV attrib changes. In the case where the MultiV is cleared, my MPR will fire off, but no “change” is executed. Lets look at an example

  1. MultiV Attrib1 of a group contains users. I want to track the department of the users in Attrib1. So I set up MPR1 to fire off a workflow1 when Attrib1 changes, get the users Added or Removed from the Delta table and add their department to Attrib2.
  2. When Attrib1 is cleared, my MPR does fire off, but the workflow does nothing because there is nothing in the Delta/Attrib1/Removed table, so Attrib2 incorrectly still has department of users.

Solution

In my workflow1, add an activity to run only if Attrib1 is cleared. If Attrib1 is cleared then use RemoveValues to clear Attrib2.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s