IDOC in Message mapping

Hi folks,
I am working on file to idoc scenario.   I Imported the IDOC to my scenario. In Messaga Mapping IDOC structure displaying fields as a documention. but i need techincal names of those fields.
for Example:   In my IDOC 1 field is showing companycode but I want to see that field as a BUKRS.
How to see the technical names of IDOC fields in Message Mapping.
Your help is highly appreciated.
Thanks,
Anitha.

Hi bavesh...
thank you so much for very your quick responses..
i got xsd as source..based on xsd i created external definition for source xsd  and  i created outbound interface based on source external deifinition <b>MI_OUT_WearUnits</b>.
and i imported Idoc and exported as xsd and changed occurance to unbounded and again imported as external definition.
i did mapping between these two external definitions.
and i selected standard idoc for source and target interface for interface mapping  and given message mapping of previous step.
In ID
sender agreement :
                sender service :BS_external
                sender interface :<b>MI_OUT_WearUnits</b>
receiver agreement:
              receiver service :R/3
              receiver interface :  standard Idoc
Interface determination:
sender service :BS_external
sender interface :<b>MI_OUT_WearUnits</b>
reciever service :R/3
and clicked create
inbound interface : Standard IDOc
i am not getting Interface mapping which i created in IR.
i tried Enhance interface determination also..
please guide me....
waiting for your help.
regards
ram

Similar Messages

  • IDoc and Message Mapping

    Hi,
    I have a question.
    In a idoc to file scenario,idoc as a sender,.If the idoc is updated in r/3 system due to some change request after we finish the mesage mapping,what steps need to be followed to ensure the correct mapping.
    Do we need to change the mapping.
    Regards,
    Haritha

    Hello,
    if just the values of your IDoc changed you don't have to change
    your message mapping.
    If the structure has changed you have to reload the metadata (idx2)
    and the IDoc in your Repository and then update your message mapping with reloading your IDoc.
    Regards
    Patrick

  • File to IDOC Senario (Message Mapping)

    Hi Experts,
    I am a fresher.
    This is "  File to IDOC Senario  ".
    I have Doubt on  this: ( In Message Mapping)
    Source field : MSG
    Length : 1/264
    Taget field : E1EDKT2 - TDLINE
    Legth : CHAR/70
    Mapping Condition :
    Note: TDFORMAT =  ‘=’ (Long Line), until next line of MSG. When new line occurs in MSG, then use TDFORMAT = ‘/’
    How to Make the Mapping for this?
    Anyone Can help me to get it Quickly.
    give your Suggestions and Show some Example Mappings......

    Hi ,
    Below is the generic sol for your problem .Graphical mappings wont workout for your problem while using sub string .
    Input -->Input string
    Length -->length of TDLINE
    MESSAGE_V1,V2,V3,V4....depends on how many TDLINES you expect .Here I have taken 4 .
    public void SplitbyLength(String[] Input, String[] Length, ResultList MESSAGE_V1, ResultList MESSAGE_V2, ResultList MESSAGE_V3, ResultList MESSAGE_V4, Container container) throws StreamTransformationException{
    int lengthVal = Integer.parseInt(Length[0]);
    int InpLenVal ;
    for(int i=0;i<Input.length;i++)
    InpLenVal  =Input[i].length() ;
    if (InpLenVal<=lengthVal)
    MESSAGE_V1.addValue(Input[i].substring(0));
    MESSAGE_V2.addValue(ResultList.SUPPRESS); 
    MESSAGE_V3.addValue(ResultList.SUPPRESS); 
    MESSAGE_V4.addValue(ResultList.SUPPRESS); 
    else if ((InpLenVal>lengthVal) && (InpLenVal <= (lengthVal*2)))
    MESSAGE_V1.addValue(Input[i].substring(0,lengthVal));
    MESSAGE_V2.addValue(Input[i].substring(lengthVal,InpLenVal));
    MESSAGE_V3.addValue(ResultList.SUPPRESS); 
    MESSAGE_V4.addValue(ResultList.SUPPRESS); 
    else if ((InpLenVal>(lengthVal*2)) && (InpLenVal <= (lengthVal*3)))
    MESSAGE_V1.addValue(Input[i].substring(0,lengthVal));
    MESSAGE_V2.addValue(Input[i].substring(lengthVal,(lengthVal*2)));
    MESSAGE_V3.addValue(Input[i].substring((lengthVal*2),InpLenVal));
    MESSAGE_V4.addValue(ResultList.SUPPRESS); 
    else if (Input[i].length()>(lengthVal*3)  && (InpLenVal <= (lengthVal*4)))
    MESSAGE_V1.addValue(Input[i].substring(0,lengthVal));
    MESSAGE_V2.addValue(Input[i].substring(lengthVal,(lengthVal*2)));
    MESSAGE_V3.addValue(Input[i].substring((lengthVal*2),(lengthVal*3)));
    MESSAGE_V4.addValue(Input[i].substring((lengthVal*3),InpLenVal));
    else if (Input[i].length()>(lengthVal*4) )
    MESSAGE_V1.addValue(Input[i].substring(0,lengthVal));
    MESSAGE_V2.addValue(Input[i].substring(lengthVal,(lengthVal*2)));
    MESSAGE_V3.addValue(Input[i].substring((lengthVal*2),(lengthVal*3)));
    MESSAGE_V4.addValue(Input[i].substring((lengthVal*3),(lengthVal*4)));
    Regards
    Venkat

  • Reg: JDBC to IDOC Scenario Message Mapping

    hi Friends
    i am designing a Scenario JDBC - IDOC for accounting document interface using ACC_DOCUMENT03 idoc.
    i need the mapping program for that to map the JDBC fields with the IDOC fields, so can anyone help me the mandatory fields and the constant values for the IDOC which has to be mapped.Along with this can i know why the constants will be assigned to the fields like Begin =1 , MSGFN = 009 etc how these constants are defined.
    Thanks&Regards
    suman.

    Hi,
    for mapping constants in graphical msg mapping, select your target IDOC field..........then you have a constant in the below screen.........click it and then double-click on constant to change the value of the constant field.........then map this constant to your target IDOC field.
    for knowing which are the mandatory fields, ask your functional guys to tell you the mandatory fields in data segment of your IDOC and regarding Control segment EDIDC, you have to map fields which have sender and reciever system details.
    Regards,
    Rajeev Gupta
    Edited by: RAJEEV GUPTA on Feb 2, 2009 7:55 AM

  • ZIDOC can't able to Import in Message Mapping

    Hi,
       I am doing file to idoc scenario. When I am selecting
    my zidoc in Message Mapping as a target one then I am
    getting this error message
    "Interface object IDoc ZMTIDOCIN.ZIDOCIN | urn:sap-com:document:sap:idoc:messages does not have a schema."
      After that It is not allowing to select the idoc in
    Message Mapping.
    regards,
    Khaja.

    Hi,
    Have you checked if all the segments are released. Also do a check of all the segments before importing into IDX1 and IR.
    Thanks,
    Prakash

  • PI 7.11: IDoc Message mapping

    Hi there,
    I'm currently working on a graphical message mapping using IDoc HRMD_A06 as source structure (HR master data transferred via PFAL).
    In my result structure I have to fill a field CostCenter with the following logic:
    If field KOSTL (cost center) is filled in node E1P0315, map this field to CostCenter in result structure, otherwise take KOSTL of node E1P0001.
    The end date (ENDDA) has to be '99991231' in each case.
    This is how the result structure looks like:
    <e>                       [1...1]
      <CostCenter>            [1...1]
    </e>
    This is the simplified source structure:
    <E1PLOGI SEGMENT="1">
      <E1PITYP SEGMENT="1">                        [0...n]
         <E1P0001 SEGMENT="1">                     [0...n]
           <INFTY>0001</INFTY>                     [0...1]
           <ENDDA>99991231</ENDDA>                 [0...1]
           <KOSTL>0000012345</KOSTL>               [0...1]
        </E1P0001>
      </E1PITYP>
      <E1PITYP SEGMENT="1">                        [0...n]
        <E1P0315 SEGMENT="1">                      [0...n]
          <INFTY>0315</INFTY>                      [0...1]
          <ENDDA>99991231</ENDDA>                  [0...1]
          <KOSTL>0000024001</KOSTL>                [0...1]
        </E1P0315>
      </E1PITYP>
    </E1PLOGI>
    How can I do the check if field KOSTL of node E1P0315 is null?
    I've tried an existence check for the whole node (E1P0315->exists), but then it fails, because all E1PITYP nodes are processed.
    I hope my problem is clear to you.
    Would it be better to use another mapping type?
    As I'm an ABAP developer, I would of course prefer some lines of code to this graphical drag&drop thing.
    Thanks in advance!

    Cheers, guys!
    I did it now like that:
    http://www.abload.de/image.php?img=mappingflknz.jpg
    Click on the image to enlarge it!
    The logic is as following (ABAP Pseudo-code ):
    IF 0315_KOSTL and 0315_ENDDA are populated.
      IF 0315_ENDDA equals '99991231'.
        map 0315_KOSTL to Cost_Center.
      ENDIF.
    ELSE.
      IF 0001_KOSTL and 0001_ENDDA are populated.
        IF 0001_ENDDA equals '99991231'.
          map 0001_KOSTL to Cost_Center.
        ENDIF.
      ENDIF.
    ENDIF.
    Is that a good way to do that mapping?
    Do I also have to use the removeContexts function or is it ok like that?
    Could I also do that with an ABAP mapping program?
    Thanks in advance!

  • Doubt in fields - message mapping (file 2 idoc scenario)

    while doing message mapping in file 2 idoc scenario, i could not able find the values for some field names
    ( i am following this wiki help
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/2007/05/11/fileToIDOC& )
    cremas04 idoc
    vendorNo LIFNR
    vendor name Name1
    Pur_org   ? ( I could not able locate field with the similar desc in idoc MT side)
    Company code  ?
    Acc_Grp  ?
    Search term MCOD1
    Address ADRNR
    City ORT01
    Pin_code PSLTZ
    could you help me out with this?
    Message was edited by: praba
            praba

    hi,
    I got the answer.

  • In Idoc bundling ...message mapping not found

    Hi XI Friends..
    In my File to Idoc scenario..i want to send multiple IDOCs from the XI without a BPM .
    I am following blog by Michal.
    <a href="///people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change:///people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    I have xsd for source ..so i created one external definition .and message interface for outbound.
    following the above blog by michal..
    i imported  idoc ..and i exported that idoc into xsd and i changed the occurance of idoc to unbounded and again imported as external definition.
    i created  the message mapping between these two external definitions.and tested ..
    As in michal 's blog..
    In Interface mapping..i given source and target interface as standard idoc.and clicked on Read interface then i am not finding  the message mapping created in previous step..
    i refreshed cache also..
    please guide me.....
    regards
    ram

    Hi bavesh...
    thank you so much for very your quick responses..
    i got xsd as source..based on xsd i created external definition for source xsd  and  i created outbound interface based on source external deifinition <b>MI_OUT_WearUnits</b>.
    and i imported Idoc and exported as xsd and changed occurance to unbounded and again imported as external definition.
    i did mapping between these two external definitions.
    and i selected standard idoc for source and target interface for interface mapping  and given message mapping of previous step.
    In ID
    sender agreement :
                    sender service :BS_external
                    sender interface :<b>MI_OUT_WearUnits</b>
    receiver agreement:
                  receiver service :R/3
                  receiver interface :  standard Idoc
    Interface determination:
    sender service :BS_external
    sender interface :<b>MI_OUT_WearUnits</b>
    reciever service :R/3
    and clicked create
    inbound interface : Standard IDOc
    i am not getting Interface mapping which i created in IR.
    i tried Enhance interface determination also..
    please guide me....
    waiting for your help.
    regards
    ram

  • Error in message mapping of IDoC Invoic02

    Hi,
    i have imported the invoic02 idoc into PI system. i have mapped the required field os idoc with standard XSD which is imported through ED. I'm able to most of the fields with idoc and XSD. however, some of the node in xsd are repaeting.
    so here the part of xsd with which i'm mapping.
    (first_node)ListOfTaxSummary                      0..1
    (second_parent_node)TaxSummary                   1..unboubed
    (child_node) tax                                 1..1
    (element)TaxAmount                                0..1
    (element)TaxCategoryCoded                         0..1
    here the i have mapped  ListOfTaxSummary    with the idoc node E1EDS01
    TaxSummary  with E1EDS01
    tax with E1EDS01.
    i tried all possibilities with different mapping. but i'm able to get the tax node under taxsummary with the element. the problem its been repeated as  E1EDS01 idoc repeats.
    please help us in solving this problem.
    Thanks
    Kind regards,
    Lalitkumar.

    Could someone tell me is there any relation for the above error in XML messages and to the message mapping?
    The error mentions that you have used an IDOC in your mapping program which is not found in the ESR....you need to check if the IDOC is present in the ESR and is present under the correct SWCV.
    Once you have done the check do some dummy change to the mapping and activate it (if in DEV) and then check the CACHE.

  • Error in Message Mapping "Target message IDOC: ORDRSP.ORDERS02 does not exi

    Hi,
    I have joined newly to the team.
    When I tried to open one message mapping it throwinf follwing error...
    "Target message IDOC: ORDRSP.ORDERS02 does not exist in software component version ID: 44423362454456485465..
    Check whether the software component version ID: 44423362454456485465 is in Enterprise Service Repository. Import this version if necessary"
    Is there any impact because of which in the message flow?
    In my case some of the messages are failing with mapping error "runtime exception occured during application mapping com/sap/xi/tf/_SUS2MMOrderResponse_; java.lang.NullPointerException: while trying to invoke the method java.util.Map.get(java.lang.Object) of an object loaded from field com.sap.aii.map`"
    And some of the messages are processed sucessfully and they also using the same mapping program 'SUS2MMOrderResponse'.
    Could someone tell me is there any relation for the above error in XML messages and to the message mapping?
    Regards
    Baskaran K

    Could someone tell me is there any relation for the above error in XML messages and to the message mapping?
    The error mentions that you have used an IDOC in your mapping program which is not found in the ESR....you need to check if the IDOC is present in the ESR and is present under the correct SWCV.
    Once you have done the check do some dummy change to the mapping and activate it (if in DEV) and then check the CACHE.

  • Message mapping challenge in IDOC to EDI scenario

    Dear PI message mapping experts,
    I'm a newbie in PI and facing a mapping problem using graphical message mapping.
    I'm in an IDOC (INVOIC.INVOICE02) to FILE (EDI) scenario.
    Here after is the mapping i need to perform :
    Source structure IDOC :
    <E1EDKA1> (0..99)
       <NAME1> A </NAME1>  (0..1)
       <NAME2> B </NAME2>  (0..1)
       <NAME3> C </NAME3>  (0..1)
       <NAME4> D </NAME4>  (0..1)
    </E1EDKA1>
    Target structure :
    <AccountingCustomerParty>  (1..1)
       <Party> (0..1)
          <PartyName> (0..unbounded)
              <Name>A</Name> (1..1)
          </PartyName>
          <PartyName>
              <Name>B</Name>
          </PartyName>
          <PartyName>
              <Name>C</Name>
          </PartyName>
          <PartyName>
              <Name>D</Name>
          </PartyName>
       </Party>
    </AccountingCustomerParty>
    I know i have to play with context and queues with stanard function or UDF but cannot succeed to do it.
    Could you please help me ?
    Thanks in advance,
    Alysee

    One approach out of available few ways to implement this:
    NAME1 - Exists - CreateIf - PartyName[0]
    NAME2 - Exists - CreateIf - PartyName[1] (Create deuplicate segment)
    NAME3 - Exists - CreateIf - PartyName[2] (Create deuplicate segment)
    NAME4 - Exists - CreateIf - PartyName[3] (Create deuplicate segment)
    Srikanth Srinivasan

  • Need Help with Message Mapping in PI 7.1 - JDBC to IDOC

    I have an outgoing SQL function that sends multiple rows of data for use in creating an IDOC in ECC. I am trying to key the creation of new IDOCs (already did the maxOccurs trick to the IDOC definition) based on a field in the JDBC return data...
    JDBC Message Format...
    SEGNAM - TRANS_ID - MATERIAL - VKORG...ETC
    MARA -  00001 - 1234 - <space> - ...
    MARC -  00001 - 1234 - VK01 - ...
    MARA - 00002 - 9876 - <space> - ...
    MAKT - 00002 - 9876 - <space> - material description - ...
    Each time there is a new TRANS_ID, I need to indicate a new IDOC in the message mapping. I have tried all kinds of combinations of TRANS_ID --> dropContext --> splitValue and TRANS_ID --> collapseContext --> splitValue, but nothing has worked.
    Has anyone done this kind of message map (without any BPM please)?
    Thanks,
    Nathan

    Hello Nathan,
    For this one, you have to play with contexts.
    row 1 SEGNAM = MARA, TRANS_ID = 1, MATNR = 123...
    row 2 SEGNAM = MARC, TRANS_ID = 1, MATNR = 123, WERKS = PL01...
    row 3 SEGNAM = MARA, TRANS_ID = 2, MATNR = 987
    This also depends on the occurrence of the parent node. example, if I want MATNR to be populated, the logic would be like
    ex:
    IDOC1..unbounded) (The logic is the already provided in an earlier response)
    -->MATNR (1..1)
    MATNR --------> removeContext ----------------> FormatByExample --> MATNR
    TRANS_ID --> removeContext --> splitByValue:ValueChange --> /
    If the rows are not in order of trans_id, then you need to incorporate sorting into the logic above.
    Hope this helps,
    Mark

  • Message Mapping - IDOC to http

    Hi ,
    I am creating Message mapping for IDOC to Http scenario.
    In which i have the following requirement. For a partner Role in segment E1BPDLVPARTNER we need to get the Address_No value
    and then with that we need to get the address from segment E1BPADR1
      <E1BPDLVPARTNER>
          <PARTN_ROLE>AG</PARTN_ROLE>
         <PARTNER_NO>0007745359</PARTNER_NO>
      </E1BPDLVPARTNER>
      <E1BPDLVPARTNER SEGMENT="1">
        <PARTNER_NO>0007745359</PARTNER_NO>
        <ADDRESS_NO>0000267775</ADDRESS_NO>
      </E1BPDLVPARTNER>
       <E1BPDLVPARTNER SEGMENT="1">
         <PARTNER_NO>0007759123</PARTNER_NO>
         <ADDRESS_NO>9000001048</ADDRESS_NO>
      </E1BPDLVPARTNER>
      <E1BPADR1 SEGMENT="1">
         <ADDR_NO>000075</ADDR_NO>
         <NAME>BRIDT HOSPITAL INC</NAME>
       </E1BPADR1>
       <E1BPADR1 SEGMENT="1">
         <ADDR_NO>00775</ADDR_NO>
          <NAME>BRIDGA</NAME>
       </E1BPADR1>
       <E1BPADR1 SEGMENT="1">
        <ADDR_NO>05</ADDR_NO>
        <NAME>BRIDL INC</NAME>
       </E1BPADR1>
    Can you provide inputs on this.
    Thanks,
    Vishal

    For the Address No 0007745359 in E1BPDLVPARTNER we need to go to the E1BPADR1 segment and get the address from
    it and populate the target. Also the data above is test one
    Me a bit confused about your requirement!
    In your structure Partner_Number is having the value 0007745359
    What i get is you have to check for PartnerNo in E1BPDLVPARTNER and if that value matches then go to E1BPADR1 segment and get the Address......but to go to a particular E1BPADR1 you need to check for some field within it.....
    Your mapping logic will be something like:
    PartNum/ AddrNum -->
                                  --->equalS --->
    Constant(0007745359)
                                                              ----> And ----> IfWithoutElse --->    Target
    Field_of_E1BPADR1 (validation logic) -->             Then(Field_of_E1BPADR1)
    Context of PartNum/ AddrNum to be raised and also that of Field_of_E1BPADR1 (the one on which validation is imposed.
    If possible get some more details from your technical lead on how to select the E1BPADR1 ...
    Regards,
    Abhishek.

  • IDoc to IDOC, Message Mapping settings

    Hi!
    I am going to implement IDoc to IDOC scenario.
    The IDOC should be send from SAP ECC 6.0 system, client 100 to the same system in client 200 via SAP XI.
    I have chosen the message type MATMAS05.
    Questions
    - What is the minimal message scenario (MATMAS:MATMAS05 to MATMAS.MATMAS05) in message  mapping?
    - when I change some mapping attributes do I need to activate the other related objects (e.g. Interface Mapping, etc.)?
    My problem is that the IDOC will be received in SAP XI, but has the following error:
    Error: must node 'E1MARAM' failed in structue MATMAS05
    How can i correct this error?
    Thank you very much!
    regards
    Holger

    Hi Holger,
    >    * What is the minimal message scenario (MATMAS:MATMAS05 to MATMAS.MATMAS05) in message >mapping?
    No Mapping at all or a direct 1:1 connection of all corresponding fields.
    >    * when I change some mapping attributes do I need to activate the other related objects (e.g. Interface >Mapping, etc.)?
    You only have to activate objects that you changed - so no.
    From the error I guess that a node in the target structure is not created although the idoc-definition states it as mandatory.
    Do you really need the mapping? Does the incoming IDoc also miss the Node?

  • Java heap space error occured during message mapping of FILE to IDOC

    hello Friends,
                          I am trying to do the message mapping for File to Idoc scenario.
    Idoc which I am using is HRMD_A.HRMD_A06 and infotype which I want to update is 14. I am trying to map the message type which I hav created for infotype 14 with the IDOC
    Its very simple scenerio but  every time I try to save the mapping before activating it I get an error:
    Java heap space
    Internal problem occurred (INTERNAL_PROBLEM)
    Java heap space.
                I am not able to figure out what possibly is the problem wheather its from my end or the BASIS end.
    Kindly help.
    Regards,
    Lokesh

    As the server probably survives (you restart your Integration Builder and can probably connect immediately), the problem will be on your side (client). Did you add one or more large xml-test-instances to the mapping ? If yes, delete them, because they lower the performance and can make problems. If not, then this is a strange problem. Even if the Idoc structure is complex, the mapping object itself cannot be that large.Is this problem only with this one mapping ?
    CSY
    Edited by: Christian Sy on Mar 9, 2010 6:26 AM

Maybe you are looking for