none
Update Address Atributes with IFF Function? RRS feed

  • General discussion

  • Hello everyone!

    I am evsluating FIM for my company and so far I am excited! I have no strong programming skill so I do the most task over the portal which works fine for me so far.

    Now I hve to meet the folowing challenge:  I want to update the AD Address atributes like City, postal code or street based on the users OU.

    Now my question: is that possible with the IFF function or di I need to write a custopm expression?

    Thanks in advanced for your replies!

    \\Rotkap

    Tuesday, August 7, 2012 8:50 AM

All replies

  • It really depends on your data model, how is the user related to the OU, how is the information like City, postal code related to the OU?

    Need realtime FIM synchronization and advanced reporting? check out the new http://www.imsequencer.com that supports FIM 2010, Omada Identity Manager, SQL, File, AD or Powershell real time synchronization!

    Friday, August 10, 2012 7:15 AM
  • Hi Paul,

    I provision Users based on ther Departments. I also konfiguered automatic OU provisioning.The presidence for the Department info is the HR MA.

    What I now have is when a department of an user changes the ou changes also. What I want is that then also the address attributes provisoned automatically.

    Friday, August 10, 2012 8:26 AM
  • But the address information is on the department (within FIM)

    Need realtime FIM synchronization and advanced reporting? check out the new http://www.imsequencer.com that supports FIM 2010, Omada Identity Manager, SQL, File, AD or Powershell real time synchronization!

    Friday, August 10, 2012 8:43 AM
  • What i want is something like this:

    IIF CustomExpression Eq (ou, "Koeln"  string Im Mediapark 4 

    IIF CustomExpression Eq (ou, "Munich" sting Leopoldstrasse 3  

    Destinations are the address atributes.

    Friday, August 10, 2012 9:16 AM
  • You can do it like that if the information is static and the ou's are not that much. But beware this will cause a lot of manual administration within a IDM system and the information is probably coming from a authoritativeness source.

    You can build a workflow that looks up the department and get the required attributes and set it on the identity


    Need realtime FIM synchronization and advanced reporting? check out the new http://www.imsequencer.com that supports FIM 2010, Omada Identity Manager, SQL, File, AD or Powershell real time synchronization!

    Friday, August 10, 2012 10:03 AM
  • I just need for a demo the first option get working. I configured as described but it doesn’t work! Any idea why?

    

    Friday, August 10, 2012 11:14 AM
  • could you copy paste your exact IIF function which is currently not working? That way we could tell you were to modify it. But as Paul stated, for production usage this might be quit some overhead.

    Also you might be abusing your AD OU capabilities to organise users in buildings/locations where they perhaps don't need any particular settings/delegation stuff. I myself prefer to receive this kind of information from HR.


    http://setspn.blogspot.com

    Friday, August 10, 2012 1:02 PM
  • Hi Thomas,

    Image upload was not possible. Her are the code:

    <export-flow allows-null="false"><src><attr>ou</attr></src><dest>streetAddress</dest><scoping></scoping><fn id="+" isCustomExpression="false"><arg><fn id="IIF" isCustomExpression="false"><arg><fn id="Eq" isCustomExpression="true"><arg>ou</arg><arg>"koeln"</arg></fn></arg><arg>"Im Mediapark 4"</arg><arg>"xxxxx"</arg></fn></arg><arg><fn id="IIF" isCustomExpression="false"><arg><fn id="Eq" isCustomExpression="true"><arg>ou</arg><arg>"Ulm"</arg></fn></arg><arg>"Hauptstrasse 6"</arg><arg>"xxxxxx"</arg></fn></arg></fn></export-flow>
    Thank you.
    Monday, August 13, 2012 8:51 AM
  • Ok, I looked at it, I think this is what you want:

    If you have an attribute called "ou" for each users which holds a simple text value like "Koeln" or "Ulm", then you should be able to go with something like this:

    IIF(Eq(ou,"koeln"),"Im Mediapark 4",IIF(Eq(ou,"Ulm"),"Hauptstrasse 6","no known city, can't map streetaddress"))

    On the other hand, if you want to use the distinguishedname (DN) of a user which is typicaly of the form: cn=user,ou=koeln,ou=...,dc=contoso,dc=com, you can use something like this:

    IIF(NotEquals(ReplaceString(dn,"koeln","dummy"),dn),"Im Mediapark 4",IIF(NotEquals(ReplaceString(dn,"Ulm",dummy),dn),"Hauptstrasse 6","no known city, can't map streetaddress"))

    I the last example I'm using replacestring as a cheap function to find out whether or not a string is part of the DN. If we replace the city we are looking for by "dummy" and the result is another DN, then basically the string should be in it.

    Also not that is a cascading IIF. The more cities (ou's) you have the more levels deep you nest. You can't have the IIF's one after another. You just put the following one as the "else" statement of the previous one.

    Is this somehow clear?


    http://setspn.blogspot.com

    Monday, August 13, 2012 9:08 AM
  • Hi Thomas,

    for testing I just tried your first option. I have created a custom expression with the first option and select as target streetaddress. But when I change the OU of the user nothing happen.

    If I try your 2. option I get the error "dn" is not a known attribute.

    

    Tuesday, August 14, 2012 11:47 AM
  • Where did you verified that nothing hapens, is the synchronization rule processed, is the changed expression imported within the sync engine, you can check if you use the 'preview' within the FIM Sync

    Need realtime FIM synchronization and advanced reporting? check out the new http://www.imsequencer.com that supports FIM 2010, Omada Identity Manager, SQL, File, AD or Powershell real time synchronization!

    Tuesday, August 14, 2012 12:39 PM