Key mapping Generator Tool

Scenario
One customer has two systems: System A and System B in his landscape. System A serves as the central server for item master data management. He maintains the same set of item master data in System B as that of System B manually. Now, the customer wants to use B1i to keep the item master data in System B automatically up to date as that in System A.
Use this tools to create the keys in the Bizstore.
Please read carefully the documentation before proceeding.
Lot of success,
Felipe

Hi all,
When running the tool I get an exception.
I have created a csv with all the cardcodes in it that need to be pushed. I have uploaded the tool to B1i. I've supplied the parameters and when I click execute the thing throws an exception.
Input path:
D:\B1i\Tools\Mapping Tool\Extracted\B1i2005PL05 or PL06\Reference\Common_BP.csv
Bizflow to execute:
/com.sap.b1i.datasync.keymapping/bfd/KeyMappingGeneration.bfd
Parameters: SenderSysId=0010000100,SenderObjectTypeId=B1.2005_BP,SenderKeyName=CardCode,SenderKeySelectionPath=BOM/BO/BusinessPartners/row/CardCode,ReceiverSysId=0010000102
Exception:
HTTP Status 500 - com.sap.b1i.xcellerator.XcelleratorException: XCE001 Nested exception: com.sap.b1i.xcellerator.XcelleratorException: XCE001 Nested exception: com.sap.b1i.bizprocessor.BizProcException: BPE001 Nested exception: com.sap.b1i.utilities.UtilException: UTE001 Nested exception: com.sap.engine.lib.xml.parser.ParserException: Invalid char #0x0(:main:, row:1, col:414) caused by: com.sap.b1i.xcellerator.XcelleratorException: XCE001 Nested exception: com.sap.b1i.bizprocessor.BizProcException: BPE001 Nested exception: com.sap.b1i.utilities.UtilException: UTE001 Nested exception: com.sap.engine.lib.xml.parser.ParserException: Invalid char #0x0(:main:, row:1, col:414) caused by: com.sap.b1i.bizprocessor.BizProcException: BPE001 Nested exception: com.sap.b1i.utilities.UtilException: UTE001 Nested exception: com.sap.engine.lib.xml.parser.ParserException: Invalid char #0x0(:main:, row:1, col:414) caused by: com.sap.b1i.utilities.UtilException: UTE001 Nested exception: com.sap.engine.lib.xml.parser.ParserException: Invalid char #0x0(:main:, row:1, col:414) caused by: com.sap.engine.lib.xml.parser.ParserException: Invalid char #0x0(:main:, row:1, col:414)
What is wrong?
Kind regards,
Dwight

Similar Messages

  • Key mapping

    Hi All,
    I have 3 fields in my source file Id,Category (Key Mapping) ,Name.
    In Import Manager
    I have mapped Remote Key field with ID .
    Name with Name
    category with Category Qualified Range (A 1-10)
    I have source file like this
    Id name category
    11  10  A
    In syndicator i have one more field Material Number .Mapped this with Material Number (should Get generated material  Number )
    Name with Name
    Category with Category
    Remote Key value with Material Number
    After syndication I am getting Id values in Material Number .(Instead of 1 I am getting 11)
    Can any one let me know the solution?

    Got It . Should not Map Id field with the Remote key in Import Manager.

  • Key mapping/ remote key

    Hi All,
    I  have some understanding of key mapping internal functionality.
    my question is ... should I use this key mapping feature from all look up tables, main table while importing from remote systems?
    should all my feilds have REMOTE KEY enabled.
    Lets say I have loaded data into my repository from 3 different remote systems(R1,R2,R3) using remote key feature.
    Now, I want to see all the records that belong to R1 only or R2 only?
    Can this be seen using remote mapping feature? or how can I see only specific records for one remote system.... should i create another field that identifies the source and just map it? ....... generally how do we handle this?
    Also, have uploaded the data for my lookup table DIVISIONS,when i try syndicating it for remote R1......
    in my destination preview i can see some records that belong to only R2 and R3 also. I mean I am not able to see only the
    records belong to R1 system.
    I mapped
    division <-> div
    desc     <-> desc
    there are two more keys like remote key, v...... Should I also map these keys?
    Pls let me know,
    Thanks & regards,
    Vee

    Hi,
    my question is ... should I use this key mapping feature from all look up tables, main table while importing from remote systems?
    should all my feilds have REMOTE KEY enabled.
    1. It is totally dpeend upon business requirement which table you want to  make remote enable.
        The main reason to use remote key is to syndiacte the data to remote system specific.
         So if you are syndication your subtables to then it is good to make remote key enable.
    2. Only tables are remote key enabled not the fields.
    Lets say I have loaded data into my repository from 3 different remote systems(R1,R2,R3) using remote key feature.
    Now, I want to see all the records that belong to R1 only or R2 only?
    Can this be seen using remote mapping feature? or how can I see only specific records for one remote system.... should i create another field that identifies the source and just map it? ....... generally how do we handle this?
    This is not possible as standard way.
    But workaround is when you map the source field to remote key at destination side in import manager,just make the clone of source field and map it to the new fields to  store  the system from where the records came.
    So in data manager you can search on this field  to see only  records that is specific to some remote system.
    Also, have uploaded the data for my lookup table DIVISIONS,when i try syndicating it for remote R1......
    in my destination preview i can see some records that belong to only R2 and R3 also. I mean I am not able to see only the
    records belong to R1 system.
    I mapped
    division <-> div
    desc <-> desc
    there are two more keys like remote key, v...... Should I also map these keys?
    Yes you have to map these fields as well.
    Even after mapping this  option if you want to syndicate all the remote system records then there is option "override remote keys".after enabling this option  there is record generated for each remote system.
    hope it helps you.
    Thanks,
    Sudhanshu

  • REP-52005: The specified key userlogin does not exist in the key map file.

    Hi,
    I am using oracle 11g report server. I am getting the error of REP-52005: The specified key userlogin does not exist in the key map file.
    I updated the user_string in cgicmd.dat file. My cgicmd.dat file content is below
    ; OracleAS Reports Services                       ;
    ; CGICMD.DAT                                      ;
    ; Example CGICMD.DAT Mapping file                 ;
    ; Syntax: 
    ;      KEY : VALUE
    ; Where:
    ; KEY - the first argument of the rwservlet URL request (case sensitive).
    ; VALUE - command line parameters and/or special parameters.
    ; Keys can be referenced in the following ways:
    ;    1. Parameter on command line to the reports servlet
    ;          e.g. http://machine/servlet/rwservlet?KEY
    ;    2. Parameter on command line to a reports jsp
    ;          e.g. http://machine/mydir/myreport.jsp?KEY
    ;    3. Within a reports jsp - in the rw:report custom tag
    ;          e.g. <rw:report parameters="KEY">
    ; In addition to the Reports Server command line parameters, VALUE can include special parameters
    ; represented as "%X", where X identifies the parameter. Currently recognized special
    ; parameters:
    ;  %0 - %9 - 0..9 arguments from original rwservlet URL request. Note that %0 refers to the key itself.
    ;  %* - entire contents (all arguments) of original rwservlet URL request.
    ;  %D - request users to input database userid everytime they run the report.
    ;  %P - request for report parameter form in HTML format. It generates the PARAMFORM=HTML
    ;       construction on the first submission of the URL and PARAMFORM=NO upon parameter form submission.
    ; CGICMD.DAT Usage Notes
    ;   1. Multiple keys in this file MUST be separated by an EXTRA empty line.
    ;   2. Extra spaces are ignored. Multi-line entries allowed.
    ;   3. Lines starting with ";" character are treated as a comments.
    ;   4. Comments within a key or key value are NOT allowed.
    ;   5. NLS language support is provided and can be used (encoding should match the one
    ;      used in HTML request - no language conversion of any kind is attempted.
    ;   6. For %P special parameter, HTML format is by default mapped to the HTMLTABLE format in this release.
    ;      The HTML format in the future may be mapped to the HTMLCSS format.
    ;;;;;;;;;;;; Example Key Entries
    ;  Example 1:  Run a simple breakb report and output to HTML
    orqa: report=breakb.rdf destype=cache desformat=html server=repserver
    ; Example 2: prompt for userid the first time, then use database userid stored in the cookie subsequently.
    report_defaultid: report=breakb.rdf destype=cache desformat=html server=repserver
    ; Example 3: use %D to require user authentication every time
    report_secure: report=breakb.rdf destype=cache desformat=html server=repserver1 %D
    ; Example 4:  Take all arguments from URL and send it to the reports server
    run: %*
    ; Example 5:  Run breakb report with HTML parameter form.
    breakbparam : report=breakb.rdf destype=cache desformat=html server=repserver userid=scott/tiger@mydb %P
    ; Example 6: take all URL arguments, and also generate a HTML parameter form  
    runp: %* %P
    ; Example 7: Run an Express Report. Replace <MYHOST> with the name of the machine running the Express server. The
    ; builder on-line help explains the rest of the parameters (the /sl, st etc. etc.)
    express: report=my_expr_rep express_server="server=ncacn_ip_tcp:<MYHOST>/sl=1/st=1/ct=0/sv=1/" desformat=htmlcss userid=scott/tiger@mydb destype=cache server=repserver
    ;;;;;;;;;;;; Keys for Reports Demos
    ; Using default/in-process server.
    ; JSPs
    ;charthyperlink_ias: userid="scott/tiger@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=%DBHOSTNAME%)(PORT=%DBPORT%))(CONNECT_DATA=(SID=%DBSID%)))" %*
    ;charthyperlink_ids: userid=scott/tiger@ %*
    ;barcodeweb:         userid=oe
    ;parmformjsp:        userid=oe
    ;tutorial:           userid=oe
    ; Paper Reports
    ;xmldata:            userid=oe report=inventory_report.rdf destype=cache p_filelocation="http://%HOSTNAME%:%OC4JPORT%/reports/examples/xml_pds/scripts/" desformat=pdf
    ;barcodepaper:       userid=oe report=shippingmanifest.rdf destype=cache desformat=pdf
    ;distributionpaper:  userid=oe report=inventory_report_dist.rdf distribute=yes destination=exampledistribution.xml
    ;pdfenhancements:    userid=oe report=utf8test.rdf destype=cache desformat=pdf
    userlogin : userid=SYMFINBTOTEST@fin10r21 %*
    As in the above file i have added a key as userlogin at the end of the file. But the reports server does not take the key that i have given. I followed the same steps provided in oracle docs. I used "showmap" to check the cgicmd file that is used by the reports
    http://aspirevm8-17.aspiresys.com:9002/reports/rwservlet/showmap?server=bluQubeReportsAtLocalEnv&destype&userid=SYMFINBT…
    It shows me the content of the cgicmd.dat file and it also shows my updations. But in the "Parsed Map File Entries" it does not show my key value pair
    Parsed Map File Entries
    Return to Top
    Key Name
    Value
    runp
    %* %P
    breakbparam
    report=breakb.rdf destype=cache desformat=html server=repserver userid=scott@mydb %P
    report_defaultid
    report=breakb.rdf destype=cache desformat=html server=repserver
    run
    report_secure
    report=breakb.rdf destype=cache desformat=html server=repserver %D
    express
    report=my_expr_rep express_server="server=ncacn_ip_tcp:<MYHOST>/sl=1/st=1/ct=0/sv=1/" desformat=htmlcss userid=scott@mydb destype=cache server=repserver
    orqa
    report=breakb.rdf destype=cache desformat=html server=repserver
    Please help me to to make the key being populated here and being used by the reports server.
    Thanks,
    Priya

    uncomment #KEYPMAPFILE=CGICMD.DAT. remove the #
    then for development set
    reloadkeymap=yes (same file - rwservlet.properties).
    Now it should reload everytime. (otherwise for every change u need to restart oc4j_bi_forms)
    (For * production* may be you want to set reloadkeymap=no once all testing is done)
    see cgicmd.dat for many examples of using keymap file
    [ All Docs for all versions ]
    http://otn.oracle.com/documentation/reports.html
    [ Publishing reports to web - 10G ]
    http://download.oracle.com/docs/html/B10314_01/toc.htm (html)
    http://download.oracle.com/docs/pdf/B10314_01.pdf (pdf)
    [ Building reports - 10G ]
    http://download.oracle.com/docs/pdf/B10602_01.pdf (pdf)
    http://download.oracle.com/docs/html/B10602_01/toc.htm (html)
    [ Forms Reports Integration whitepaper 9i/10g ]
    9i - http://otn.oracle.com/products/forms/pdf/frm9isrw9i.pdf
    10g - http://www.oracle.com/technology/products/forms/pdf/10g/frm10gsrw10g.pdf
    http://www.oracle.com/technology/products/forms/techlisting10g.html
    ---------------------------------------------------------------------------------

  • Question about key mapping for bank data in SP3 standard Vendor Repository

    Hello Colleagues:
    The situation is the following:
    1) MDM Standard vendor repository does not use Key Mapping for the qualified table data "Bank Details". This makes sense because normally you would pay a vendor in the same account and bank regardless of the company or R/3 system you are paying him from.
    2) However, here in my project customer don't have the same bank data for all of the 3 R/3 Systems. Furthermore, they would like to pay a vendor in a diferent bank and account number; depending on where the payment is generated (Company or R/3 system).
    Because of this, I though about creating a lookup table for the banks which would use key mapping. I did this and I had no trouble importing bank data in to it.
    Now I have this tables:
    1) Banks: Lookup Flat:
    Country and Bank Key as display fields.
    2) Bank Details: Qualified Flat:
    2.a) Field "Bank" as a non-qualifier display lookup field which points to a record on "Banks" table (Described in number 1).
    2.b) The rest of the fields (Account number, Account holder, Reference, etc.) as qualifier non-display fields.
    This aproach works well in data manager.
    However, when I try to import vendors from R/3, I'm not being able to map the bank details, not even with "compound field" functionality, because I cannot map the display fields in the "Banks" lookup table (Described in number 1); in the "Map Fields/Values" tab in the Destination fields pane, it won't show any fields from this table.
    Also, I'm not very sure if I will be able to syndicate this data back to the R/3 systems correctly, this is; replicate only the banks which exist on each R/3 client system.
    Any ideas on how to solve this problem? Please help.
    Best Regards,
    Jorge.

    ... Where
    did Terminal's default keystrokes (e.g., Esc,[5C for
    ctrl-right-arrow) come from? They just produce
    annoying beeps in bash. Are they standard sequences
    for some shell that I don't know about? I
    Somewhere deep in the bowels of computer history....for example
    http://vt100.net/docs/vt100-ug/table3-6.html
    http://www.termsys.demon.co.uk/vtansi.htm#cursor
    that is to say, these codes date back to early hardware terminals such as the VT100. I believe. And that is why Terminal is a member of a class of software called "terminal emulators".

  • MDM Exception: Key mapping value must be unique. You cannot overwrite key

    "ServerException: Key mapping value must be unique. You cannot overwrite key mapping values."
    I received such exception when code tried to manipulate Key Mappings of the record.
    error was not happen on mdm 5.5 but on 7.1 it sometimes appears.
    What is probable reason of this?
    How to resolve this ?
    Code is approximate so:
                                         String[] keys = keyMapping.getKeys();
                        if (recordKeyMapping.containsKeyMapping(remoteSystem)) {
                    recordKeyMapping.replace(remoteSystem, keys);
              else {
                   recordKeyMapping.addKeyMapping(keyMapping);
              //Persist
              targetRecord.update();
    //where methods are:
         public void replace(RemoteSystem remoteSystem, String[] keys) {
              KeyMapping keyMapping = getKeyMapping(remoteSystem);
              if (keyMapping == null) throw new IllegalArgumentException("Can't update keys: key mapping for the system '" + remoteSystem + "' is not found");
              else {
                   keyMapping.setKeys(keys);
         public void addKeyMapping(KeyMapping keyMapping) {
              RemoteSystem remoteSystem = keyMapping.getRemoteSystem();
              for(int i = 0; i < keyMapping.size(); i++) {
                   addKey(remoteSystem, (String) keyMapping.get(i));
    Edited by: Vladimir Grigoryev on Oct 5, 2010 11:26 AM

    Hello -
    I am not sure on that coding part. but is it like are you trying to retrive Key Mapping from Memory accelerator. Here this information always needs to be read from Database.
    I am sure you also maintained  the required attribute for key mapping as in Property in Console should be set as "Yes" and other relevant things properly .
    Here also go through the below link for more insight from tools perspective.
    http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30843106-5539-2b10-75a9-da483911b0d9
    http://help.sap.com/javadocs/mdm/sp06/com/sap/mdm/data/KeyMapping.html
    It may help
    Rgds
    Deep

  • How to Maintain Surrogate Key Mapping (cross-reference) for Dimension Tables

    Hi,
    What would be the best approach on ODI to implement the Surrogate Key Mapping Table on the STG layer according to Kimball's technique:
    "Surrogate key mapping tables are designed to map natural keys from the disparate source systems to their master data warehouse surrogate key. Mapping tables are an efficient way to maintain surrogate keys in your data warehouse. These compact tables are designed for high-speed processing. Mapping tables contain only the most current value of a surrogate key— used to populate a dimension—and the natural key from the source system. Since the same dimension can have many sources, a mapping table contains a natural key column for each of its sources.
    Mapping tables can be equally effective if they are stored in a database or on the file system. The advantage of using a database for mapping tables is that you can utilize the database sequence generator to create new surrogate keys. And also, when indexed properly, mapping tables in a database are very efficient during key value lookups."
    We have a requirement to implement cross-reference mapping tables with Natural and Surrogate Keys for each dimension table. These mappings tables will be populated automatically (only inserts) during the E-LT execution, right after inserting into the dimension table.
    Someone have any idea on how to implement this on ODI?
    Thanks,
    Danilo

    Hi,
    first of all please avoid bolding something. After this according Kimball (if i remember well) is a 1:1 mapping, so no-surrogate key.
    After that personally you could use Lookup Table
    http://www.odigurus.com/2012/02/lookup-transformation-using-odi.html
    or make a simple outer join filtering by your "Active_Flag" column (remember that this filter need to be inside your outer join).
    Let us know
    Francesco

  • Key Mapping in Syndication Port

    Hi,
    Scenario -- Syndication through mdm outbound port (automatic mode) :
    What will happen after XI successfully created data in R3 ? How MDM will get key mapping?
    Do you need to execute import manager externaly to update key mappings or it will automatically take care?
    Regards,
    Ram

    There are several options here :
    1) If the Client system allows external numbering, the key can be generated on MDM, and would be transferred in the XML-File and once a new record is created in the Client system, it would takeover this key. When you look in the Console in the Remote system section, there's a field "Key-Generation", which cen be used for this.
    2) Internal numbering on the CLient system. When the client system creates a key, this needs to be transferred back to MDM. This can be done e.g via calling a web-service "MDMAddRemoteKey".
    Regards Klaus

  • Key mapping for forms on web

    Presently we are using forms 4.5. We have got costomise key
    mapping for operating through forms. Now we want to start forms
    on web (Intranet). Earlier we use to change key mapping through
    oracle*terminal. I require help in knowing how to customise key
    mapping in forms 6i / oracle 8.1.7.

    Hi,
    Boy, I have some good news to you: Oracle*Terminal is no longer
    needed.
    WordPad (or your favorite text editor) is your tool from now on.
    Keyboard files are located in $ORACLE_HOME\FORMS60.
    Simply ignore the binary file fmrusw.res when you run Forms on
    the Web. FMRWEB.RES is the one that is used, and it's pure ASCII.
    There are some comments in the file itself.
    The keys are the same as the Motif version of Forms.
    If you prefer the Windows keys, simply use FMRPCWEB.RES instead.
    How? Check under $ORACLE_HOME\FORMS60\SERVER for your
    formsweb.cfg, go to User Parameters and replace the
    otherparams=
    line with
    otherparams=term=%forms60%\fmrpcweb.res
    Now, anyone can define the Function-0 till Function-9 key
    combinations, in order to use KEY-F0 till KEY-F9 triggers.
    Hope this helps,
    Pedro das Neves
    [email protected]

  • Key Mapping Sample

    Hi
    Is there any simple key mapping sample?
    I would like to create a protoype loading (manually) a materials base from different sources (companies) and later try to create key mapping, in order to understand how this key mapping works.
    Regards,
    Ronaldo.

    Hi Roman
    Thanks for your answer.
    As I am beginner in MDM, I am not even sure if key mapping is what I need.
    What I want to do is:
    - Simulate a group with 3 companies. In this group each company has its own materials database. So, let's suppose a certain material has a different code in each company.
    - In company A, this material is called A1.
    - In company B, this material is called B1.
    - And in company C, C1.
    After these material bases have been loaded in MDM, someone would analyze these products, and based on there coincident physical characteristics conclude: OK, all are the same material. All these materials would receive a UNIQUE identification, which could be used to generate cross-company reports, allowing these "different" products be grouped together (or compared).
    This UNIQUE Identification should be something like below:
    Product  Company   Unique Code
    A1       A         X001
    B1       B         X001
    C1       C         X001
    Is that the objective of Key mapping?
    If so, I am having some problems to make it works:
    - There is a agency field in Key Mapping. What it means? Would it be the same as "company" in example above? If so, why there is no Agency field in records that I insert manually...I feel I am missing some important concept here.
    - When I insert a key mapping for my second product, the key mapping for the first one is delete. Why?
    Definitively I know that my questions are very basic (and boring, probably). If there is a tutorial for newbies, I would appreciate.
    Regards,
    Ronaldo.

  • Key Mapping with Oracle Reports

    I am currently trying to run report requests using the Oracle Report Server however the problem that I have is that we need to send database username/password information over the network. From a security perspective this is not acceptable.
    One way we were going to get around this is to "wrap" the Oracle Report servlet with another servlet, so the client browser sends the wrapper servlet information such as report location and report name, and the
    wrapper servlet adds in additional information such as the username and
    password, eliminating the need for the client application to know this information.
    The problem is that the URL returned to the client when the report is generated contains the username/password, which again is not
    acceptable. As I have seen mention that Oracle Reports can be run over the Internet,
    I assume that there is a mechanism for hiding this information. Do you know how to achieve this?.
    I am keen to just hard code the user name, password, and database connection into a key mapping file to resolve this security issue. However we are having trouble getting this method to work with the Oracle Report Servlet. We are using WebLogic Server to serve these servlets.

    Hello,
    Here is an extract from Reports documentation:
    Oracle9iAS Reports Services Publishing Reports to the Web
    Release 2 (9.0.2)
    Part Number A92102-01
    3.3.2 Reloading the Key Map File
    Use the RELOAD_KEYMAP parameter to specify whether the key map file
    (cgicmd.dat) should be reloaded each time the servlet receives a request.
    For example:
    RELOAD_KEYMAP=yes
    This is useful if you frequently make changes to the map file and want the
    process of loading your changes to be automatic. Runtime performance will be
    affected according to how long it takes to reload the file.
    Typically, this parameter is set to no in a production environment and yes in
    a testing environment.
    Regards

  • Import Manager 'Error 5611520 - Error Saving Key Mapping'

    I am using CREDITOR_EXTRACT in R/3 to send Vendor IDoc to XI and use CREMDM04 type.  XI generates an XML file that I load into MDM using a client that is set up for Inbound/Outbound.  The key mappings have been turned on for the Vendor repository.
    In IM, I use the standard map CREMDM04 and the system maps the incoming XML file to the vendor main table.  There are few values that I have to map manually - fine.  Next, when I click Import, I get a error pop-up message 'Error Saving Key Mapping - Errno 5611520'.
    Has anybody experienced this when using all standard content (schemas and maps) for Vendor?
    Thanks in advance.

    Subbu,
    Found another system that has the same versions as you do.  This particular error did not appear, but we got some internal IM error.  Also, the SAP training demos are on the same versions as mine.
    I am using MDC R/3 as the client and the CREMDM04 schema map.  Not using MDM inbound ports for now.  Just loading XML file generated by XI based on CREMDM04. Do you think that I need to define a Qualified Range for this client in the Console or can it be left blank?
    Thanks.

  • Key Mapping Conflict of GT780DX

    My GT780DX is unable to support 10 keys pressed together, while it is said
    "MSI’s gaming keyboard supports simultaneous pressing of 10 keys or more, allowing users to issue commands rapidly and respond to games with precision."
    Two examples:
    Key I invalid when Key S,D are pressed together;
    Key D invalid when Key U,I are pressed together.
    I am wondering if my nb is lack of some drivers,
    though I have downloaded the most drivers from official site http://www.msi.com/product/nb/GT780DX-GT780DXR-.html

    Hi,
    my question is ... should I use this key mapping feature from all look up tables, main table while importing from remote systems?
    should all my feilds have REMOTE KEY enabled.
    1. It is totally dpeend upon business requirement which table you want to  make remote enable.
        The main reason to use remote key is to syndiacte the data to remote system specific.
         So if you are syndication your subtables to then it is good to make remote key enable.
    2. Only tables are remote key enabled not the fields.
    Lets say I have loaded data into my repository from 3 different remote systems(R1,R2,R3) using remote key feature.
    Now, I want to see all the records that belong to R1 only or R2 only?
    Can this be seen using remote mapping feature? or how can I see only specific records for one remote system.... should i create another field that identifies the source and just map it? ....... generally how do we handle this?
    This is not possible as standard way.
    But workaround is when you map the source field to remote key at destination side in import manager,just make the clone of source field and map it to the new fields to  store  the system from where the records came.
    So in data manager you can search on this field  to see only  records that is specific to some remote system.
    Also, have uploaded the data for my lookup table DIVISIONS,when i try syndicating it for remote R1......
    in my destination preview i can see some records that belong to only R2 and R3 also. I mean I am not able to see only the
    records belong to R1 system.
    I mapped
    division <-> div
    desc <-> desc
    there are two more keys like remote key, v...... Should I also map these keys?
    Yes you have to map these fields as well.
    Even after mapping this  option if you want to syndicate all the remote system records then there is option "override remote keys".after enabling this option  there is record generated for each remote system.
    hope it helps you.
    Thanks,
    Sudhanshu

  • SAP MDM 7.1 Vendor Number and key mapping

    We are importing data for vendors whcih DO NOT have any VendorNumber now. (they have some the VendorNumber but not one which can be used in the field Vendor Number.)
    We have to generate the VendorNumber during oar - better - after the import.
    There is not problem creating is after the import with a simple assigmment statemen which contains some rules.
    So far so good.
    The pitfall in creating the number AFTER the import is that NO remote keys are generated.
    Any idea how to create these keys AFTER or DURING import IF hte venoder number is assigned during or after import?

    Hi Lutz-Peter,
    Any idea how to create these keys AFTER or DURING import IF the venoder number is assigned during or after import?
    During Import, if you have local keys for each of these remote system, you can maintain it using Remote key concept.
    But you must have one Matching field(Global ID) for this. Since you are creating Vendor key centrally in MDM using MDM Data Manager. Are you exporting data to different remote systems after creating Vendor number centrally in MDM(which can acts as Global ID) If yes then after data created into Remote systems, you can bring Local ID of remote system with this Global ID during import. 1stly, for this your main table property Key Mapping = yes should be enabled in MDM console.
    So during import you should open MDM Import Manager by selecting required Remote system, you will get one more field in target Remote Key, map this target field with with source Local ID field along with other fields like Global ID etc. So in this you will have your Remote Key for Remote systems.
    However Remote Keys depends on how are you creating Local ID(remote Keys) for remote systems, i mean in Remote systems itself or through MDM Syndicator using Remote system Key Generation concept.
    Regards,
    Mandeep Saini

  • N-m mapping generates blobs in ref-table

    Why generates the schematool blobs in the reference-table of a n-m mapping?
    I want to map an existing schema and this isn't possible with blobs. I
    expected a table with the primary-keys of each class.

    Abe White wrote:
    Why generates the schematool blobs in the reference-table of a n-m mapping?
    I want to map an existing schema and this isn't possible with blobs. I
    expected a table with the primary-keys of each class.
    Kodo fully supports n-m and m-m mappings. If you post your .jdo files and
    describe your schema somehow we can probably help you find out where the
    problem lies.Hello,
    here I send you a short and useless example which contains
    my two problems:
    - n-m mapping generates blobs in ref-table
    - multi-table inheritance mapping
    This are my classes:
    Class Person
    String firstname
    String lastname
    Class Employee extends Person
    long personalNumber
    Collection memberOf ( TYPE Project )
    Class Project
    String projectname
    Collection members ( TYPE Employee )
    The jdo-metadata:
    <?xml version="1.0"?>
    <jdo>
    <package name="test">
    <class name="Person" identity-type="application"
    objectid-class="PersonPK">
    <extension vendor-name="kodo" key="table" value="DB_PERSON" />
    <extension vendor-name="kodo" key="lock-column" value="VERSION_ID" />
    <extension vendor-name="kodo" key="class-column" value="none" />
    <field name="firstname" null-value="exception" primary-key="true">
    <extension vendor-name="kodo" key="data-column"
    value="FIRSTNAME_TXT" />
    <extension vendor-name="kodo" key="column-length" value="50"/>
    </field>
    <field name="lastname" null-value="exception" primary-key="true">
    <extension vendor-name="kodo" key="data-column"
    value="LASTNAME_TXT" />
    <extension vendor-name="kodo" key="column-length" value="50"/>
    </field>
    </class>
    <!-- I tried both -->
    <!-- <class name="Employee"
    persistence-capable-superclass="test.Person"> -->
    <class name="Employee" identity-type="application"
    objectid-class="PersonPK" persistence-capable-superclass="test.Person">
    <extension vendor-name="kodo" key="table" value="DB_EMPLOYEE" />
    <extension vendor-name="kodo" key="lock-column" value="VERSION_ID" />
    <extension vendor-name="kodo" key="class-column" value="none" />
    <field name="personalNumber" null-value="exception">
    <extension vendor-name="kodo" key="data-column"
    value="PERSONAL_NUM" />
    </field>
    <field name="memberOf" null-value="none">
    <extension vendor-name="kodo" key="inverse" value="members" />
    <extension vendor-name="kodo" key="table"
    value="DB_EMPLOYEE_PROJECT_REF" />
    <extension vendor-name="kodo" key="projectname-data-column"
    value="PROJECT_NAME" />
    <extension vendor-name="kodo" key="firstname-ref-column"
    value="EMPLOYEE_FIRSTNAME" />
    <extension vendor-name="kodo" key="lastname-ref-column"
    value="EMPLOYEE_LASTNAME" />
    </field>
    </class>
    <class name="Project" identity-type="application"
    objectid-class="ProjectPK">
    <extension vendor-name="kodo" key="table" value="DB_PROJECT" />
    <extension vendor-name="kodo" key="lock-column" value="VERSION_ID" />
    <extension vendor-name="kodo" key="class-column" value="none" />
    <field name="projectname" null-value="exception" primary-key="true">
    <extension vendor-name="kodo" key="data-column" value="NAME_TXT" />
    <extension vendor-name="kodo" key="column-length" value="50"/>
    </field>
    <field name="members" null-value="none">
    <extension vendor-name="kodo" key="inverse" value="memberOf" />
    <extension vendor-name="kodo" key="table"
    value="DB_EMPLOYEE_PROJECT_REF" />
    <extension vendor-name="kodo" key="firstname-data-column"
    value="EMPLOYEE_FIRSTNAME" />
    <extension vendor-name="kodo" key="lastname-data-column"
    value="EMPLOYEE_LASTNAME" />
    <extension vendor-name="kodo" key="projectname-ref-column"
    value="PROJECT_NAME" />
    </field>
    </class>
    </package>
    </jdo>
    Kodo generates this db-schema:
    Table db_person
    Column VERSION_ID ( Type int(11) )
    Column FIRSTNAME_TXT ( Type varchar(50) ) <PrimaryKey>
    Column LASTNAME_TXT ( Type varchar(50) ) <PrimaryKey>
    Table db_employee
    Column PERSONAL_NUM ( Type bigint(20) )
    Table db_project
    Column VERSION_ID ( Type int(11) )
    Column NAME_TXT ( Type varchar(50) ) <PrimaryKey>
    Table db_employee_project_ref
    Column MEMBERSX ( Type blob )
    Column MEMBEROFX ( Type blob )
    I expected this:
    Table db_person
    Column VERSION_ID ( Type int(11) )
    Column FIRSTNAME_TXT ( Type varchar(50) ) <PrimaryKey>
    Column LASTNAME_TXT ( Type varchar(50) ) <PrimaryKey>
    Table db_employee
    Column PERSONAL_NUM ( Type bigint(20) )
    **** I think Kodo needs this reference to the base-class ****
    Column FIRSTNAME_TXT ( Type varchar(50) ) <ForeignKey>
    Column LASTNAME_TXT ( Type varchar(50) ) <ForeignKey>
    Table db_project
    Column VERSION_ID ( Type int(11) )
    Column NAME_TXT ( Type varchar(50) ) <PrimaryKey>
    Table db_employee_project_ref
    **** the mapping should use the primary keys, no blobs ****
    Column EMPLOYEE_FIRSTNAME ( Type varchar(50) ) <ForeignKey>
    Column EMPLOYEE_LASTNAME ( Type varchar(50) ) <ForeignKey>
    Column PROJECT_NAME ( Type varchar(50) ) <ForeignKey>

Maybe you are looking for