Import into Lookup Hierarchy Multi-Value Field

My source data contains two fields (Product ID, Product Notes). I need to map the Product Notes into a Hierarchy Lookup Field on main products table.  THe hierarchy table for product notes contains two text fields and both are display fields.  My source data for product notes contains a comma delimited list of values that only apply to one of the display fields of the Hiearchy table.
Example:
product1 |  1,5,10
product2 |  1,3
product3 |  1,6,13
How do I map and assign the multiple product notes to each product?

Hi Sowseel,
I do not understand your assumptions.
I have following tables:
Tablename: Product Notes
Table Type: Hierarchy
Display Fields: Note Number, Note Description
Unique Fields: Note Number
Key Mapping: No
Tablename: Products
Table Type: Main
Display Fields: Product Number
Key Mapping: Yes
The Product Notes table has following example entries already (comma delimitter indicates field seperation):
1, Description of product note 1
2, Description of product note 2
3, Description of product note 3
Notice there is no really hierarchy. This table type was used to have manual control of the order of the notes.
My import data is formated as follows:
Field1 Name = Product Number
Field2 Name = Product Notes
Field1 Value = XYZ
Field2 Value = 2,8,10
In import manager, the product notes field in my destination pane is shown as a heirarchy.  Selecting the root level shows destination values of the display fields for this lookup table (i.e. Note Number, Note Description).  However, my source data only contains a comma delimitted list of note numbers.  I do not understand how to map the values.

Similar Messages

  • 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

  • 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

  • Insert Value(s) in Lookup Flat Multi-valued Table with Java API

    I've been looking in MDM Java API Library Reference Guide, MDM SP4 API JavaDoc, and SDN Forums for information on how to Insert/Update different values in a field in the Main Table of a given repository that belongs to a Lookup Flat Multi-valued Table using the Java API with no success.
    I also haven't been successful in adding this values in the same way that I'll add a single value, using the MDM Java API, in a single-value Lookup Table (a2iFields.Add(new A2iField(FIELD_CODE,FIELD_VALUE)) for each value I want to add, like for example:
    a2iFields.Add(new A2iField("Country","USA")
    a2iFields.Add(new A2iField("Country","Mexico")
    a2iFields.Add(new A2iField("Country","Germany")
    Can anybody point me to the correct documentation that I need to read to fulfill this task? Or, even better, if someone can post a piece of code, I'll be more thankful.
    Thanks for your help.

    HI,
    little code example, where you add existing lookup values based on there record id:
         int USA = 1;
                        int GERMANY = 2;
                        A2iValueArray countryArray = new A2iValueArray();               
                        countryArray.Add(new Value(USA));
                        countryArray.Add(new Value(GERMANY));
                        A2iFields record = new A2iFields();
                        record.Add(new A2iField("Country", new Value(countryArray)));
    Please reward points if helpful.
    Regards,
    Robert

  • 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

  • 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

  • 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

  • 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

  • Multi valued fields

    Hi!
    I try to fill the telephonenumber field of an entry with several values (matched by the selection criteria) with a Join Rule, but only one value will be transfered. All selection criteria match, because when I tested it with only 1 entry (but different criterias) in the connector view (oracle db), it works for every criteria, but not, if there are more entries in the CV, that would match.
    Any hints, how to achieve this?
    thx and greetings
    michi

    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

  • 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

  • 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

  • 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]

  • Does Retry events handle the multi-value field correctly.

    Hi ,
    Just curious if the retry event task handle the multi-value event correctly. Let say we have five values a1, a2, a3, a4, a5 in a child table and while provisioning a2 and a4 get failed. Now when the retry task will run how will it be sure that it will pick up a2 and a4 value in the retry task. My understanding is we need to handle it in the code but just want to make sure if there is any configuration that will make it easy to achieve and we don't need to iterate the values in java code.
    Thanks.

    Hi Kevin,
    Thanks for the reply. Does that mean that in case of retry the code will only execute for a2 and a4 (in the example in mentioned in my initial post) as i couldn't see maintain the key in the task retry schedule task or sch table. Am i missing anything.
    In our case sometimes retry will send the value a1 (as example) while the failure is for a2. Do i need to put some additional config?

Maybe you are looking for

  • Will Adobe Flash 8 work with Windows Vista?

    I was just wondering whether anyone knew whether the new WIndows Vista will work fine with Adobe Flash 8? Thanks

  • Margin 0 auto is not working in IE

    This has got to be something super simple, but I'm missing something. My div will not center in IE.  I've broken it down to as basic as I can get it, but still no centering. http://gtworkspace.com/junk/newIndex.html

  • How to Sort Dimension in Pivot Table via Order Column which is changing like Factual values

    Hi, Recently in of our product offerings we got stuck on this following question: How to Sort Dimension based on the Order Value which Keeps Changing with Factual Values?? We have a data source laid out as (example) In the above the "Order" columns a

  • Apps on iTouch, gone from iMac

    iTunes made a mess of my music, so I deleted the music library, and rebuilt it from backups. Now it works the way that it should. However, my apps on my iTouch (3rd gen) exist and work on the iTouch, but the files are missing from the iMac. B&W icons

  • Problem wit backup through rman

    version 10 2 0 5 windows xp i am trying to take cold backup from test database without using catalog. i mounted database and tried the following query,, its throwing below errror... please help RMAN> backup database; Starting backup at 17-FEB-11 allo