CSV Import for Person records (Employees) and trying to set the Main Identity field

I am experimenting with using the CSV import in Synchronization editor for importing users into 1ID (9.0 LTS).  This is going fine, but I also want to make sub-identities which reference a main identity.  At the moment, I have the following CSV file format:

FirstName,LastName,email,Master Identity,External,subCompany
CSV,Users,csv.user@test.com,,True,SeleneB2B
CSV,SubIdentity,csv.subidentity@test.com,SeleneB2B1,True,SeleneB2B

In the mapping of the CSV synchronization, I am setting the Personel Number to be concatenation of the SubCompany and the row number of the CSV to make a unique reference.  This is why on the second line, the Master Identity field is pointing to the first (SeleneB2B + Row number (1)).  I will look at making this more unique later but this is for testing.

In the synchronisation, I have Person Record, and on the right I have the schema for the CSV.

What I am wanting to do is set the Master Identity Reference to the lookup of the Person record where the Personel Number is what the Master Identity field in the CSV is referencing.

I thought I might be able to do this with Key by reference, but I cannot figure this out.

Is this possible, or am I going about this the wrong way?

Parents
  • Hi Kelvin,

    please have a look at your OneIM installation media. In subdirectory ...\Modules\DPR\documentation\<ISO-Language>\Subsystems you will find the "OneIM_DPR_TechnicalInsight" documentation. Have a look at chapter "How does dependency resolution work?".

    Regards,

       Tino

  • Thank you for the pointer.  I have looked at this document.  However, what I cannot seem to grasp, is what do I need to do to take a value, in this case Master Identity (which is row 2 contains "SeleneB2B1") and get it to look up a person record with the Personnel field as this, and then set the Main Identity to this value.  It is the second row so the first row should have already been inserted?  Also, I am also running this multiple times, so the first one is definitely there.  Just need to get the reference working for a start...maybe?

    In mappings, I have created a virtual mapping (since I cannot seem to upload screenshots):

    1IDM Virtual field:
    Key resolution by reference

    Name: vrtManagerLookupIdentity 
    Base property: Main Identity
    Write Key/Read Result: Personnel Number
    Booleans:  Read only, Save unresolvable keys, report unresolvable keys

    And in the mapping field I have put the following:

    Value comparison rule
    Mapping direction: One Identity Manager
    Schema Property (1ID): vrtManagerLookupIdentity
    Target System: Personnel Number

    Direction <-- (to one identity)

    Personnel Number is made up of the following:

    Target side:

    Property Join:
    Fields: subCompany and RowId

    For mappings I have:

    Personnel number <-- Personnel Number
    vrtManagerLookupIdentity <-- Personnel Number

    When I run a simulation, it does not even show my the vrtManagerLookupIdentity field.

    I am sure there is a simple explanation.

  • So, I am writing this up here for anyone else that may come along with a similar question.

    What Tino stated was correct.  1ID does automatically add additional steps in if it is said to do this automatically.  However, I ass-u-me that this would be something that I could see.  It isn't.  The only way to see this additional step is by going into Syncrhonization manager - opening the CSV project > workflows > selecting the workflow that you are interested in, and then pressing the Show implementation plan under workflows on the right lower pane.  This will then show you any additional steps that the system will be doing.  In my case, matching the sub-identity with the primary identity.

    Also, running a simulation will not show the connection / changes being made.  This is what sent me down a rabbit hole.  Not sure if there is a way to auto-show that in a simulation.

    Also, you need to enable logging for the 1IM Setup of the sync project to be able to see these matches in the sync logs (from what I see) when run.

    The config that I have above is generally correct.  For testing I changed the mapping in vrtManagerLookupIdentity to be Master Identity to use what was in the CSV file.

Reply
  • So, I am writing this up here for anyone else that may come along with a similar question.

    What Tino stated was correct.  1ID does automatically add additional steps in if it is said to do this automatically.  However, I ass-u-me that this would be something that I could see.  It isn't.  The only way to see this additional step is by going into Syncrhonization manager - opening the CSV project > workflows > selecting the workflow that you are interested in, and then pressing the Show implementation plan under workflows on the right lower pane.  This will then show you any additional steps that the system will be doing.  In my case, matching the sub-identity with the primary identity.

    Also, running a simulation will not show the connection / changes being made.  This is what sent me down a rabbit hole.  Not sure if there is a way to auto-show that in a simulation.

    Also, you need to enable logging for the 1IM Setup of the sync project to be able to see these matches in the sync logs (from what I see) when run.

    The config that I have above is generally correct.  For testing I changed the mapping in vrtManagerLookupIdentity to be Master Identity to use what was in the CSV file.

Children
No Data