Mapping IDOC to IDOC

We are receiving The CREMDM idoc from one XI system to another XI system and are required to pass this IDOC to SAP R/3. Is there a simple method to map all fields from one IDOC message  to the same IDOC and pass into SAP R/3. We are creating a function module on R/3 to process the inbound CREMDM idoc

Hi Robert,
As Amir said if you have same idoc(1:1 mapping) you do not need a mapping.
Also in addition to this in case if you want to mapped only few segment which is having same field name, there is a button "Map selected fields and substructure if names are identical" in mapping. You need to select a segment from source and target and click on this button. It will auto-map all fields from source to target which having same name.
Hope this will help.
Nilesh

Similar Messages

  • Mapping issue in idoc to JDBC scenario

    mapping issue in idoc to JDBC scenario
    source structure
    E1KNB1M
      BUKRS = 1000
    E1KNB1M
      BUKRS=  9000
    E1KNB1M
      BUKRS=  2000
    THE NODE E1KNB1M is repeated many times and the field BUKRS is also repeated with E1KNB1M as above
    TARGET field : ISFRANCHISE
    if any where value of BUKRS =9000 we have to pass Y to the target filed, else N
    if BUKRS = 9000   THEN ISFRANCHISE= Y
                   ELSE
                ISFRANCHISE=N
    I've done the mapping as below
    BUKRS = 9000--> IF THEN Y ELSE N--
    > ISFRANCHISE
    BUT everry time the target value is N only
    pl suggest
    rgds
    mojib

    mapped like this
    BUKRS--->SORT---->
                                                 EQUALS --------IF---THEN    Y
    9000------------------------>                                               ----------------->ISFRANCHISE
                                                                  ELSE   N
    context of BUKRS set to parent node
    its worked
    thanks to all for valuable suggestions
    rgds
    mojib

  • Mapping to an IDOC using an externally created XSL file

    I want to map a message to an IDoc using an ABAP XSLT transform. I am creating the XSLT in an external tool.
    I need to use an XSD definition of the IDOC as the target document of the mapping. I can get that in two ways:
    1) Get the XSD definition of the IDOC from transaction WE60 and use the menu command 'Documentation -> XML Schema'
    2) In the Integration Repository, export the XSD of the imported IDOC.
    The problem is, there are significant syntax differences between these versions, and I don't know which is the correct version. For instance, the XSD exported from the Integration Repository has a mandatory attribute 'SEGMENT' for each segment that must be filled to create a valid XML message; this is not the case when the XSD definition is created in WE60.
    Can somebody advise which is the correct version to use?

    Hi Anthony,
    This is really strange...
    In both case XSD should be same...can you please tell for which idoc you are generating xsd?
    Eventhough if you generate XML Schema using WE60,  mandatory attribute 'SEGMENT' for each segment has to be there....this validation would be done while posting idoc. It will check for all mandatory fields.
    I have some different thoughts that what wojciech has suggested...
    "If were your shoes I would use xsd from integration repository because that's the expected result...."
    But final goal is not to achieve mapping but posting idoc with proper data in R/3 system successfully.
    Your second question..
    "Do I assume then that placing a constant value of 1 in the SEGMENT attribute is just to satisfy the validation of the XML message against the XSD:..?
    ummm...I think if you assign constant "1" to segment it will generate that segment while creating idoc. Its mandatory to assign constant value to segment which you want to generate...
    "Can I assume that the IDoc adapter will fill the SEGMENT attribute with the correct value?.."
    I dont think so Idoc adapter will fill this attribute automatically...you need to assign constant to field segment.
    Nilesh

  • Pass through scenario in SAP PI with no mapping for File to IDoc and Idoc to file scenarios

    Hi Experts,
    Can i have step by step process in SAP PI for pass through scenario with no mapping in case of file to Idoc and Idoc to file both cases please.
    What objects i can skip.
    My PI system is 7.3 dual stack.
    I have seen below blogs, still its confusing to me.
    When and how to create an scenario in SAP PI without mapping objects.
    Pass Through Scenario with no Mapping in PI 7.1
    Appreciate your help on this.
    Regards,
    Mohan.

    Hi Mohan
    In pass thru interface you don't need to create any ESR objects, only ID objects are required.
    Just Create a Receiver Determination and Receiver Agreement for your scenario (no need for Interface Det. and Sender Agreement).
    Specify the IDOC in the Sender Interface and namespace as urn:sap-com:document:sap:idoc:messages
    Or instead of creating objects manually, Run the wizard with Idoc name/namespace in sender/receiver interface
    Regards
    Osman

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

  • Mandatory fields  for mapping in ORDERS idoc.

    Hi
    I m working on File to idoc scenario for creation of sales order in ECC 6.0 , now I want to know what are the mandatory fields in ORDERS idoc which needs to be populated or else disbaled so that the sales order gets created properly in the ECC 6.0..
    Pl let me know the method of finding mandatory field for mapping for  any idoc  and which fileds of idoc are to be disabled.
    Pl help ..
    ans will be rewarded .
    thanks & rgds
    mojib

    HI,
    U can disable the control record segment and in the IDOC adapter use the option apply control record from payload.
    If you have set the Apply Control Record Values from Payload indicator in the receiver IDoc adapter, the following fields are filled from the IDoc-XML payload:
    ·        MESCOD
    ·        MESCFT
    ·        TEST
    ·        EXPRSS
    ·        STD
    ·        STDVRS
    ·        STDMES
    ·        SNDSAD
    ·        SNDLAD
    ·        RCVSAD
    ·        RCVLAD
    ·        REFINT
    ·        REFGRP
    ·        REFMES
    ·        STATUS
    ·        DIRECT
    ·        OUTMOD
    ·        CREDAT
    ·        CRETIM
    read the information in below link:
    http://help.sap.com/saphelp_nw70/helpdata/EN/ab/bdb13b00ae793be10000000a11402f/frameset.htm
    thnx,
    chirag

  • Mapping issue: FCC: Idoc for each record in file

    Hi,
    I have file to Idoc scenario.
    I receive csv file with multiple records.
    The requirement is to create an Idoc for each record.
    For eg.
    source file
    A1,B1,C1
    A2,B2,C2
    A3,B3,C3
    After FCC
    <MT>
    <TRANS>
    <ROW>
    <A>A1</A>
    <B>B1</B>
    <C>C1</C>
    </ROW>
    <ROW>
    <A>A2</A>
    <B>B2</B>
    <C>C2</C>
    </ROW>
    <ROW>
    <A>A3</A>
    <B>B3</B>
    <C>C3</C>
    </ROW>
    </TRANS>
    <MT>
    I have first tested it with only 1 record to test end to end connectivity. It works as expected and Idoc is posted to target system.
    Now when I am trying to send multiple records, I am getting some issues.
    Below are the steps that I have taken to process multiple records:
    1. Changed the cardinality of ROW (child of RecordSet) from 1 to Unbounded.
    2. Changed the occurance of Idoc to Unbounded.
    3. Mapped ROW to Idoc root.
    I have tested the mapping in IR and it generates multiple IDOCs.
    When I send the test file, it fails with error Tag found instead of tag IDOC BEGIN=
    I can see the xml message created with multiple ROWs in XI by File adapter in sxmb_moni.
    When I do Test Configuration in ID, with the XML message extracted from sxmbmoni, the result that I got was:_
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"><ns0:Message1></ns0:Message1></ns0:Messages>
    This means that idoc was not created while mapping.
    But the same sample message works OK in IR!
    Pls help where I have missed.
    Regards,
    Anirudh.

    Sudhir,
    Thanks for your response.
    FCC is working fine. I have taken the XML message in XI created after FCC from csv sample message.
    I have tested this message in IR by placing it between
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
       <ns0:Message1>
    </ns0:Message1>
    </ns0:Message>
    It is working fine and Idocs are created in mapping in IR.
    But the same sample message is creating below output ID!
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"><ns0:Message1></ns0:Message1></ns0:Messages>
    Regards,
    Anirudh.

  • XSL mapping of ARTMAS IDoc - carriage returns and white space

    Hi all. I have tried all sorts here and am completely stuck. I am mapping an article master ARTMAS IDoc using XSL mapping and an extra carriage return and white space characters are being added to the FIELD1 and FIELD2 fields of the E1BPE1MARAEXTRT segment and I don't know why! These fields contain all our bespoke field values joined together so they are 229 and 250 characters long respectively, which I think is related to the problem. The mapping program looks like this:
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="xml" encoding="UTF-8" omit-xml-declaration="no" indent="yes"/>
    <xsl:template match="/">
    <ARTMAS04>
    <IDOC>
      <xsl:copy-of select="//ARTMAS04/IDOC/EDI_DC40"/>
      <xsl:copy-of select="//ARTMAS04/IDOC/E1BPE1MATHEAD"/>
      <xsl:copy-of select="//ARTMAS04/IDOC/E1BPE1MARART"/>
      <xsl:copy-of select="//ARTMAS04/IDOC/E1BPE1MARAEXTRT"/>
      <xsl:copy-of select="//ARTMAS04/IDOC/E1BPE1MAKTRT"/>
      <xsl:for-each select="//ARTMAS04/IDOC/E1BPE1MARCRT">
        <xsl:if test="(PLANT='D100') or (PLANT='D200') or (PLANT='D300')">
          <xsl:copy-of select="."/>
        </xsl:if>
      </xsl:for-each>
      <xsl:copy-of select="//ARTMAS04/IDOC/E1BPE1MARMRT"/>
      <xsl:copy-of select="//ARTMAS04/IDOC/E1BPE1MEANRT"/>
    </IDOC>
    </ARTMAS04>
    </xsl:template>
    </xsl:stylesheet>
    I have a test IDoc going through this and the first 3 characters of the FIELD1 are "BIK". If I look at the source of the XML file, the problem area looks like this:
    <E1BPE1MARAEXTRT SEGMENT="1">
          <FUNCTION>004</FUNCTION>
          <MATERIAL>000000000000895649</MATERIAL>
          <b><FIELD1>
            BIK</b>      0  0.00 T                                    000000001CARRERA FURY 04 20"     CARRERA FURY 04 20" 2005092420040622    X                    00000000   20031104 00200406140000000000                    0.00 0000000
          </FIELD1>
    You can't really see it above, but there is a carriage return and 8 white spaces before the BIK. Where does this carriage return and white space come from?! Any help would be really appreciated - this is driving me crazy!
    Many thanks,
    Stuart Richards

    Stuart,
    I think I know the cause to your problem. I am not an XSLT programmer but based on searching this forum I found how I can acheive the carriage return at the end of my document. Your xsl statement is as follows:
    <xsl:output method="xml" encoding="UTF-8" omit-xml-declaration="no" indent="yes"/>
    Change the indent value from yes to no. This should remove the carraige return. Hope this works for you.
    I actually need a carriage return and line feed on my document so I am still stuck. All I have acheived is the carraige return.
    Thanks,
    Jim

  • Mapping Issue: one IDoc to multiple IDocs concerning incoming segments

    Hi,
    i want to devide one incoming IDoc to two or more outgoing IDoc's of same type concerning the appearance of one segment.
    Incoming is:
       <IDOC BEGIN="">                   1...1
          <EDI_DC40 SEGMENT="">
          </EDI_DC40>
          <..>
          <Z1MOV SEGMENT="">  0..99999
          </Z1MOV>
       </IDOC>
    Target should be:
    for each Z1MOV one IDOC.
       <IDOC BEGIN="">                   1...1
          <EDI_DC40 SEGMENT="">
          </EDI_DC40>
          <..>
          <Z1MOV SEGMENT="">  0..1
          </Z1MOV>
       </IDOC>
    I already did the occurance change, like imported target IDoc with changed attribute maxOccurs="unbounded".
    I mapped the segment Z1MOV to IDOC but when Z1MOV occurs more than one time the target gets generated only one time. I changed the occurance of the IDoc to maxOccurs="unbounded".
    What do i have to do to make it run?!
    br

    Can someone help?
    When i switch to debug while testing message mapping i get following:
    Close tag
    Close tag
    Start tag
    Targetelement /ZIDOC/IDOC[2]/BEGIN kann nicht angelegt werden. Prüfen Sie, ob die XML-Instanz für die Ausgangs-XSD und die Zielfeldzuordnung die Anforderungen der Ziel-XSD erfüllt. Zielelement /ZIDOC/IDOC[2]/BEGIN kann nicht angelegt werden. Prüfen Sie, ob die XML-Instanz für die Ausgangs-XSD und die Zielfeldzuordnung die Anforderungen der Ziel-XSD erfüllt.
    I hope you can get the idea of this error because i can't tanslate.
    But the BEGIN is required for each message so how to get rid of it. This also concerns the SEGMENT-tag under each Segment of the IDoc.
    br

  • Mapping shipment 05 idoc

    hi experts,
                     we have a scenario to map shipment 05 idoc to delivery 05 idoc. there will be one or more handling units in source idoc.for every handling unit in shipment 05 we should map respective article information to seperate delivery 05 idoc. this means foe every e1edl37 segement in source idoc we need to create seperate delivery05 . but the occurence of the imported delivery 05 idoc is 1. so how to map this.. do we need to go for bpm. can anyone please suggest.

    Hi,
    1)Double Click on the imported IDOC
    2)Export the WSDL file to your desktop.
    3)Change the max occurrence of the IDOC Segment.
    e.g.
    Original
    <xsd:element name="IDOC" type="CAP_PRIMCOST.CAP_PRIMCOST01" />
    Change
    <xsd:element name="IDOC" type="CAP_PRIMCOST.CAP_PRIMCOST01" minOccurs="0" maxOccurs="999999999" />
    4)Import the new WSDL as an external definition and use it insted of IDOC.
    Regards,
    Himanshu
    Edited by: Himanshu Mohan on Oct 7, 2008 1:55 PM

  • Message Mapping - JDBC to IDoc

    Hi,
    I trying to map the resultset from a JDBC adapter (sender) to Inbound IDoc into SAP. I have problems with message mapping and after reading through a number of threads, I followed the following steps:
    1. Download the IDoc definition as XSD.
    2. Change occurrence of node IDOC to 1..unbounded.
    3. Upload changed XSD as external definition and
    4. use the external definition in the mapping.
    After importing the external XSD definition the IDOC node turned red. How do I map this node, now that it is  unbounded?
    Example from Message mapping:
    MT_ETA_RMX................ZSDETA01
    ..EtaNode........................IDOC     (unbounded =  RED)
    ....CARID.................................BEGIN
    ...............................................EDI_DC40
    ...............................................Z1RETA
    .................................................SEGMENT
    .................................................CARID
    Thanks,
    Henk

    Hendrik,
    whichever data record is occuring multiple on your sender JDBC message should be mapped to IDoc segment. It really depends on your JDBC message structure.
    If EtaNode is occuring multiple times, and if based on EtaNode an IDoc has to be created, map that to IDOC and if per every CARID one idoc needs to be created, then use CreateIf and exists node functions to IDoc.
    regards
    SKM

  • Mapping help for IDOC to file

    Hi Experts,
    I need help in mapping. All mapping is working fine. I am getting issue when mapping comment field to only BOX when it occurs multiple times.
    Actually I am getting correct lines in queue , but it is not mapping correctly, It consider lines from first MIXPLT.
    Target Structure:
    BOX                    0.n          Z1WHCUSTC   when Z1WHCONS is initial
    ++LIne                 0..n        Z1CUSTCD
    ++++Comment     0...n      Z1WHCMTH
    MIXPLT                0...n      Z1WHCONS
    BOX                     0..n       Z1WHCUSTC    when Z1WHCONS is not initial
    ++LIne                 0...n
    ++++Comment    0...n
    Source Structure:

    Hi Ranj,
    Did you import Idoc or Idoc xsd ?
    If you imported xsd, open external definition IDoc check for errors like below.
    I think the problem might be with source xml structure.
    Regards,
    Krupa

  • Mapping file to IDOC "DELVRY03" segment E1ADRM1

    Hi all,
    i have a problem to map a text file to idoc "DELVRY03" using segment E1ADRM1.
    My text file has 2 fields : CUSTOMER_CODE & VENDOR_CODE
    Source mapping : Text File
    Target mapping : IDOC "DELVRY03"
    IDOC should be filled in the following way :
    First entry:
    PARTNER_ID = CUSTOMER_CODE
    PARTNER_Q = AG
    Second entry:
    PARTNER_ID = VENDOR_CODE
    PARTNER_Q = WE
    How can i fill the idoc structure?
    Thanks in advance.
    Regards.
    Dario.

    Hi Harish,thanks for your reply.
    I tried to duplicate segment E1ADRM1 but PI system gets me this error :
    "Target structure has no such path: /DELVRY03/IDOC/E1EDL20/E1ADRM1[1]/PARTNER_ID. Skipping mapping"
    Pls, how can i solve this problem?
    Thanks in advance.
    Dario.

  • Mapping ansix12 to idoc orders04

    hi ,
    I have created the data type in the integration repository and i bought the message type for message mapping, but i need to know how to map this with idoc  orders04 and im not sure with the loop concept in XI for mapping. like mapping for more than one line item.
    if any one have any idea idea abt it pls helpme.
    thankx.

    hi ,
    I have to map the ansi x12 file to idoc meta data and for mapping do i need to write a XML schema for the the ansix12 file .. i need help reagrding this .
    thankx .

  • IDoc to IDoc Scenario - Correct Interface Mapping configuration

    Hello All,
    i have to configure an Interface Mapping for an IDoc to IDoc scenario.
    IDoc Type for sending and receiving already imported and located under Imported Objectes\IDocs in respective Software Component Version.
    Now, how is the correct configuration? Add the sending respectively receiving IDoc Type directly to Source Interface/Target Interface under Display Interface Mapping or create first a sending Message Interface and a receiving Message Interface and add the IDoc type under configuration Message Types. Then add the Message Interface to the Interface Mapping.
    The selection for direct import of the IDoc structure under the Interface Mapping (Source Interface/Target Interface) is possible.
    Many Thanks in advanced!
    Jochen

    hi,
    for IDOCs (if you don't use a BPM)
    you don't need any message interface
    so if you have already created a message mapping
    you can put the IDOCs directly to your interface mapping
    then click on read interfaces
    and select your message mapping program
    if you want to learn more about IDOCs and XI
    have a look at my book:
    <a href="/people/michal.krawczyk2/blog/2006/10/11/xi-new-book-mastering-idoc-business-scenarios-with-sap-xi"><b>Mastering IDoc Business Scenarios with SAP XI</b></a>
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Issue in IDOC-XI-IDOC scenario

    Hi,
    We are facing a strange issue in an IDOC-XI-IDOC scenario. We are using a SAX parser to parse the code here.
    The error we are getting in 'sxmb_moni' is
    <SAP:Code area="MAPPING">EXCEPTION_DURING_EXECUTE</SAP:Code>
      <SAP:P1>com/abc/def/dev/sapxi/clfmas/Idoc2IdocMapperCLFMAS</SAP:P1>
      <SAP:P2>java.lang.RuntimeException</SAP:P2>
      <SAP:P3>For input string: ""</SAP:P3>
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>During the application mapping com/abc/def/dev/sapxi/clfmas/Idoc2IdocMapperCLFMAS a java.lang.RuntimeException was thrown: For input string: &quot;&quot;</SAP:Stack>
    The strange thing is, when I restart the message, it gets processed successfully. Also, when I copy the payload, and test the same on a different environment, it gets processed successfully.
    Would really appreciate some pointers here!
    cheers,
    Prashanth

    Hi,
    This related to mapping error check it once again.Check in Interface mapping Test tab.see the result.check the sxmb_moni and get the source of mapping come back to interfcae mapping and test .
    See the below links
    Hi I got EXCEPTION_DURING_EXECUTE in RWB->Message Monitoring
    I am getting MAPPING  EXCEPTION_DURING_EXECUTE
    EXCEPTION_DURING_EXECUTE- Error in Mapping. Doubt about IE and AE
    EXCEPTION_DURING_EXECUTE
    Mapping problem - EXCEPTION_DURING_EXECUTE
    ERR: EXCEPTION_DURING_EXECUTE while using FILE CONTENT CONVERSION
    Regards
    Chilla..

Maybe you are looking for

  • How do I create this drop down menu?

    I've been trying to figure out how to achieve this animated drop down menu and I just can't.  I've gotten somewhere in between (animation using the accordion panel, and the rollover effect using the composition). Any help would be appreciated.  This

  • Aging and Auto Refresh

    Hi I read from one of the previous threads that "Even if rows are aged out by the aging mechanism, if those rows still exist in Oracle they will simply be pushed back to the cache on the next AUTOREFRESH." Aging is to remove data that is no longer ne

  • Message bridge example

    Hi, I need the complete example on Message bridge in weblogic server. ie betwenn to weblogic jms server's?? please help me out if some one know how to setup Message bridge between two weblogic servers Thank

  • How to read group id using contact id

    Hello all, I am doing coding in cocoa touch.In which i add contacts using coding.In which i add and read group.Now i want to know the group using contact id which i enter in group. Thank you..

  • ITunes starts by itself and won't quit

    I have researched this topic and not found an answer. My system is an imac running 10.5.6 and itunes8. recently itunes launched for no apparent reason. we haven't used it in months. when i quit, even force quit, it immediately relaunches. we have not