Multi-valued fields in OIM user profile

Hi,
Does anyone of you have the need and find the solution for multi-valued user profile data in OIM? If so, could you please share your solutions?
Thanks,
Iris

Thanks Harrison ,
Hi U R,
The Key generation will work but quite tuff to explain the solution to you since we did something similar in SP04 but in this case might be that will be difficult approach than other simplar approches.
I guess these 2 pdf will help you (they using business content so it will be easy to replicate for you to understand).
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e01d1085-5a51-2a10-2292-b52eb7500180
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5099ca3a-4ff7-2910-f6b2-e2e3fb7d06be
By the way, Is your question  how does R3 get the record in MDM with the "123" ID was abt
how does R3 get the record in MDM with the "123" ID.  ( Importing into MDM from R/3)
or how does R3 get the record from MDM with the "123" ID.  (Syndicating from MDM to R/3)
+ An

Similar Messages

  • Multi Value User Defined field on OIM user form

    Hi Everyone,
    I have a requirement where i need to assign multiple resources to user as per access policy. These resources should be assign by virtue of some role (custom attribute as of now). The specific requirement is that one user may have multiple roles (and hence resources) and all these values should capture in any user defined field. As the requirement contains multiple Roles so we have to create multi-value user defined field for User form to capture all these role values under single attribute. Does OIM provides any such multi-value field OOTB (lookup, drop down--any customize way we can make them multivalue)?

    He's right. Multi Valued attributes on the User Profile are not available in OIM. If you want to do this, and you have a finite number of possible roles, you can create UDFs for each and map a checkbox or something to it if the user has that value. Then base your acccess policies off those.
    -Kevin

  • OIM: Help understanding Multi-Valued fields

    I'm having a bit of trouble passing the values of a multi-value field into an adapter and I think I have the whole structure of how this works wrong.
    I have a custom RO where a user can select multiple custom defined "Roles". I want to pass the selection of these roles to an adapter for processing. I thought I could just pass the variable name selectedRoles and it would automatically concatenate them into a string delimited by "|".
    is this not the case? How would I process the selections made by the user? I have the whole process working, form wise. It's just I can't seem to pass the selected roles into an adapter.
    Any ideas?
    When I try to map adapter variable to Process Data -> (Child Table) Roles -> Role Name I get this error:
    ERROR,27 Sep 2010 12:35:08,289,[XELLERATE.DATABASE],select UD_ROLES_P_ROLENAME from UD_ROLES_P where UD_ROLES_P_KEY =
    java.sql.SQLSyntaxErrorException: ORA-00936: missing expression
    at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:91)
    Edited by: Alex S on Sep 27, 2010 12:41 PM

    Nops ! ! For child table data, your custom adapter or code would be called in every time for each value selected, so its not a string separated by a delimiter. Also its easier for OIM to manage these values individually rather than passing them as a string.
    So your Process Data -> (Child Table) Roles -> Role Name mapping appears fine, but this would just pass one value at a time and then you have to call this adapter number of times based on the action insert, update or delete on child table data.
    Thanks
    Sunny

  • Mass updating a multi-valued field- to append the new value

    I have a question on multi-valued fields:
    I have store table with 5 multi-valued fields, say MLB, soccer, college FTBL, college Basketball, etc. 
    A store can have 4 MLBs, 2 soccer teams, and so on. 
    Say, there is a new MLB that came out called Mexico MLB team. 
    A user wanted to add this to 30 stores using a mass update.  But remember the 30 stores can have totally different sets of values in the multi-valued fields.
    How can I add this new value while still preserving the MLB team’s values of each store record?
    Does MDM not support this feature?
    I am using SAP MDM SP6
    An answer would be highly appreciated.
    Thanks
    Savi

    Savi,
    I assume you are defined these fields as multi-value lookup and linked to main table. In general, you can not because it will mess up and overwrite your multi-value entries for all of your 30 store records.
    Here is something in MDM come in handy. It is following the same concept but design your model a little differently. If you model your multi-value fields into qualified lookup table, it will be easier and optimized to handle.
    You can select all 30 records and mass-update with adding the new MLB entry into your Q-lookup table. Once you save, this mass-update action will respect all your diversity of each individual records with the new value added.
    Hope this helps
    If this answers your question, please kindly reward the points.
    Regards
    Dawei

  • SQL2 | How to add condition on multi-value field?

    Hello,
    I am trying to perform a JCR query using SQL2 in CQ5.6. For one of the conditions, I wish to compare a multi-value field (E.g. cq:tags).
    How would that be possible? Currenlt, I only managed to compare my query item's cq:tags to a single value (e.g. WHERE page.[cq:tags]='mynspace:mytag').
    Also, is there a syntax reference for SQL2 queries? Currently I have only managed to find something tanglible here : http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-spi-commons/src/test/resources/or g/apache/jackrabbit/spi/commons/query/sql2/test.sql2.txt?view=markup
    Best regards, thanks in advance,
    K.

    Hi,
    Below is an example of SQL2 query based on your scenario. you can modify and use it
    SELECT * FROM [nt:base] AS s WHERE ISDESCENDANTNODE([/content/geometrixx/en]) and (CONTAINS(s.[cq:tags], 'mynspace:mytag') or CONTAINS(s.[cq:tags], 'mynspace:mytagss1'))
    where root node path  and tags value you can change as per your need. Below is java formation
    StringBuilder query = new StringBuilder();
    query.append("SELECT * FROM [nt:base] AS s WHERE ISDESCENDANTNODE([")
    .append(pathToYourPageArea)   //for example /content/geometrixx/en
    .append("]) AND (CONTAINS(s.[cq:tags],'mynspace:mytag') or CONTAINS(s.[cq:tags],'mynspace:mytagss1'))");
    Query compiledQuery = queryManager.createQuery(query.toString(), Query.JCR_SQL2);
    where 'mynspace:mytag' and 'mynspace:mytagss1' is an example and you can change it with variables
    I hope it will help you to proceed. Let me know if you need more information.
    Thanks,
    Pawan

  • Can you sort a multi value field in descending order on a BC?

    Hi
    We have a date field which is a multivalue field on our Enrolment BC. The field comes from our Attendance BC. The Enrolment BC has a one to many relationship with an Attendance BC.
    We would like to sort this date in descending order for use on the Enrolment BC. We tried this on the link using the associated list sort spec. However this did not work.
    The only way we could get the multi value field to sort by descending order on the Enrolment BC was to add a sort spec on the Attendance BC. That is Date (DESC).
    Is there any other to do this using configuration? We don't want to add a sort spec on the Attendance BC to do this. At the moment it looks we will need to use script on the Enrolment BC.
    Thanks for you help,
    Tim

    That is a good suggestion. It looks like we already have a couple of cloned "Attendance" BC's used by workflow / interfaces so maybe I can use one of these. Thanks!

  • Using Calculated Field in Multi Value Field

    In Siebel Application
    Sales Order---> List
    There is a field call "Sales Rep" which displays an "USERID" of Order Sales Team Mvg Applet.
    But We want to display the Last Name and First Name (combined).We got the first and last name using calculated field (Active Full name).
    When I try to get the full name, the system display the name based on the "Primary position", if I step out of the particular row and come back again
    Is there any way to display the full name without step out any rows for Sales Rep field

    Your description is a little confusing. For performance reasons it is always best to set the use primary join on multi value links. This means that when multi value fields are displayed in applets they always show the primary by default. If you want to display something other than the primary what is your rational behind this and why not make the record you want to display the primary?
    Message was edited by:
    Richard@AXA

  • Migrate MS Access 2007 multi-valued fields to MS SQL 2012

    Hi! I do have a MS Access data base (made of MS Access 2007) which has an Attachement field. As you know Attachment DataType is a multi-valued field that replaces the Object Link Embedding (OLE) Object DataType in the new Access Database (ACCDB) file
    format. At present the whole DB has reached to the max size which is 2GB. Since we want to use the data and add more data to it, I was tasked to findout ways of converting it to SQL server. I have tried to use Import and Export data x32 module to import data
    from MS Access to MS SQL Express 2012. All the data were imported except the BLOBs at the Attachement filed. Could you please help me to import those BLOBs to MS SQL DB. Thx!

    Hello,
    About those OLE objects, please try the following article:
    http://www.codeproject.com/Articles/90908/Saving-OLE-Object-as-Image-Datatype-in-SQL
    Another recommended resources:
    http://www.microsoft.com/en-us/download/details.aspx?id=28763
    http://blogs.msdn.com/b/ssma/archive/2011/03/06/access-to-sql-server-migration-understanding-data-type-conversions.aspx
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • How To Import Into A Table with Multi-Value Fields

    Hello:
    I have a table with a multi-value field that contains states in which a company does business.  It is multi-value because there can be more than one state.  I tried to import a text tab-delimited file in which the data was arranged as follows:
    Field1 Tab Field 2 Tab OR, WA, CA Tab
    The "State field contained the multiple entries separated by a comma (like they appear in a query of the multi-value field), but it won't accept it.  Does anyone know how to import into a multi-value field?
    Thanks,
    Rich Locus, Logicwurks, LLC

    Joana:
    Here's the code I used to populate a multi-value field from a parsed field.  The parsing routine could be greatly improved by using the Split function, but at that time, I had not used it yet.   FYI... the field name of the multi-value field in
    the table was "DBAInStatesMultiValue", which you can see in the example below how it is integrated into the code.
    Option Compare Database
    Option Explicit
    Option Base 1
    Dim strInputString As String
    Dim intNumberOfArrayEntries As Integer
    Dim strStateArray(6) As String
    ' Loop Through A Table With A Multi-Value Field
    ' And Insert Values Into the Multi-Value Field From A
    ' Parsed Regular Text Field
    Public Function InsertIntoMultiValueField()
    Dim db As DAO.Database
    ' Main Recordset Contains a Multi-Value Field
    Dim rsBusiness As DAO.Recordset2
    ' Now Define the Multi-Value Fields as a RecordSet
    Dim rsDBAInStatesMultiValue As DAO.Recordset2
    ' The Values of the Field Are Contained in a Field Object
    Dim fldDBAInStatesMultiValue As DAO.Field2
    Dim i As Integer
    ' Open the Parent File
    Set db = CurrentDb()
    Set rsBusiness = db.OpenRecordset("tblBusiness")
    ' Set The Multi-Value Field
    Set fldDBAInStatesMultiValue = rsBusiness("DBAInStatesMultiValue")
    ' Check to Make Sure it is Multi-Value
    If Not (fldDBAInStatesMultiValue.IsComplex) Then
    MsgBox ("Not A Multi-Value Field")
    rsBusiness.Close
    Set rsBusiness = Nothing
    Set fldDBAInStatesMultiValue = Nothing
    Exit Function
    End If
    On Error Resume Next
    ' Loop Through
    Do While Not rsBusiness.EOF
    ' Parse Regular Text Field into Array For Insertion into Multi-Value
    strInputString = rsBusiness!DBAInStatesText
    Call ParseInputString
    ' If Entries Are Present, Add Them To The Multi-Value Field
    If intNumberOfArrayEntries > 0 Then
    Set rsDBAInStatesMultiValue = fldDBAInStatesMultiValue.Value
    rsBusiness.Edit
    For i = 1 To intNumberOfArrayEntries
    rsDBAInStatesMultiValue.AddNew
    rsDBAInStatesMultiValue("Value") = strStateArray(i)
    rsDBAInStatesMultiValue.Update
    Next i
    rsDBAInStatesMultiValue.Close
    rsBusiness.Update
    End If
    rsBusiness.MoveNext
    Loop
    On Error GoTo 0
    rsBusiness.Close
    Set rsBusiness = Nothing
    Set rsDBAInStatesMultiValue = Nothing
    End Function
    Public Function ParseInputString()
    Dim intLength As Integer
    Dim intStartSearch As Integer
    Dim intNextComma As Integer
    Dim intStartOfItem As Integer
    Dim intLengthOfItem As Integer
    Dim strComma As String
    strComma = ","
    intNumberOfArrayEntries = 0
    strInputString = Trim(strInputString)
    intLength = Len(strInputString)
    ' Skip Zero Length Strings
    If intLength = 0 Then
    Exit Function
    End If
    ' Strip Any Leading Comma
    If Mid(strInputString, 1, 1) = "," Then
    Mid(strInputString, 1, 1) = " "
    strInputString = Trim(strInputString)
    intLength = Len(strInputString)
    If intLength = 0 Then
    Exit Function
    End If
    End If
    ' Strip Any Trailing Comma
    If Mid(strInputString, intLength, 1) = "," Then
    Mid(strInputString, intLength, 1) = " "
    strInputString = Trim(strInputString)
    intLength = Len(strInputString)
    If intLength = 0 Then
    Exit Function
    End If
    End If
    intStartSearch = 1
    ' Loop Through And Parse All the Items
    Do
    intNextComma = InStr(intStartSearch, strInputString, strComma)
    If intNextComma <> 0 Then
    intNumberOfArrayEntries = intNumberOfArrayEntries + 1
    intStartOfItem = intStartSearch
    intLengthOfItem = intNextComma - intStartOfItem
    strStateArray(intNumberOfArrayEntries) = Trim(Mid(strInputString, intStartOfItem, intLengthOfItem))
    intStartSearch = intNextComma + 1
    Else
    intNumberOfArrayEntries = intNumberOfArrayEntries + 1
    intStartOfItem = intStartSearch
    intLengthOfItem = intLength - intStartSearch + 1
    strStateArray(intNumberOfArrayEntries) = Trim(Mid(strInputString, intStartOfItem, intLengthOfItem))
    End If
    Loop Until intNextComma = 0
    End Function
    Regards,
    Rich Locus, Logicwurks, LLC
    http://www.logicwurks.com

  • Move Users from one OU to other on AD based on the OIM user profile attrs

    Hi All
    I am currently pre-populating AD User OU attribute based on the OIM User profile Location attribute. This is working as expected.
    Now when the location changes, I wanted to move the user from the current OU to a different one based on the location provided. Here I am kind of stuck.
    I think I can use access policies / User triggers to get this done, but is there any other approach / additional configuration for pre-populate.
    Are pre-populate only for the first time User Provisioning?
    Regards
    user12841694

    Hi Martin
    For the above requirement we have used lookups and could accomplish the task.
    However, I need a minor clarification here.
    I have OU dependent on Location Code & I also have Users Home Directory[on AD process form] dependent on Location Code.
    How should I use the User triggers to trigger both Change HomeDir and Change OU process tasks on AD User?
    I will create a dummy task with name "*Trigger Location Dependents*" and always return a "TRUE" response in the integrated adapter.
    Now upon true I will generate Change HomeDir & Change OU process tasks.
    I will provide Trigger Location Dependents name aganist USR_UDF_LOCATION code in the triggers lookup.
    Should this work or do u have any suggestion..Please
    Regards
    user12841694
    Edited by: user12841694 on Dec 23, 2010 6:59 AM

  • Javascript client object model : get value of person or group multi value field (need the username)

    How to get value for a Person or Group field which is of multi value?
    Below is my code:
     var _Assigned = "";
                if (appPendItem.get_item("Assigned").length > 0)
                    if (appPendItem.get_item("Assigned").length ==1)
                        _Assigned = appPendItem.get_item('Assigned').get_lookupValue();
                    if (appPendItem.get_item("Assigned").length >1)
                        for (var i = 0; i < appPendItem.get_item("Assigned").length; i++) 
                            _Assigned = _Assigned + appPendItem.get_item("Assigned")[i].get_lookupValue() + ";";
    I am getting error :  Object doesn't support property or method 'get_lookupValue'
    Please suggest how to do this.
    Thanks

    I tired this code, works perfectly for me:
    var itemId = 3;   
    var targetListItem;
    function runCode() {
        var clientContext = new SP.ClientContext(); 
        var targetList = clientContext.get_web().get_lists().getByTitle('XYZ');
        targetListItem = targetList.getItemById(itemId);
        clientContext.load(targetListItem, 'Users');        
        clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
    function onQuerySucceeded() {
        var users = targetListItem.get_item('Users');
    for(var i = 0; i < users.length; i++) {
      var userValue = users[i];
      console.log(userValue.get_lookupValue());
    function onQueryFailed(sender, args) {
        alert('Request failed. \nError: ' + args.get_message() + '\nStackTrace: ' + args.get_stackTrace());
    SP.SOD.executeFunc('sp.js', 'SP.ClientContext', runCode);
    OutPut:
    Blog | SharePoint Learnings CodePlex Tools |
    Export Version History To Excel |
    Autocomplete Lookup Field

  • Set default value for a custom user profile property

    Hello,
    I have a custom user profile property of type boolean. How can I by default set the value to true? OOB the checkbox remains unchecked.
    Any help on this would be appreciated.
    Thanks,
    Neha

    Hi,
    It is not possible out of the box. You can try to create a custom user profile propery programmatically, this article can help you to get started:http://msdn.microsoft.com/en-us/library/ms519896.aspx
    Xue-Mei Chang

  • Sun IdM: How to set a multi-value field on document.mainform via javascript

    The following will set variables.variable1 to variables.variable2 when the "Script Link" component is clicked. I would like to modify
    this so that el2 references a multi-valued element (e.g. a list generated by a Select Field)
    <Field>
    <Display class='Javascript'>
    <String>
    function myScript() {
    el=getElement(document.mainform,"variables.variable1");
    el2=getElement(document.mainform,"variables.variable2");
    el.value=el2.value;
    </String>
    </Display>
    </Field>
    <Field name='Script Link'>
    <Display class='Link'>
    <Property name='URL'>
    <String>javascript:myScript();submitCommand(document.mainform,%20'Recalculate');</String>
    </Property>
    </Display>
    </Field>
    My issue is, if variables.variable2 is a list / multivalued, i get errors trying to traverse through the "array".
    How can i read and set a list element via the javascript function above? I've tried things like get(), put() , as well
    as path expressions like variables.variable2[0] .
    any help would be appreciated....
    is there an API somewhere i can reference?

    The MultiSelect field-type is a little different than the rest of the fields. If you use the applet version, then selecting/deselecting values cannot be captured by referencing the field directly in javascript.
    The way to identify the selections is to use the javascript methods includes/MultiSelect.js file (IDM form submission uses the same method):
    fixMultiSelectAppletBeforeSubmit( )
    fixMultiSelectNonAppletBeforeSubmit( )
    .. and then referencing the "<multiselect-field>_selected" form element.
    So in your case, the code should look something like this:
    function myScript() {
        fixMultiSelectAppletBeforeSubmit(document.mainform,"variables.variable1");
        var el1 = getElement(document.mainform,"variables.variable1_selected");
        // assign the value to variable2..
        el2 = getElement(document.mainform,"variables.variable2");
        el2.value = el1.value;
    }Just make sure ":variables.variable2" is not a multi-select field, else the value set here will be reset during form submission.
    Adi
    [www.xpressutils.com|http://www.xpressutils.com]

  • Using AD connector to populate multi-valued attributes  to OIM

    Could anybody share the expirience of provisioning multi-valued attributes from AD to OIM 11.1.15?
    What is the best approach?
    Thanks.

    mc2,
    you can use http://docs.oracle.com/cd/E23104_01/download_readme_ps4/download_readme_ps4.htm#BABDABDA and http://docs.oracle.com/cd/E21764_01/install.1111/e12002/install.htm#CIHGAEFI as a staring point. This gives you pointers to all software needed and steps to follow.
    Kevin was referring in fact to BP1 11.1.1.5.1, Patch# [12748351|https://updates.oracle.com/download/12748351.html] , not PS1. PS1 is in fact 11.1.1.5.
    Florin

  • Delimiter in Syndication Maps for Multi-Valued Fields

    We are in the process of upgrading to MDM 7.1 from MDM 5.5.  In one of our syndication maps we are syndicating a multi-valued hierarchy field with no particular limit as to how many values the field can hold.  In the old MDM 5.5 Syndication map the xml output delimits this data with ";" (semi-colon) as in the below example.
    <Field>Level 1Level 2Value 1; Level 1Level 2Value 2;Level 1Level2Value 3</Field>
    In MDM 7.1 the values are separated by a "," (comma) like in the example below.
    <Field>Level 1Level 2Value 1, Level 1Level 2Value 2, Level 1Level2Value 3</Field>
    Is there anyway to change the delimiter in MDM 7.1 from a "," (comma) to a ";" (semi-colon) with out splitting the field?
    Thanks!
    Sincerely,
    Courtney

    Hi Brewer,
    Is there anyway to change the delimiter in MDM 7.1 from a "," (comma) to a ";" (semi-colon) with out splitting the field?
    Yes, for e.g in in your syndication map at source item lookup field display as follows
    Country
            |___ Code
            |___ Name
    just map country to destination item instead of using Code or Name, multi vaule will display with ; operator
    In one of our syndication maps we are syndicating a multi-valued hierarchy field with no particular limit as to how many values the field can hold.
    if you want to set length of field you require to set properties at destination item as follows :
    Fixed Column Width : the specific with  destination item
    Max Item Length : Maximum length allowed for the item 
    Hope Above mention point will resolved your problem if not revert back
    Thanks,
    Jignesh Patel

Maybe you are looking for

  • Configuring Maven for a new Project

    Could anyone provide inputs on how to configure Maven for a new project? I am referring to links http://maven.apache.org/guides/getting-started/index.html#How%20do%20I%20setup%20Maven? http://maven.apache.org/guides/mini/guide-creating-archetypes.htm

  • How do you change the following settings...

    I am an adult education teacher who needs to scan a large amout of material for my students. I scan them to the computer as pdf files. I foumd some old scans in my My Documents folder but I cannot find the ones I just scanned two minutes ago. Is ther

  • How to change the standard purchase order ???

    Hi,    i am trying to change the output form of standard purchase order.for that i copied the standard script/form to my own created script/smart form.i modified it as per user requirement and i have given the same name in NACE>EF>output type>NEU>pro

  • Is it Possible to Upgrade Apex on Amazon RDS?

    I don't have any experience of RDS but I'm interested in using it. The problem is RDS seems to come with Apex 4.1. Is it possible to run the upgrade script on it to upgrade it to Apex 4.2?

  • BO Universe : OLAP versus Relational

    Dear expert, I am new to this. And my current understading is: - For using SAP as datasource, you can only have OLAP universe, and you can't really 'JOIN' data from several BW datasource. we can merge but not really 'JOIN' like those with data from r