JAXB mapping of field to sub nodes

I have the following XML I consume:
<root>
     <node1>
          <node2 expirationDate="10/10/2012" />
     </node1>
</root>
And the following Java class:
@XmlRootElement(name= "root")
class Foo
private String expirationDate;
My question is whether it is possible to map the expirationDate field member DIRECTLY to a <node2> value/attribute. Perhaps something like:
@XmlAttribute(name="node1/node2/expirationDate")
Currently, the only way I can think about doing it is by having another class I'll map for node1 and another class for node2 and have the first class have a field member of the second class.

Totally unrelated to doubt..
Hi, I m new to JAXB and i tried various unmarshelling examples but could not able to access the values of sample xml using it.
could you please help me with it ? sample code with XSD , sample XML and Stub code which will retrieve some value out of sample XML would surely help .
Sorry for interrupting the conversation.
Even i would like to follow solution of your Question.
Thank you.

Similar Messages

  • Mapping and creating new instances of a node and its sub-nodes

    hi,
    i need to map every 3 items from source interface to 1 in target interface.
    i have on target interface parent node which is called 'item' and occurs 0..unbounded (and other sub-nodes).
    this node have a sub-node which is called 'item_data' and occurs 0..3.
    i created a mapping:
    source_item ->counter->checking mod 3--->if   
    """""""""""""""""""""""""""""" source_item  -
    > then -
    >item.
    when i test mapping with 1-3 source_item the sub-nodes 'item_data' are created,
    but when i try 4-5 and more , 'item' node is created  twice but the second instance has no sub-nodes of
    'item_data' (it has other sub-nodes).
    can someone tell me how to solve my problem?
    thanks in advance.
    Tomer

    I would like to be clear about the requirement first,
    Source                              Target
    item           -
    >             item
       item_data     -
    >               Item_data
    item           -
    >            
       item_data     -
    >               irem_data
    item           -
    >            
       item_data     -
    >               item_data
    item           -
    >             item
       item_data     -
    >               item_data
    item           -
    >            
       item_data     -
    >               item_data
    item           -
    >            
       item_data     -
    >               item_data
    for the mapping of item node the queue should look like:
    contextchange
    Then for the mapping of item_data the queue should look like:
    item_data
    item_data
    item_data
    context change
    item_data
    item_data
    item_data
    I guess you have used some udf for the target parent node (item) mapping. I am trying myself to generate the queue for item_data using standard functions, but yet to come up with the desired result. If achieved will let you know..................for now it seems that writing a UDF (queue) would be the best approach.
    iterate through the input queue array (source item_data values all in same context using RemoveContext) and insert a ResultList.CC after every third element in the array.
    Hope you can come out easily with the java for this logic. Let me know if it's helpful.
    Regards,
    Suddha

  • Sub Nodes in FCC

    Hi there
    I have to create some advanced structure using FCC but not sure how the Record structure should look.
    For a simple structure lets say it looked like this:
    -Main_Node
    ---Node_1_Level_1
    ------Element_1
    ------Element_2
    --Node_2_Level_1
    ------Element_A
    ------Element_B
    Ok so my record structure would be,
    Node_1_Level_1, Node_2_Level_1
    and my parameters would be something like:
    Node_1_Level_1.fieldNames = Element_1, Element_2
    Node_1_Level_1.fieldSeperator = ';'
    Node_1_Level_1.endSeperator = 'nl'
    Node_2_Level_1.fieldNames = Element_A, Element_B
    Node_2_Level_1.fieldSeperator = ';'
    Node_2_Level_1.endSeperator = 'nl'
    But how would the record structure look for this:
    -Main_Node
    ---Node_1_Level_1
    ------Element_1
    ------Element_2
    ------Node_1_Level_2
    ----Element_1
    --Node_2_Level_1
    ------Element_A
    ------Element_B
    ------Node_1_Level_2
    ----Element_A
    I would google for this, or look on sdn but I only find some examples that shows only level 1 nodes. I gues BPM would come to mind but FCC is all I got for now..
    Thanx,
    Jan

    Hi Jan,
    In this case FCC cant handle the fields which start at 4th level(i.e Node_1_Level_2 -->Element_1)
    There are 2 ways of doing this.
    i. Create a structure in the below shown format
    -Main_Node
    ---Node_1_Level_1
    Element_1
    Element_2
    ---Node_1_Level_2
    Element_1
    --Node_2_Level_1
    Element_A
    Element_B
    and convert the file structure to an xml and then map this to your required structure(i.e do an intermediate mapping for converting to this hierarchy).
    ii.
    Create a structure in which you remove the sub node and insert the sub node field into the main node.
    ---Node_1_Level_1
    Element_1
    Element_2
    Element_3
    --Node_2_Level_1
    Element_A
    Element_B
    Now based on the requirement you do the mapping.
    Thanks,
    Ramkiran.K

  • How to Create Instances in the Transient Root Node and Sub Nodes from Root Node Query Method ?

    Hi All,
    I am Creating a BOPF BO with 3 Nodes,
    Node 1) ROOT -- > contains a query,
    using Root Node I have created Search UIBB Configuration in FBI.
    In testing -- > when i enter Data in the Search Criteria Fields am able to get the details in to the query method
    from Imporing parameter : 'IT_SELECTION_PARAMETERS'.
    HERE I am fetching data from a standard table and trying to fill the data in the Node : 'MNR_SEARCH_RESULT'.
    How to Append data to the Sub node 'MNR_SEARCH_RESULT' when there is no Node instance created in the ROOT Node ?
    For This  I have created an instance in the ROOT Node and Using that I tried to create Instance in the Sub Node 'MNR_SEARCH_RESULT'.
    Below is my code which i have placed in the Query method ..
    DATA : LR_DATA TYPE REF TO ZBO_S_ROOT1.
    DATA : LR_SEARCH_RES TYPE REF TO ZBO_S_MNR_SEARCH_RESULT.
    DATA : LO_CI_SERVICE_MANAGER TYPE REF TO /BOBF/IF_TRA_SERVICE_MANAGER,
            LO_TRANSACTION_MANAGER TYPE REF TO /BOBF/IF_TRA_TRANSACTION_MGR.
       LO_CI_SERVICE_MANAGER = /BOBF/CL_TRA_SERV_MGR_FACTORY=>GET_SERVICE_MANAGER( IV_BO_KEY = ZIF_BO_TEST_PO_C=>SC_BO_KEY ).
       LO_TRANSACTION_MANAGER = /BOBF/CL_TRA_TRANS_MGR_FACTORY=>GET_TRANSACTION_MANAGER( ).
    CREATE DATA LR_DATA.
    LR_DATA->KEY = LO_CI_SERVICE_MANAGER->GET_NEW_KEY( ).
    LR_DATA->ROOT_KEY   = IS_CTX-ROOT_NODE_KEY.
    LR_DATA->PIPO_MAT_ID = '100100'.
    LR_DATA->PIPO_MAT_DESC = 'MATERIAL'.
    LR_DATA->PIPO_SPRAS = 'E'.
    LR_DATA->PIPO_MATL_TYPE = 'ZPMI'.
    LR_DATA->PIPO_MATL_GROUP = 'ZKK'.
         DATA lt_mod      TYPE /bobf/t_frw_modification.
         DATA lo_change   TYPE REF TO /bobf/if_tra_change.
         DATA lo_message  TYPE REF TO /bobf/if_frw_message.
         FIELD-SYMBOLS: <ls_mod> LIKE LINE OF lt_mod.
        APPEND INITIAL LINE TO lt_mod ASSIGNING <ls_mod> .
        <ls_mod>-node        =   ZIF_BO_TEST_PO_C=>sc_node-ROOT.
        <ls_mod>-change_mode = /bobf/if_frw_c=>sc_modify_create.
        <ls_mod>-key         = LR_DATA->KEY.
        <ls_mod>-data        = LR_DATA.
    DATA : LT_CHG_FIELDS TYPE /BOBF/T_FRW_NAME.
    DATA : LS_CHG_FIELDS LIKE LINE OF LT_CHG_FIELDS.
    DATA : LV_KEY TYPE /BOBF/CONF_KEY.
    CALL METHOD IO_MODIFY->CREATE
       EXPORTING
         IV_NODE            = ZIF_BO_TEST_PO_C=>sc_node-ROOT
         IV_KEY             = LR_DATA->KEY
         IS_DATA            = LR_DATA
         IV_ROOT_KEY        = IS_CTX-ROOT_NODE_KEY
       IMPORTING
         EV_KEY             = LV_KEY .
    CREATE DATA LR_SEARCH_RES.
    LR_SEARCH_RES->KEY           = LO_CI_SERVICE_MANAGER->GET_NEW_KEY( )..
    LR_SEARCH_RES->PARENT_KEY    = LV_KEY.
    LR_SEARCH_RES->ROOT_KEY    = LV_KEY.
    LR_SEARCH_RES->MATNR    = '123'.
    LR_SEARCH_RES->ERSDA    = SY-DATUM.
    LR_SEARCH_RES->ERNAM    = SY-UNAME.
    **LR_SEARCH_RES->LAEDA    = .
    **LR_SEARCH_RES->AENAM    = .
    **LR_SEARCH_RES->VPSTA    = .
    *LR_SEARCH_RES->LVORM    = .
    LR_SEARCH_RES->MTART    = 'ZPI'.
    LR_SEARCH_RES->MBRSH    = 'ZTP' .
    LR_SEARCH_RES->MATKL    = 'MAT'.
    **LR_SEARCH_RES->BISMT    = ''
    **LR_SEARCH_RES->MEINS    =
    CALL METHOD io_modify->create
               EXPORTING
                 iv_node            = ZIF_BO_TEST_PO_C=>sc_node-MNR_SEARCH_RESULT
                 is_data            = LR_SEARCH_RES
                 iv_assoc_key       = ZIF_BO_TEST_PO_C=>sc_association-root-MNR_SEARCH_RESULT
                 iv_source_node_key = ZIF_BO_TEST_PO_C=>sc_node-root
                 iv_source_key      = LV_KEY
                 iv_root_key        = LV_KEY.
    I am Unable to set data to the Node . I did not get any error message or Dump while executing . when i tried to retrive data I got the details from the node but am unable to view those details in the FBI UI and BOBT UI while testing .
    Please provide your valuable Suggestions.
    Thanks in Adv.
    Thanks ,
    Kranthi Kumar M.

    Hi Kranthi,
    For your requirement you need only two nodes. Root Node and Result node. Use the same structure for both.
    To create Instance while search.
    Create Query method with input type which has the required fields for selection criteria.
    Fetch the data and create instance in the root node.
    Pass the new instance key as exporting parameter form Query Method.
    To Move data from ROOT to Result.
    Create a action at root node.
    Write a code to create new entries in Result node.
    Then configure the Search UIBB and display result in List UIBB. Add button and assign the action MOVE_MAT_2_RESULT.
    Create another List uibb to display data from Result node.
    Connect the UIBBs using wire schema. SEARCH -> LIST(ROOT) ---> LIST(RESULT).
    Give src node association for ROOT to RESULT Configuration.
    Regards,
    Sunil

  • How to set a attribute value of a sub node binded to a table.. pls respond.

    Hi friends,
    I have context defined like this.
         Head_node ( table 1)
              Item_node ( table 2, sub node ).  ( now this im saving in global internal table).
    so now when i hit save button, im passing my internal table (it has col1- sales order no, col2 item details(table type, which can have more than one record) to a FM, to create sales order.
    My sales order is getting saved.
    But the function module will return some new values (like sales order number, item number etc).
    Now i want these values to be updated in my context.
    Meaning whenever after that i do get_attribute, i should get these new (sales order no, item no ) also.
    I dont know how to set the context values of sub nodes , so im missing these values.
    kindly respond back to me..
    thanks in advance,
    Niraja

    Its very simple.
    Follow these steps. e.g you want to get the new sales order number. Define a attribute in ur node (or set of attributes in ur case as per reqruirement) say new_so_number.
    Check your FM, if its returning new_so_number then it's fine, otherwise you have to change the FM to return the new_so_number or you have to get from db table somehow, which best suites your req.
    So once you have new_so_number after calling the FM, say in lv_new_so_number field. Then write this code to set the attribute (change the variables as per your context attributes)
    DATA lo_nd_head TYPE REF TO if_wd_context_node.
      DATA lo_el_head TYPE REF TO if_wd_context_element.
      DATA ls_head TYPE wd_this->element_head.
      DATA lv_new_so_number LIKE ls_head-new_so_number.
    * navigate from <CONTEXT> to <HEAD> via lead selection
      lo_nd_head = wd_context->get_child_node( name = wd_this->wdctx_head ).
    * get element via lead selection
      lo_el_head = lo_nd_head->get_element(  ).
    lv_new_so_number = new_so_number. " (You got this as a exporting parameter of FM etc..)
    * get single attribute
      lo_el_head->set_attribute(
        EXPORTING
          name =  `NEW_SO_NUMBER`
          value = lv_new_so_number ).
    Hope it works.

  • Parsing sub nodes

    My Xml file structure is like this.
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <Commands>
            <Command>
                    <Name>print</CommandName>
                    <File>print.pbx</CommandFile>
                    <Table>print</CommandTable>
                    <Parser>SingleLine</CommandParser>
                    <Parseable>true</CommandParseable>
                    <Fields>6</CommandFields>
                    <CommandRegexs>
                            <CommandRegex>(?<=;10H)(.*)(?=[\\x5B]\\d*\\d*\\d*;33H)</CommandRegex>
                            <CommandRegex>(?<=;33H)(.*)(?=[\\x5B]\\d*\\d*\\d*;40H)</CommandRegex>
                            <CommandRegex>(?<=;40H)(.*)(?=[\\x5B]\\d*\\d*\\d*;47H)</CommandRegex>
                            <CommandRegex>(?<=;47H)(.*)(?=[\\x5B]\\d*\\d*\\d*;56H)</CommandRegex>
                            <CommandRegex>(?<=;56H)(.*)(?=[\\x5B]\\d*\\d*\\d*;67H)</CommandRegex>
                            <CommandRegex>(?<=;67H)(.*)</CommandRegex>
                    </CommandRegexs>
            </Command>
    </Commands>Everything reads from all of the nodes except when i get to the CommandRegex's node. It returns 1 as its length and only returns the first element when i try to parse it. I am using this to parse the elements.
                        //Command Regex - Start
                        NodeList listOfRegex = CommandElement.getElementsByTagName("CommandRegexs");
                        int totalRegex = listOfRegex.getLength();
                        System.out.println("Total no of regex's : " + totalRegex);
                        for(int r = 0; r < totalRegex; r++)
                            Node regexNode = listOfRegex.item(s);
                            if(CommandNode.getNodeType() == Node.ELEMENT_NODE)
                                Element regexElement = (Element)regexNode;
                                NodeList regexList = regexElement.getElementsByTagName("CommandRegex");
                                Element firstregexElement = (Element)regexList.item(0);
                                NodeList textRegexList = firstregexElement.getChildNodes();
                                System.out.println("regex : " + ((Node)textRegexList.item(0)).getNodeValue().trim());
                                String tmpCommandRegs = ((Node)textRegexList.item(0)).getNodeValue().trim();
                                regs.add(tmpCommandRegs);
                        jListCommand.setRegex(regs);
                        //Command regex - EndCommandElement Would be the Command tag. Now my problem is i cannot seem to get the full sub node of Regexs to load. If anyone can give any tips on how i can get this to parse correctly it would rock.
    Thanks,
    Hammackj

    Total length() returns 1, it should be returning 6.There is only one CommandRegexs element. That's why it returns 1.
    I have no idea why it only reads the first elem, and skips the rest.Because that's what your program does. It has a loop to iterate over the CommandRegexs elements, of which there is only one, but it doesn't have a loop to iterate over the CommandRegex elements, of which there are 6. Instead it specifically gets only the first of them; note all the instances of "item(0)" in that part of the program.

  • How to map new field in DSO

    I have added a new field to the dso and i have replicated the datasource as well which is showing the new field newly added in ecc. how can i map the new keyfigure in the transformation between the datasource and ods. its showin in the ds, can u pls tell me how to map now.

    Ya but the problem is I have an infosource in between and its not showing in the transformation between the dso and infosource.....nor the infosource and the datasource. But its there in the first transformation on the dso side, not on the inforsource side..... but how to get that field in the infosource side...so that i can map the field between both the transformations....between infosoucre and dso and infosouce and ds.....You know what I mean. the zfield is showin in the dso field structure in the first level mapping between dso and infosouce....but where do i map it.
    Edited by: Daniel on Nov 28, 2011 9:59 AM

  • How do i map one field to another in control file via SQL Loader

    Can someone please reply back to this question
    Hi,
    I have a flat file (student.dat delimiter %~| ) using control file (student.ctl) through sql loader. Here are the details.
    student.dat
    student_id, student_firstname, gender, student_lastName, student_newId
    101%~|abc%~|F %~|xyz%~|110%~|
    Corresponding table
    Student (
    Student_ID,
    Student_FN,
    Gender,
    Student_LN
    Question:
    How do i map student_newId field to student_id field in STUDENT DB table so that new id should be inserted in student_id column. How do i specify the mapping in control file. I dont want to create a new column in student table. Please let me know the best way to do this.
    Can someone please reply back to this question.
    My approach:
    In control file i will sepecify the below, Is this a best approach?. Do we have any othe way?
    STUDENT_ID *(:STUDENT_NEWID)*,
    STUDENT_FN,
    GENDER,
    STUDENT_LNAME,
    STUDENT_NEWID BOUNDFILLER
    Thanks
    Sunil
    Edited by: 993112 on Mar 13, 2013 12:28 AM
    Edited by: 993112 on Mar 13, 2013 12:30 AM
    Edited by: 993112 on Mar 13, 2013 12:31 AM
    Edited by: 993112 on Mar 18, 2013 2:52 AM

    OK, ok...
    Here is the sample data:
    101%~|abc%~|F %~|xyz%~|110%~|
    102%~|def%~|M %~|pqr%~|120%~|
    103%~|ghi%~|M %~|stu%~|130%~|
    104%~|jkl%~|F %~|vwx%~|140%~|
    105%~|mno%~|F %~|yza%~|150%~|Here is the control file:
    LOAD DATA
    INFILE student.dat
    TRUNCATE INTO TABLE STUDENT
    FIELDS TERMINATED BY '%~|' TRAILING NULLCOLS
      student_old  FILLER
    , student_fn
    , gender
    , student_ln
    , student_id
    )And here is the execution:
    SQL> CREATE TABLE student
      2  (
      3    student_id   NUMBER
      4  , student_fn   VARCHAR2 (10)
      5  , gender       VARCHAR2 (2)
      6  , student_ln   VARCHAR2 (10)
      7  );
    Table created.
    SQL>
    SQL> !sqlldr / control=student.ctl
    SQL*Loader: Release 11.2.0.3.0 - Production on Tue Mar 19 14:37:31 2013
    Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
    Commit point reached - logical record count 5
    SQL> select * from student;
    STUDENT_ID STUDENT_FN                     GENDER STUDENT_LN
           110 abc                            F      xyz
           120 def                            M      pqr
           130 ghi                            M      stu
           140 jkl                            F      vwx
           150 mno                            F      yza
    SQL>:p

  • In XI Mapping multiple fields mapping to single target field.

    Hi Friends,
    In XI Mapping multiple fields mapping to single target field.
    For example my requirement is :
    Source Fields:(This RFC BAPI Structure)
    Empno                0-1
    EmpName           0-1
    Address             0-1
    Taget Field is:
    Details               0-1
    The above three fields passed to the Details Field. Here i am using Concat function
    But i have one query on that on,Every field having "line Break" required.
    Can you please help me out above this requirement.
    Thanks in Advance,
    Sateesh N.

    If you want a line break between the three fields, then try
    passing a,b,c to the udf and in the udf you would have
    return a+"\n"+b+"\n"+c;

  • Mapping of field with MinOccurs 0 in SAP XI 2.0 SP5

    Hi,
    Our Scenario is
    File -> Adapter -> XI -> Idoc Adapter -> SAP
    We are trying to push IDoc and the mapping tool is giving an error. I am providing the error that I am getting.
    The snippet of the XSD for the IDoc is given below:
       <xsd:element name="E1FIKPF" minOccurs="1" maxOccurs="1" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                            <xsd:annotation>
                               <xsd:documentation>FI Document Header (BKPF)</xsd:documentation>
                            </xsd:annotation>
                            <xsd:complexType>
                               <xsd:sequence>
                                  <xsd:element name="BUKRS" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                                     <xsd:annotation>
                                        <xsd:documentation>Name of global company code</xsd:documentation>
                                     </xsd:annotation>
                                     <xsd:simpleType>
                                        <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="6" />
                                        </xsd:restriction>
                                     </xsd:simpleType>
                                  </xsd:element>
                                  <xsd:element name="BELNR" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                                     <xsd:annotation>
                                        <xsd:documentation>Accounting Document Number</xsd:documentation>
                                     </xsd:annotation>
                                     <xsd:simpleType>
                                        <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="10" />
                                        </xsd:restriction>
                                     </xsd:simpleType>
                                  </xsd:element>
                                  <xsd:element name="GJAHR" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                                     <xsd:annotation>
                                        <xsd:documentation>Fiscal Year</xsd:documentation>
                                     </xsd:annotation>
                                     <xsd:simpleType>
                                        <xsd:restriction base="xsd:string">
                                           <xsd:pattern value="\d+" />
                                           <xsd:maxLength value="4" />
                                        </xsd:restriction>
                                     </xsd:simpleType>
                                  </xsd:element>
                                  <xsd:element name="BLART" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                                     <xsd:annotation>
                                        <xsd:documentation>Document type</xsd:documentation>
                                     </xsd:annotation>
                                     <xsd:simpleType>
                                        <xsd:restriction base="xsd:string">
                                           <xsd:maxLength value="2" />
                                        </xsd:restriction>
                                     </xsd:simpleType>
                                  </xsd:element>
                                  <xsd:element name="BLDAT" minOccurs="0" type="date" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                                     <xsd:annotation>
                                        <xsd:documentation>Document Date in Document</xsd:documentation>
                                     </xsd:annotation>
                                  </xsd:element>
                                  <xsd:element name="BUDAT" minOccurs="0" type="date" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                                     <xsd:annotation>
                                        <xsd:documentation>Posting Date in the Document</xsd:documentation>
                                     </xsd:annotation>
                                  </xsd:element>
                                  <xsd:element name="MONAT" minOccurs="0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                                     <xsd:annotation>
                                        <xsd:documentation>Fiscal Period</xsd:documentation>
                                     </xsd:annotation>
                                     <xsd:simpleType>
                                        <xsd:restriction base="xsd:string">
                                           <xsd:pattern value="\d+" />
                                           <xsd:maxLength value="2" />
                                        </xsd:restriction>
                                     </xsd:simpleType>
                                  </xsd:element>
    In this snippet as can be seen the minOccurs for the BUKRS field is 0. But if I do not map the field its giving me following error.
    /usr/java131/bin/javac -encoding UTF8   -classpath .:./system-lib/boot.jar:./system-lib/jaas.jar -extdirs ./additional-lib:./services/deploy/work/applications/ExchangeRepository -d /tmp/9_53_35_27_7_2004 /tmp/9_53_35_27_7_2004/com/sap/xi/tf/_MsgMapGcentre2Fidcc2_.java
    /tmp/9_53_35_27_7_2004/com/sap/xi/tf/_MsgMapGcentre2Fidcc2_.java:303: ';' expected
    a117.gotoNextContext();tmpValAtr = a117.getValue();if (!tmpValAtr.equals(SUPPRESS)) handler.addAttribute("SEGMENT", tmpValAtr);a117.gotoNextValue();if (!__deflt)a115.gotoNextValue();No mapping for value/FIDCCP02/IDOC/E1FIKPF/BUKRS
                     ^
    /tmp/9_53_35_27_7_2004/com/sap/xi/tf/_MsgMapGcentre2Fidcc2_.java:303: cannot resolve symbol
    symbol  : class No 
    location: class com.sap.xi.tf._MsgMapGcentre2Fidcc2_
    a117.gotoNextContext();tmpValAtr = a117.getValue();if (!tmpValAtr.equals(SUPPRESS)) handler.addAttribute("SEGMENT", tmpValAtr);a117.gotoNextValue();if (!__deflt)a115.gotoNextValue();No mapping for value/FIDCCP02/IDOC/E1FIKPF/BUKRS
    ^
    2 errors
    Compilation error
    Any one having any guesses on why this error is coming. I know this error would vanish if we map the field by an Empty Constant. But then it would start giving error for the next field until all the non mandatory fields are mapped.
    If however I go ahead and map all the fields then the output structure generates all the segments the maxOccurs times. i.e. if a segment is occuring 999 times then that segment is repeated that many time in the output whereas I never needed that segment in the output.
    Can any one suggest as to why this is happening. Am I doing some thing wrong or this is a problem with Mapping Editor in XI 2.0 SP5.
    Ashish

    Hello Ashish,
    this is a bug in the mapping tool. You have to apply the note  730081. It says:
    Symptom                                                                           
    After you import XI20 Support Package 04 or Support Package 05, you can           
    no longer change and regenerate the message mapping (graphic mapping              
    tools).                                                                           
    The following error is displayed during activation or generation: No              
    Mapping for value.......                                                          
    Other terms                                                                       
    Graphic mapping tools, SAPINTSER05, no mapping vor value                          
    Reason and Prerequisites                                                          
    This problem is caused by a translation error.                                    
    Solution                                                                          
    The translation error has been corrected.                                                                               
    As of patch level 1, the correction is provided in the SAPINTSER05_1.sca          
    archive of the INTEGRATION Services 2.0 software component and, as of             
    patch level 2 for Support Package 5, it is provided in the                        
    SAPINTBUI05_2.sca archive of the INTEGRATION BUILDER 2.0 software                 
    component. The archives are available on the SAP Service Marketplace at:                                                                               
    http://service.sap.com/patches                                                                               
    SAP EXCHANGEINFRASTRUCTURE/SAP EXCHANGEINFRASTRUCTURE 2.0                         
    Binary Patches/INTEGRATION SERVICES 2.0/OSINDEP and                               
    ..... /INTEGRATION BUILDER 2.0/OSINDEP                                            
    Import the archives using SDM.                                                                               
    The mapping must be recompiled after deployment.                                                                               
    Regards Franz

  • I am trying to map the fields in R3 system  with the infoobjects in BW.

    I am mapping the fields with in R3 with the infoobjects in BW.
    Can any please let me know the relavent mapping infoobjects and the procedure to find for the following fields.
    Description                          Type          Length
    Purchase Order     VARCHAR2     10
    PO Line Number     NUMBER     10
    Line Item Description     VARCHAR2     60
    Order Quantity          
    Unit of Measure     VARCHAR2     3
    Performance Start Date     DATE     7
    Performance End Date     DATE     7
    Order Date                           DATE      7
    PO Line Extended Amount     NUMBER     14
    PO Line Total Amount     NUMBER     14
    Project                         VARCHAR2     30
    Account ID                         VARCHAR2     15
    Cost Amount                             NUMBER      14
    Prime Contract ID     VARCHAR2     20
    Requisition ID     VARCHAR2     10
    Vendor ID                            VARCHAR2     12
    Vendor Name     VARCHAR2     25
    Entry Date/Time      DATE     7
    Address Descriptive Code     VARCHAR2     10
    Address Line 1     VARCHAR2     40
    City Name                         VARCHAR2     25
    Mail State                          VARCHAR2     15
    Postal Code                         VARCHAR2     10
    Country Code     VARCHAR2     8
    Phone Number     VARCHAR2     25
    Fax Number ID     VARCHAR2     25
    Other Phone Number ID     VARCHAR2     25

    Hi,
    You can find the fields and related infoobject for the datasource as follows
    Step1
    log on to the BW system
    Step2
    Go to SE11 ---> give the table name as RSOSFIELDMAP and execute
    Step3
    give the data source name for OLTPSOURCE field and execute
    Step4
    you will find the mapping between fields and relevent infoobjects
    Hope this helps
    Santosh

  • XI Message Monitoring - Mapping custom fields for search in monitor?

    Is it possible to map a reference field so that searching for a specific message is more user friendly?
    For example, we produce hundreds of outbound SHPMNT04 messages each day.  Would it be possible to map a field such as E1EDT20.TKNUM (Shipment Number) to a field in the monitor (SXMB_MONI) such as "Outbound Reference" so we can easily search on this field?
    Currently we use a combination of WE09 and IDX5 to find a specific message.  Obviously, this is cumbersome and time-consuming.
    Thanks in advance.

    Hi,
    of course it is possible in many ways
    there are at least two ways
    the first one is to use Trex search for xi + standard
    the second one is described in this weblog + but remember that
    without indexing this will take long to search like this
    /people/alessandro.guarneri/blog/2006/02/14/super-message-monitor-for-sap-xi
    Regards,
    michal

  • ABAP Mapping Black Field Missing

    Hi,
       I did an ABAP Mapping, one field of a sender message could be full of spaces or with some data. When a message with data for that field is sent, the mapped field in the receiver message had the data, but when I send a full spaces data field the receiver message have no data, it's empty. Somebody could help me?
    Regards,
    Luis Diego

    Hi,
    Btw, where are you looking about this field ? In the sxmb_moni ? If so are u able to see the XML tags generated for that field ? If not
    Check the existsence of the field in the mapping. If there is no field i.e empty, then pass the spaces explicitly..
    It is like , Built-in function in the message mapping i.e "EXISTS" with If-Else logic.
    If you are able to see the xml tags generated for that field, view the SXMB_MONI message in the notepad, so that you can view the space.
    Hope this helps,
    Regards,
    Moorthy

  • Problem in mapping the fields for 0FI_GL_4

    Hi,
      can I get any document regarding the mapping the fields at BW side. I need to give Profit and loss Account report.
    Regards
    kamineni

    Hi,
    Better go through the Business COntent in help.sap.com.
    It will give you the complete details.
    try this link
    http://help.sap.com/saphelp_nw04/helpdata/en/57/dd153c4eb5d82ce10000000a114084/frameset.htm
    hope this helps.
    Assign points if useful.
    Venkat

  • How to map journal fields and whats is the better  process type

    /Journal/JournalSuspenseCostCentre     NULL
    /Journal/JournalBalancingCentre     Lookup from Organisation ID
    /Journal/JournalMultiCompany     u2018Nu2019
    /Journal/JournalBatchNumber     NULL
    /Journal/JournalNumTransactions     Total number of /Journal/JournalLine transactions
    /Journal/JournalBaseDRTotal     Sum of /Journal/JournalLine/JournalLineBaseValue u2013 Debit Values only
    /Journal/JournalBaseCRTotal     Sum of /Journal/JournalLine/JournalLineBaseValue u2013 Credit Values only
    How to map journal fields and whats is the better  process type idoc/proxies?please let me know
    Journal Line
    Multiple journal lines per header:
    Schema Element     Data
    /Journal/JournalLine/JournalLineCostCentre     Bank account control Cost Centre
    /Journal/JournalLine/JournalLineAccount     Bank account control Account Code
    /Journal/JournalLine/JournalLineMoneyTotal     Transaction Line Amount
    /Journal/JournalLine/JournalLineVolume     NULL
    /Journal/JournalLine/JournalLineDescription     Payee Name
    /Journal/JournalLine/JournalLineChequeBookReference     NULL
    /Journal/JournalLine/JournalLineMatchField     Cheque Number
    NB Contra accounting entries should be posted to:
    Schema Element     Data
    /Journal/JournalLine/JournalLineCostCentre     Bank account control Cost Centre
    /Journal/JournalLine/JournalLineAccount     Bank account control Account Code
    /Journal/JournalLine/JournalLineMoneyTotal     Transaction Line Amount * -1
    /Journal/JournalLine/JournalLineDescription     Payee Name
    /Journal/JournalLine/JournalLineMatchField     Cheque Number
    /Journal/JournalPeriod     Current General Ledger Period
    /Journal/JournalYear     Current General Ledger Year

    It looks you are new to PI,
    you have to develop scenario end to end, by creating source data type and target data type(if you have XSD's not required),then use Graphical mapping (message mapping) to map source and target structures.
    Search in sdn for one end to end scenario you will understand easily
    Regards,
    Raj

Maybe you are looking for