Populating  the segments of idocs

Hi,
    How do segments of the idoc get populated with data from SAP tables ?  (for SAP standard idoc or newly created idoc and outbound process)
Can anyone say in details?
Good answer will be rewarded
Thanks ,
Manas Behera

For any IDOC there is a specific standard function module assigned that is called to fill the IDOC segments.
For orders it is e.g. IDOC_OUTPUT_ORDERS.
This function takes care of the filling of the IDOC segments. You also usually have user exits available in those function modules that you can use to manipulate the IDOC data or fill/add custom segments/fields.
The function modules usually start with IDOC_OUTPUT_* for outgoing IDOCS and IDOC_INPUT_* for incoming IDOCS.
Hope that helps,
Michael

Similar Messages

  • How can i check the segment in idoc.

    hi gurus,
       how can i check the segment in idoc.please help me as

    Hi Rohit,
    In WE02/05 U can view the IDocs.
    Since u r having the IDoc with u, Double click the Idoc no. and it will take you to screen where it will show you all the segments of IDoc. Here you can check which segment is giving error.
    Go to  WE60/63 which shows the detailed documentation in the MySAP environments if u have been using the old 4.6c systems. In 6.10 since the documentation is not available ,modify your personal settings to show the documentation by default; In 6.10 in transactions WE60 and WE63, documentation is no longer generated by default for the segment fields when the documentation is generated. To activate the generation of the documentation from the corresponding data elements, proceed as follows: WE60/WE63. > Goto > User settings. Here you must set the indicator for 'Display of the documentation' under 'Display attributes for IDOC types' and then save the change. Now the documentation is also displayed for the segment fields when WE60/WE63 is executed.
    **Reward points if u find this useful.
    Thanks & Regards,
    gyanaraj

  • Populating the SEGMENT attribute for  IDocs

    When mapping to an IDoc, each IDoc data element has a corresponding SEGMENT attribute, which I assume is the sequential segment number of the segment in the IDoc.
    Does that value need to be set, or does the IDoc adapter take care of it? If I do need to map it, how can I do it, because I would need to find a way of generating a running number either in the mapper, or externally in an XSL mapping file.

    Hi,
    OK thanks for explicitly stating thae answer! I was hoping for that.
    BR,
    Tony.

  • Hi guys this is the segment in idocs E1BPPAREX

    the segment E1BPPAREX has  Ref. Structure for BAPI Parameter EXTENSIONIN/EXTENSIONOUT.
    i need to code in EXTENSIONIN there are fields like structure , value part1,2,3,4.
    i need to pass some fields in the po header.
    can anyone give me some idea of how to pass the structure and values to the value part.and also h ? can i pass in the idoc also.
    will reward points if the information given is usefull.
    thanks and reagards.
    prasadnn.

    hi
    refer to the link hope it might help u.
    http://www.sapmaterial.com/?gclid=CN322K28t4sCFQ-WbgodSGbK2g      (SAP link- helpful material )
    regards
    ravish
    <b>plz dont forget to reward points if helpful</b>

  • Populating the data into idoc

    Hi
    Could you plz tell me the ways through which we can populate the data into idoc ?? I can think of two ways.
    1. By writing the report program and executing the same
    2. By change pointer concept.
    Are there any ways through which we can populate the data into idocs ??
    thanks
    Kumar

    Hi,
    Others are
    1. Creation through NAST message control
    2. Creation through workflow
    aRs

  • Problem : Idoc to File Senario,overriding the segments in Idoc,on condition

    Hello People,
    Idoc to file senario.
    There are fields in the Idoc which i want to populate, if that particular Idoc is going to XI. Can u tell me how can i check this condition .. ???

    you dnt have control fro r/3 to check if the IDOC is reached to XI then XI creates the file then update few thing...
    make sure the IDOC is reached to XI using the port if IDOC is using some port...but if the file is getting places in server using AL11 you can check that....in your condition you can check if file is exist in the target folder thn update .....insead of checking if IDOC sent to XI--XI creating a file...i doubt you have that flexibility...lets wait for other reply what they have to say?

  • How to look for a particular field in the segments of IDOC ?

    Hi,
    I am looking at a particular IDOC which I will use to do data trasfer from lgacy to R/3 using BAPI in LSMW. Now I know a field which is required to create a given business transaction when igrating data. But there are 100's of segments on the IDOC.
    Is there a way I can see if the given field is present in any of the IDOC segment ? I don't want to dig though each and everys egment and find it out...
    Regards,
    Rajesh

    Try using WE09..There you have the option of searching by the idoc data..CHeck in the bottom of the selection screen
    Thanks,
    Naren
    Message was edited by: Narendran Muthukumaran

  • Populating E1EDP05 segment of idoc type INCOIC01

    Hi guys,
    I have an issue for the AUTO LIV where the inbound idoc has this segment E1EDP05 which now has just one currency type being filled in which is causing an error while processing the idoc saying "<b>The IDOC does not contain all necessary currencies/valuations</b>". When we asked SAP they said us to <b>populate two new currency types in this segment E1EDP05 one for currency type 12 and other for currency type 31.</b>
    Guys can any one help me do this from scratch. I dont know exactly how to populate.
    Guys its a little urgent. <b><REMOVED BY MODERATOR></b>.
    Message was edited by:
            Alvaro Tejada Galindo

    Hi Sanjay,
    Following links will help you
    http://www.informatik.fh-wiesbaden.de/~werntges/lv/edi/specs_EN/SAPdoc/IDoc_d.htm
    http://www.tech-archive.net/Archive/BizTalk/microsoft.public.biztalk.general/2005-02/0144.html
    idoc
    http://www.supinfo-projects.com/fr/2005/idocs_en/4/
    Award points if useful...
    thanks
    Ravee

  • How to generate a new segment in IDoc for multiple occurance of Control Num

    Hi Experts,
    In my scenario, i need to generate a new segment in IDoc(Target Structure) based on  Control Number Field in the Source Structure.
    The segment need to be created for multiple occurance of the Control Number.
    Ex:
    Control Number - 100 appears 5 times in Source Structure.This control Number is mapped to one of the Field in the Segment of  IDoc.
    Now my requirement is to generate the Segment 5 times with respective to this Control Number.
    please help me out to resolve this issue.
    Thanks,
    Kish.

    Hi,
    Here is the XML Structure of my Source:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:GoodsReceipt_MT xmlns:ns0="urn:WOL-com:XI:data:HJ:10">
       <row>
          <CONTROL_NUMBER>111</CONTROL_NUMBER>
          <LINE_NUMBER>1111</LINE_NUMBER>
          <CONTROL_NUMBER_2/>
          <OUTSIDE_ID/>
          <WH_ID>111111</WH_ID>
          <LOCATION_ID/>
          <HU_ID>11111</HU_ID>
          <NUM_ITEMS/>
          <ITEM_NUMBER>111111</ITEM_NUMBER>
          <CONTROL_NUMBER_3>LR</CONTROL_NUMBER_3>
          <LOT_NUMBER>11111</LOT_NUMBER>
          <UOM>11111</UOM>
       </row>
       <row>
          <CONTROL_NUMBER>111</CONTROL_NUMBER>
          <LINE_NUMBER>12222</LINE_NUMBER>
          <CONTROL_NUMBER_2/>
          <OUTSIDE_ID/>
          <WH_ID>12222</WH_ID>
          <LOCATION_ID/>
          <HU_ID>1222</HU_ID>
          <NUM_ITEMS/>
          <ITEM_NUMBER>112222</ITEM_NUMBER>
          <TRAN_QTY>112222</TRAN_QTY>
          <CONTROL_NUMBER_3>LR</CONTROL_NUMBER_3>
          <LOT_NUMBER>12222</LOT_NUMBER>
          <UOM>1122222</UOM>
       </row>
       <row>
          <CONTROL_NUMBER>222</CONTROL_NUMBER>
          <LINE_NUMBER>2222</LINE_NUMBER>
          <CONTROL_NUMBER_2/>
          <OUTSIDE_ID/>
          <WH_ID>22222</WH_ID>
          <LOCATION_ID/>
          <HU_ID>222222</HU_ID>
          <NUM_ITEMS/>
          <ITEM_NUMBER>2222222</ITEM_NUMBER>
          <TRAN_QTY>22222222</TRAN_QTY>
          <LOCATION_ID_2>33333333</LOCATION_ID_2>
          <CONTROL_NUMBER_3>LR</CONTROL_NUMBER_3>
          <LOT_NUMBER>22222</LOT_NUMBER>
          <UOM>22222</UOM>
       </row>
       <row>
          <CONTROL_NUMBER>333</CONTROL_NUMBER>
          <LINE_NUMBER>3333</LINE_NUMBER>
          <CONTROL_NUMBER_2/>
          <OUTSIDE_ID/>
          <WH_ID>33333</WH_ID>
          <LOCATION_ID/>
          <HU_ID>33333</HU_ID>
          <NUM_ITEMS/>
          <ITEM_NUMBER>333333</ITEM_NUMBER>
          <TRAN_QTY>33333333</TRAN_QTY>
          <CONTROL_NUMBER_3>LR</CONTROL_NUMBER_3>
          <LOT_NUMBER>33333</LOT_NUMBER>
          <UOM>333333</UOM>
       </row>
    </ns0:GoodsReceipt_MT>
    Now Control_Number 111 occurs 2 times, 222 & 333 occurs 1 time.
    Now one IDoc for 111,222 & 333 should be generated.
    But Control_number 111 appears 2 times.
    Now the data in the 2 rows should be passed to Single IDoc by repeating the segments inside the IDoc.
    As u said i changed the Occurance of IDoc to 0...unbound and imported as External Definition. I have done upto Generating IDoc for each unique Control_Number.
    I stuck up at repeating the Segments in the IDoc.
    So please help me out.
    Thanks,
    Kish.

  • Populating the custom segments for the Basic type attached to HRMD_A (IDOC)

    Hi,
    I've enhanced a few infotypes and want the new fields to be available in an IDOC created through the program RHALEINI.
    Here are the steps I followed.
    Step 1 :(we31)
    We created new segment Z1IT023 , containing all the fields from infotype 0023 along with the custom fields added.
    Step 2 :(we30)
    We created an extension of IDOC type HRMD_A07 by name HRMD_EX to include this segement.
    Step 3 :
    We added an entry in table EDIMSG against message type HRMD_A , with base type : HRMD_A07 , extension : HRMD_EX , version : 700
    Step4 :(we20)
    Now , we made changes to partner profile by adding entry for message type HRMD_A with base IDOC type as HRMD_A07 and extension as HRMD_EX
    Step5:
    We changed the entry in table T777D and specified the IDOC segment as Z1IT023.
    Step6.
    We then tried to execute the report RHALEINI to generate the IDOC. The IDOC got created, but it didn't have the data for the segment Z1IT023.
    In fact, there is a different solution to this... by adding the custom segment(containing nly the new infotype fields) as a child of the original segment E1P0023 and then writting code in the user-exit to populate the segment, but our intension is to have a single segment with all the infotype 0023 data. Besides, I believe in HR, making an entry in T777D should free us from writing any code for populating the IDOC segments.
    Can anybody please suggest me, where am I going wrong. How can the new segments be populated automatically.
    Thanks in advance.
    Sujit.
    Responses will be suitably rewarded.

    Hi,
    Did u get any exit to populate the custom segment?
    Thanks,
    San

  • Populating a segment in the target idoc based on dif

    Hi
    We have E1MARCM, E1MBEWM and ZE1MARCM (constum segment) in the material IDOC and we map the idoc to similar idoc which has same sement in the target idoc material idoc.
    ZE1MARCM segment is the custom segment and is the subsegment of E1MARCM. while populating the target idoc segment, we are taking the values from E1MBEWM segment and populting in ZE1MARCM, but the problem is as ZE1MARCM doesnt get populated unless E1MARCM gets populated in the source, So, we need to manually populate E1MARCM in the target message with some default valaues incase we dont have E1MARCM coming in the source. Just would like to know what is the effort in the XI side. Is it a good design to implement this in XI or should we change the ABAP in the ERP side to always populate the E1MARCM on the source idoc which is a standard idoc.

    we need to manually populate E1MARCM in the target message with some default valaues incase we dont have E1MARCM coming in the source.
    Use mapWithDefault std function or ifelse function in PI. It solves your issue.
    Is it a good design to implement this in XI or should we change the ABAP in the ERP side to always populate the E1MARCM on the source idoc which is a standard idoc.
    It anyways dont take much effort in doing so in XI. If you can do so in ABAP, even that would be fine.
    Regards,
    Swetha

  • Ship to party not populating in segment in whsord idoc

    HI,
    we are creating two delivery with ship to party as 52004 and 56003 (two different sales orders with differnt sold to ). the deliveries are trigerring outbound whsord idoc. The issue is in the segment E1ADRM1 segment for WE qualifier , in the field, " Partner_id", the ship to party 52004 and 56003 is not populated. Rather a constant value 32500000789 is populated in "partner_id " field in both deliveries
    Our Abaper is not willing to identiy the same since it is s standard idoc.
    Pls can you help as to w hy ship to 52004 and 56003 is missing in partner_id field and some other value 32500000789 is coming ? all other deliveries are created ok.
    rgds
    Pamela

    Hi Pamela,
    can you Please share some more information like IDoc details. so that v can analyze more.
    Regards,
    VSN

  • Has anyone populated the doc_flow details for an ORDERS05 IDOC?

    I am having trouble understanding what needs to be populated in the doc_flow itab of line type CRMXIF_DOC_FLOW_I.
    In my case I am trying to populate the doc flow with CONSIP (customer reference contract) details. I can work out what field 'RELATION_TYPE' is and can see that it needs to have a value of 'VONA'. This one is easy to identify because of the 4 character field definition, but I can't work out what goes in the relobj_roletype, relobj_objkey, relobj_type, or the relobj_object_id fields. Can anyone be of help here. I have been trying a number of different values, for example, I populated the relobj_roletype field with 'BUS2000135' which is the object name for a 'CRM Customer contract', but that was rejected and resulted in a status 51 being set in the IDOC.
    Blue

    Stephen,
    I agree with you, but you try and get a VAN to supply IDOC related details in the complex data structure format. They can do it but they're not at all happy about it and go to great lengths to avoid, whereas the ORDERS05 is a standard that most already output to.
    I can process ORDERS05 type IDOC's okay, although I had to add my own code to process a few segments. Anyway, the orders are being created okay. I did initially have a problem when blocking an item, based on certain checks perfromed in the BADI, but that has now been resolved. My only other problem, which a support message has been raised with SAP about, is to parse back status messages to IDOC. Again, there's a BADI which allows you to add content, but there's a mismatch in parameters between the FM and BADI. I'm sure they'll sort it out.
    The only thing left now is to get the item level doc flow to update when pointing to customer reference contract. Again, it's just a case of reverse engineering the data from the IDOC created by the CRMXIF_ORDER_TEST program.
    Regards
    Dr Sidewalk

  • IDOCS postion is moved in PEXR2001 and the segment is E1IDB02 BB

    Hi Experts:
    I have a question about the idocs, the position FIIBKENN is populated by  Bank Number when my bank master data doesn't have SWIFT, however when my bank master data has SWIFT is populated in FIIBKENN too and the Bank number is populated in FIIBKUKN this means that the position is moved depends of the data in the master data. My question is Can be fixed the positions in this idoc? The Object name is PEXR2001 and the segment is E1IDB02 BB ---0010.
    Best regards

    Dirk,
    It is possible to serialize the Idoc's when sent from your SAP system itself.
    Refer this blog and also the comments section of this blog where Michal provides a few interesting comments,
    <a href="/people/community.user/blog/2006/11/04/how-to-serialize-idoc-xml-messages-fed-into-xi">How to serialize IDoc XML messages fed into XI</a>
    Regards
    Bhavesh

  • The IDOC-SDATA for the segment E1EDP01 does not have the whole value passed

    HI
    I am triggring the ORDERS05 Idoc from TCode - WE19 .
    In the E1EDP01 segment I have populated the quantity field , UOM field , currency field and the plant field.
    I am facing the issue
    1) It is not updating the plant field in R/3 orders that are created .
    2) I debugged the code and found that the data for the currency field and the plant field is not being pulled in the IDOC-SDATA for the segment E1EDP01 .
    Any idea why is this happening
    Thanks
    Nikhil

    HI
    I got the answer for it.
    This has to be delt in the E1EDP02 segment with the qualifier value as 083 and the document value as the plant
    Thanks
    Nikhil

Maybe you are looking for