Partner segment issue in IDOC IORDER01

Hi All,
We are using IDOC IORDER01 for sending Order and their detail to a system, for that we are using transaction IORD.
Structure of IDOC type is:
ZIORDER01   PM/SM Orders (Crt and Upd) Enhancement for OP2000
    E10RHDR      PM/SM order Header Segment
         Z10ORHDR         Outbound - PM/SM Orders (Create and Update) order hdr
                                   Enhanc
         E10RHDR_LTXT  Header Long Text segment
         E10RADR           Order Address Segment
         E10RPMT           Order Permit Requirement segment
         E10RTOB           Technical Object Segment
         E10RPAR           Partner Segment
         E10ROPR           Order Operation Segment
         E1NTHDR           Notification Header Segment
Currently all the data passes through IDOC except E10RPAR (Partner segment) because SAP allows only partners of type SOLD-TO-PARTY etc to pass using this IDOC.
But, Client has requirement of passing all the partners of the Order to the system.
So we need to find out solution on how to pass all the partner data irrespective of partner type.
Any inputs on this would of great help.
Please let me know if any one worked on such a requirement.
Regards,
Lavanya.

Mohana
Are you sure about the segment name E1EDK01 ?? Becoz.. Only one Segment of type E1EDK01 is allowed in one IDOC...
See below for details:
Segm.type       E1EDK01                     
Minimum number  1                           
Maximum number  1                           
Parent segment                              
Hier.level      1                           
Thanks
Amol Lohade

Similar Messages

  • 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

  • IDoc segment issue

    Hi,
    I have file to Idoc scenario, where my input file structure like below and need to create Idoc segments in SAP.
    Input Structure:
    Record (1--Unbounded)
    Header (1-1)
    Item_Details (1- Unbounded)
    Child_ItemsInfo (1 -Unbounded)
    Item_1 (1--1)
    abc
    def
    Item_2 (1--1)
    abc
    def
    Item_3 (1--1)
    abc
    def
    Now..I need to generate an Idoc segment "Z1ABCD", as many as child Item segments(Item_1,Item_2,Item_3) occurs in my input structure. I have used duplicate subtree on Idoc segment "Z1ABCD" and copied 2 more times.Now I have 3 "Z1ABCD" segments in my IDoc.
    Lets say, if my input structure have 2 Child_ItemsInfo, then I need to generate 6 "Z1ABCD" segments in Idoc. I'm able generate these segments.
    My code generating all the Item_1 segments then Item_2 segments like that...But I'm expecting a "Z1ABCD" segment at Item_details node level...like Item1,2,3 and then Item1,2,3....Please help me out!
    Note: My mapping looks like this;
    Item_1 ->remove context>Split by value(each) ->CollapseContext->Z1ABCD
    Item_2 ->remove context>Split by value(each) ->CollapseContext->Z1ABCD
    Item_3 ->remove context>Split by value(each) ->CollapseContext->Z1ABCD
    the target structure which I'm lookin for like below...(for 2 Child_ItemsInfo from my input structure)
    1.Z1ABCD (Item_1 info)
    2.Z1ABCD (Item_2 info)
    3.Z1ABCD (Item_3 info)
    4.Z1ABCD (Item_1 info)
    5.Z1ABCD (Item_2 info)
    6.Z1ABCD (Item_3 info)
    But my code generating the segments like below;
    1.Z1ABCD (Item_1 info)
    2.Z1ABCD (Item_1 info)
    3.Z1ABCD (Item_2 info)
    4.Z1ABCD (Item_2 info)
    5.Z1ABCD (Item_3 info)
    6.Z1ABCD (Item_3 info)
    Esha
    Edited by: esha nadh on Mar 9, 2011 9:14 PM

    I am bit confused .
    Why are you using this ...
    remove context-->Split by value(each) --->CollapseContext
    Do Direct assignment like below
    even the context should not change . it shoule be default .,
    Item_1 - > Z1ABCD
    Item_2 - > Z1ABCD
    Item_3 - > Z1ABCD
    isnt it working fine ??????
    actually it should ..
    In your case .
    IZ1ABCD for Item_1 coming together because . you Used removeContext So Both  Item_1 comest together .. and then you doing transformation .. so the result are coming together...
    Try Like Direct assignment . I hoping it should work fine
    regds
    PS

  • ECC6.0 upgrade issue with IDoc release

    Hi experts,
    we are in the process of upgrading our ECC environment from 5.0 to 6.0. We have quite a few interfaces which use ORDERS/Invoice Idocs in customised form. In ECC5.0 environment, we had developed a Z segment in the ORDERS Idoc and the segment release was set as 640. Everything worked fine in ECC5.0.
    In upgraded environment, SAP has released new version of some segments. one of those is E1EDP01. This segment has 2 new versions in ECC6.0 environment - 007 and 008. This change in the version changes the data in the IDoc and hence interface goes in error at the EDI provider.
    We have tried to use 640 as the IDoc segment release in the partner profile of the IDocs. This still gives us an issue because the 007 version of the segment E1EDP01 has release 620 and hence the Idoc picks up 007 version instead of 006 version as desired. When we change the partner profile with Segment release in the IDoc type as 46C, it gives us an issue in the Z segment saying that the IDoc segment is not released in 46C and the Idoc goes in error.
    has any one faces such situation in the past? if yes, please throw some light.
    Thanks in advance.

    Hello,
    Iam new to SAP. Thar’s why i can’t understand well to do upgrade,
    Then i found out some notes from internet about Upgrade : ‘‘ SAP Note Number 857904  (upgrade from Release 6.’ To 7.0)’’.
    In that notes,
    Actually i would like to know about some key words (for example : ASSIGNING, REPLACE, TRANSFER…. )  which how to work in the Release 7.0
    Always i have some objets in 4.6C. 
    Ex 01: ’’READ DATASET p_dataset INTO wa_record’’
    Ex 02 :  ’’ TRANSFER i_crhu TO p_crhd ’’
    LOOP AT i_crhd.
    *disable controls in crhd
        PERFORM f_disable_crhd.
        TRANSFER i_crhd TO p_crhd.
        IF sy-subrc NE 0.
          MESSAGE a045.        "Error when transfering data to error file
        ENDIF.
    ENDLOOP.
      CLEAR i_crhd.
      CLOSE DATASET p_crhd.
      IF sy-subrc NE 0.
        MESSAGE a039.                      "Error at close dataset
      ENDIF.
      OPEN DATASET v_crhd FOR OUTPUT IN TEXT MODE.
    And then i have some FM (ex : WS_UPLOAD , WS_DOWNLOAD)
    So I have changed the code for WS_UPLOAD by GUI_UPLOAD
                                  and WS_DOWNLOAD by GUI_DOWNLOAD
    now my problem is to know about some key word which how to work in ECC6 (for example ASSIGNING, REPLACE, TRANSFER…. )
    thanks in advance
    Rathy

  • Issue in IDOC : Outbound

    Hi All,
    I am trying to send an outbound IDOC, the data is filled successfully and IDOC is generated...But the status is set to 30: and not 53(successfully)....
    I checked the log: Below is the IDOC log:
    Receiver exists , No filters , No conversion , No version change
    Message no. B1006
    IDoc successfully processed in ALE outbox
    The IDoc has passed through the ALE layer successfully and can be sent. It can either be sent online or as a batch job, depending on the settings in the partner profile.
    If there are no further status records then the IDoc waits for the next dispatch report run.
    Success/failure of transmission is documented in subsequent status records.
    ALE layer actions
    The 'Receiver exists' parameter specifies whether the recipient of the IDoc has already been entered by the calling application or by the ALE layer. In the latter case the settings of the distribution model are used for the receiver determination.
    The 'No filters' parameter specifies whether the processing in the ALE layer has led to segments of the IDoc created by the application being left out. The settings in the segment filter and in the distribution model for this recipient are decisive here.
    The 'No conversion' parameter specifies whether field values have been converted in the ALE layer. This is the case if the IDoc contains organizational units to be converted or if the ALE conversion tool has been activated for this recipient.
    The 'No version change' parameter specifies whether the IDoc has been converted into an earlier version of the IDoc type. This happens if the IDoc type in the outbound partner profile for this recipient differs from the IDoc type which was created.
    Regards
    Shiva

    Hi ,
    You trigger transmission of the IDoc using report RSEOUT00. To start the report manually, choose Tools &#61614; Business Communication &#61614; IDoc Basis &#61614; Test &#61614; Outbound Processing from IDoc (/nWE14), or schedule a regular job in background processing for this report.
    Check the outbound processing mode for the IDoc in the partner profile.
    •     Outbound processing mode 2: The system sends the IDoc immediately
    •     Outbound processing mode 4: The system collects IDocs that have been created and sends them in packets of a predefined size.
    IDocs are not intended to be sent directly.
    Status 30 in the IDoc can normally only occur if outbound mode is set to 4.
    Please  let me know if u have any Queries.
    Rgds
    Sree M
    Edited by: sree m on Mar 12, 2008 9:01 AM

  • IDOC-Segment Created a idoc document against Billing document

    Dear All,
    Thanks in  advance.
    Already created a idoc document against Billing document and one of the IDOC segment is not in the IDOC document output segments(WE05) actually it missed the segment.
    so i want to add the segment which it was missed during generation of IDOC document against billing document.
    Example:
    a) IDOC document misses one segment let suppose "Seg1".
    b) In "Seg1" it have only one field let suppose "Field1".
    c) But "Field1" does not have any value while generation of IDOC document so it doesn't create the respective segment in IDOC document.
    d) so here, i want to edit the IDOC document to add the "Seg1" in the IDOC document and reprocessing the IDOC document.
    Please help on this issue.
    Regards,
    Sridhar.

    Hello,
              If your requirement is to have the Segment even with only 1 Field, you'll have to create an Idoc Extension in WE30.
             In order to populate the Custom Segment, Use the Customer Function '002' in the IDOC_OUTPUT_INVOIC which is EXIT_SAPLVEDF_002 where you can actually insert the Segment as a Child Segment of an Appropriate Segment.
            You can go for Custom segment with the IDoc Extension so that you dont have to manually insert the Segment again and again while reprocessing it.
    Thanks and Regards,
    Venkat Phani Prasad Konduri

  • Problem filling segment E1BPADR1 in idoc Salesorder_createfromdat201

    Ladies and Gentlemen,
    I have a problem with populating segment E1BPADR1 in idoc SALESORDER_CREATEFROMDAT201.  My client is already using the idoc to successfully post Inbound Sales orders.  Now, they wish to add additional address data to the Sales Order Partner Address screen.  The standard partner segment (E1BPPARNR) permits them to fill some data which they are presently filling (i.e. Name 1, Street 1, Country, etc), but they have a requirement to fill additional fields Street2, Street3, etc. 
    When I add fill segment E1BPADR1, the data in segment E1BPPARNR is removed from the created Sales Order so that the data from segment E1BPPARNR is deleted, and no new data from E1BPADR1 is updated. 
    Has anyone experienced similar problems, and any ideas on how to get around it?  Points rewarded for useable suggestions.
    Regards,
    Steve

    Done

  • TAX ASSESSMENT BASIS MISSING IN SEGMENT E1EDK04 FOR IDOC INVOIC

    Hello,
    Tax assesment basis is missing in segment E1EDK04 for IDOC INVOIC. In EDI messages,Tax assesment basis has to be sent in TAX segment together with VAT rate. When there is only one VAT rate this is not a problem as tax assessment basis is the total net amount (And we have it in the IDOC). On the other hand when there is more than one VAT rate in the invoice, we don't have in the IDOC the Tax assesment basis of each VAT rate.
    Did someone experience this issue ? How did you handle it ?
    Regards.
    Eric.

    Dear Eric
    The latest pack available now for these components are (for PI 7.1)
    SAP BASIS 7.11 support package 6
    SAP HR 6.04 with Support Package 44
    If you are in PI 7.0 then I suggest you download the latest patch from marketplace.
    Sourabh

  • Unreleashed segment issue with SAP schema

    Hi All,
    We are trying to generate SAP schema in BizTalk 2010 and facing unreleased segment issue and discussed with SAP team whom suggested below ways. We were interacted with MSFT and no hotfix yet. Please guide me.
    The provider/external should call IDOCTYPE_READ_COMPLETE in the following way:
    - PI_RELEASE = ' ' => last existing segment version is returned
    - PI_RELEASE not available in the interface => last released version
    Which means: BizTalk needs to ensure the PI_RELEASE is not present in the call of the interface. This will allow pulling the last release version of the IDoc including not released segments.
    Thanks, Raja MCTS BizTalk Server 2010, MCC If this answers your question please mark it accordingly

    BizTalk does not support unreleased segments for Receive Operations.
    As far as I know SAP 'locks' the segment types that have not been released and the LOB adapter of BizTalk cannot properly read those segments.
    The SAP team should set a release on the IDOC types and segments you need.
    Glenn Colpaert - MCTS BizTalk Server - Blog : http://blog.codit.eu

  • How to add a custom segment in standard IDoc?

    Hi,
    I want to add a custom segment in stanard IDoc type (eg. MATMAS). I don't want to go for extended idoc (copying stanard idoc into zidoc and adding custom segment).
    Please tell me.

    Hello
    Transaction BD10 uses fm MASTERIDOC_CREATE_REQ_MATMAS which in turn uses MASTERIDOC_CREATE_MATMAS to create and distribute material master IDocs.
    Fm MASTERIDOC_CREATE_MATMAS belongs to function group MV01 in package MGV. Here you will find the user-exit function group XMGV.
    Perhaps EXIT_SAPLMV01_002 might be useful for you.
    Regards
      Uwe

  • Get the value of a particular field in a segment of an Idoc

    Hi All,
    I have a requirement where I need to write a report which will fetch the value of a particular field in a segment of an idoc.
    I have the idoc number segment and field name as input parameters by which I can fetch Sdata from EDID4 but the confusion is how to find the exact field value from that Sdata. How to Map the SDATA to the segment structure.
    Please advice...

    Hi,
    I have one last doubt that may be you people can help with... The user will be giving the segment name and field name as input. So by following Kesav's code while i can get all the values in the segment structure at runtime please suggest how to display any one field from that structure given that that particular field will come at runtime.
    EX: user gives an idoc number 123 (say belonging to Orders basic type)
                                 segment E1EDK01
                                 field  BELNR.
    So i need to display the value of E1EDK01-BELNR of idoc number 123.
    Please suggest how to achieve this....

  • Error when Adding a segment to an IDOC

    Hi I have added one segment to an IDOC through one user exit and it is giving the error with status 26.
    Here I am pasting the error details,
    The segment E1IDT02 does not occur at the current level of the basic type PEXR2001 (extension ).
    This error can have several reasons:
    The segment E1IDT02 is assigned to a group whose header segment does not occur.
    The segment E1IDT02 does not exist in the syntax description of the basic type PEXR2001 (extension ).
    The sequence of segments in the group in which the segment appears is incorrect.
    Previous errors ('mandatory' segment or group missing) may be due to this error.
    Can any body help me, and let me know what can I do to avoid this.
    Thanks,
    Deepak.

    Actually in the basic type of IDOC, there is no segment with this name. But I am adding this directly in an user exit. Can you tell me what is the actual procedure to add a new segment to the basic type of IDOC
    Thanks
    ravi

  • Partner profile to send Idoc to PI 7.4 system from ECC

    Dear Experts ,
    Do we need a partner profile to send Idoc to PI 7.4 system from ECC.
    or Just Port on TRFC is enough ..?
    if i need to create a Partner profile ...how to define a logical system and how Assign Logical System to Client... when there is no client for JAVA only PI system ..?
    thanks
    Shakif

    Hi Mohamed,
    You need to create a tRFC port on sending ECC system. The RFC destination selected in this port os the one created for IDOC transfer.
    Also you need a logical system, use client 000, i.e. PI1CLNT000.
    At last you have to create a partner profile to define the IDOC type used.
    Best Regards
    Harald

  • 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

  • Partner profile for INBOUND IDOC

    Dear experts,
    Need your help to define partner profile for inbound idoc to R/3 system. There is a third party (Non SAP) based application from which idocs need to be sent to the R/3 system. There is no need to send an outbound idoc from the R/3 system. Can some one please suggest what are the steps to be taken  to b configure the partner profile  in the R/3 system for the inbound idoc?
    Thanks,
    Priyanka

    Hi
    This is not the right location to post this question.
    You got to post this query in Data transfers section of SDN ABAP Development forums
    Now regarding your question,
    You need to create a Logical System with the help of the transaction SALE.
    Assign the created LS to the client with the help of same transaction
    Go to WE20 and create the partner with the same Logical System name
    Now..as you are recieving the Inbound Idoc from external Non-SAP System, you need to maintain the message type in the Inbound Parameters by clicking on ADD Icon over there.
    Before doing the above step, you got to create the connection between SAP and Non-SAP System.
    Use transaction SM59 to do this. Type of connection would be R/3 I guess
    Thanks
    Hope it helps.

Maybe you are looking for