Go to Google Groups Home    ibm.software.network.directory-integrator
Re: Delta Changes for LDAP with Multiple Valued Attibute

Eddie Hartman <eddiehart...@gmail.com>

Hi Crul,

The unique Attribute should be a key that only appears once
in the input data set, so the $dn is a good choice. Then you
have to map in the members Attribute so that it will be included
in the Delta computation.

For each changed object (e.g. LDAP entry) you get one Entry
returned with the Delta Operation codes that signal what has
changed. At the Entry level this will be an "add", "delete" or
"modify" tag (or "unchanged" if you tell the Delta Engine to
return these too).

For an Entry tagged "modify" you can then check the operation
code of the Attributes. These are also either "add", "delete"
or "modify", and for "modify" there will be tags for individual
values = "add", "delete".

Here is a How-To that describes delta tagging:
http://www.tdi-users.org/twiki/pub/Integrator/HowTo/HowTo_SyncData_6....

To programmatically check this you could script something
like this:

if (work.getOperation() == "modify") {
   attnames = work.getAttributeNames();
   for (name in attnames) {
      att = work.getAttribute(name);
      if (att.getOperation == "modify") {
          for (i = 0; i < att.size(); i++) {
               if (att.getValueOperation(i) == "add" ||
                   att.getValueOperation(i) == "modify") {
                   task.logmsg( "   --> " + name +
                                   "[" + i + "]: " +
                                   att.getValueOperation(i) +
                                   " : " +
                                   att.getValue(i));
               }
          }
      }
   }

}

Hope this helps!

-Eddie
On Jun 29, 3:38 am, Crul <rudig...@gmail.com> wrote:

> I have an AL set up with a a feed from an LDAP. It's search base is
> looking in the Groups ou. I am only feeding in 1 group which has a
> large number of unique members in the multiple valued attribute
> "uniqueMember" I can feed all of these members fine using a "Loop".

> What I was hoping to do is set up the feed as a delta so I can see
> only changes to Members either added or removed from the
> "uniqueMember" attribute. When I set up a delta and set "Unique
> Attribute Name" to uniqueMember it reports back CTGDIS838W DELTA: The
> Key Attribute 'uniqueMember' countains more than one value.

> And if I set "Unique Attribute Name" to $dn it wont show changes I
> make and process them. It will just say 2 records processed.
> I basically want to just see a list of new and removed members from
> this group and work on them each time.

> What would be the best way to do this?

> I hope there is enough info there.

> Thanks