IDOC - Data record
Would some one explain me in what situation we will be having more than one Data Records in an IDOC? I am looking for a specific example if possible.
Also, when we send PO to our Suppliers, if there are more than One PO for that supplier, whether I can send all of them in one IDOC?
Please help me.
Hi Mohan,
There can be more then one DATA record if you send multiple line items or multiple objects.
For example if you send multiple delivery items or sales order items then few data segments will be multiple.
It basically depends on what you are sending.
The control records will always be 1. WHich indicates who is the sender, the reciever, the idoc number and control related information.
Data records will be one or more then one depending on what you are sending if you r sending multiple PO's for a single vendor or if u r sending multiple Deliveries for one acknowledgemtn then you will have multiple data records.
There will also be more then one Status records. The IDOC passes through different stages or different milestone and each milestone will have a specific status indicator. So the status records can be more then one.
Hope this helps
Cheers
VJ
Similar Messages
-
SM58 - IDoc adapter inbound: IDoc data record table contains no entries
Trying to send Idocs from SAP ECC6.0 via PI 7.0 up until 2 days ago there was no problem.
Since yesterday, only one specific type of Idoc does not make it into XI (PI). In the Idoc monitor (WE02) the idocs that were created gives status 3 which is good. But all Idocs of that specific type (ZRESCR01) does not go to XI. I can only find them bakc in SM58 where it gives the following message:
IDoc adapter inbound: IDoc data record table contains no entries
I have checked SAP notes 1157385 and also 940313, none of them gives me any more insight into this error. I have also checked all the configuration in WE20, SM59, and in XI (repository and directory) and in XI IDX1, IDX2 but could not find anything that would cause this. I can also not think of anything that changed since 2 days ago.
Please point me in the right direction.hi,
i think in sm 58 u can find entries only when there is some failure in login credential .
if there is change in IDoc structure than you have to reimport the idoc metadata defination at IDX2.otherwise not requird.
please check the logical system name pointing to the your requird target system....
please also verify thet your port should not be blocked.
pls find the link it may help
Monitoring the IDOC Adapter in XI/PI using IDX5
regards,
navneet -
Cannot display archived idoc data records in SARA
Hello,
In our ERP system, we regularly archive idocs older than 6 months. To view these archived idocs I use transaction SARA (with archive object IDOC and infostructure SAP_IDOC_001) to search for the relevant idoc that has been archived. Once the idoc is displayed, I drill down further by clicking the magnify glass button which then displays the idoc levels:
EDIDC Control record (IDoc)
EDIDD Data record (IDoc)
EDIDS Status Record (IDoc)
SRL_ARLNK SREL: Archive Structure for Links
When I try to view the Data Records, I get a message saying "You are not authorized to display table EDIDD". According to our Authorizations department, this is not an Auth issue but rather config setup or program issue.
Why can't I view the archived idoc data records? Is there another way to view archived idoc data?
Regards,
FawaazHi Jurgen,
Thanks for moving my post to the correct space.
Our Auth team is very confident that this is not a user auth issue. This could possibly be true because the idoc data resides on the following tables when in the database (before archive) - EDIDC, EDID4 & EDIDS. The idoc could then be viewed via transaction WE02 or the Data Browser (SE16). There is no EDIDD table in our ERP system so obviously no authorization object to assign to.
Once the idoc is archived, the data is removed from the ERP tables and moved to our archive database/server for storage. So when trying to view the archived record, the system does not access the ERP tables but rather the archive directory (that it's mapped to in settings). I assume the SARA transaction merely displays the data in the same segments/grouping with these table names (mentioned above in my first post) but instead of EDID4 it displays EDIDD.
According to the error longtext, "The check performed when data is read from the archive is the same as that of the Data Browser (transaction SE16)". So I was not involved with setting up our archiving procedure but could it be that table EDID4 was incorrectly mapped to table EDIDD in archives?
Regards,
Fawaaz -
Hi,
When you import an Idoc (any Idoc - in my case it is SOPGEN01) in Repository, data record fields of idoc are not imported. You can see these fields in WE60 by checking the "Data rec" checkbox. The fields i need are SEGNUM, PSGNUM, HLEVEL.
<b> Do not confuse the above fields with the EDI_DC40 fields. I do not need EDI_DC40.</b>
I searched SAP notes but could not find anything. Is this a limitation of XI, then its pretty bad.
This same question was asked in May but no concrete answer was given.
data record fields of idoc not found in XIInstead of going the hard way RFC loopups and mappings - i am thinking of a workaround for this limitation of XI.
You know the number of child segments. In my case it is always 2. And i always need segment number of the parent segment(in this case E1LIPM0)
-E1LIPM0 segnum 1
---E1LIPV0 segnum 2
---E1LIPP0 segnum 3
-E1LIPM0 segnum 4 and so on
So I will use a counter variable starting with 1 and increment it by 3 for each top parent level segemnt E1LIPM0, so i get numbers like 1, 4, 7, 10, etc. which is what i want.
Points awarded to Sushil -
I have the IDOC Number with me. How to fetch the Data Records from that ?
If you want to read the idoc records in your program:
use the folloing fms:
Sample code:
CALL FUNCTION 'EDI_DOCUMENT_OPEN_FOR_READ'
EXPORTING
document_number = p_docnum
IMPORTING
idoc_control = f_idoc_control
EXCEPTIONS
OTHERS = 01.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
RAISING error_opening_idoc.
ENDIF.
* Read IDOC data segments
CALL FUNCTION 'EDI_SEGMENTS_GET_ALL'
EXPORTING
document_number = p_docnum
TABLES
idoc_containers = t_idoc_data
EXCEPTIONS
OTHERS = 01.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
RAISING error_reading_idoc.
ENDIF.
* Close IDOC
CALL FUNCTION 'EDI_DOCUMENT_CLOSE_READ'
EXPORTING
document_number = p_docnum
IMPORTING
idoc_control = f_idoc_control
EXCEPTIONS
OTHERS = 01.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
RAISING error_closing_idoc.
ENDIF. -
IDOC Data record is appending with NULL characters instead of spaces.
Hi Gurus,
1) We have created a port with Japanese characters for MATMAS05 (IDOC type) and trying to download an IDOC into an XML file using the ADAPTER, the actual data is less than the length of the IDOC string so we need to append the remaining spaces to each data record which in turn fills the segment pad but whereas in NON-UNICODE server the data record is appending with NULL characters instead of spaces.
2) For Japanese port the receiver port name in XML file is appearing with some junk characters in NON-UNICODE client, whereas in UNICODE client it is displaying the correct port name with Japanese characters.
Your help will be appreciated.
Thanks in Advance.ORA-06512 indicates a numeric or value-error line 2 seems to show to the first statement.
Check the datatypes of your columns/items.
Try to issue an update manually in SQL*Plus to see if it works generally. -
Idoc data record updating which tables ???
Hi,
I want to check Idoc posted in SAP , is updating which database tables ?
Could any one please help me ?
Idoc Basic type : RESAPS_SAVEMULTIPLE03
Message type : RESAPS_SAVEMULTIPLE
Thanks.Hello,
If it is an inbound Idoc read on
For me the correct place to check which DB tables are being updated by the I/B idoc is the processing func. module which is associated with the process code.
Check in SDN for details on Process Codes & Processing func. modules.
BR,
Suhas -
Some question on IDOC (Control Record/Data Record/Status Record)
Dear all,
I am new in this area, and would like to enquire some question on this topic.
When I view a IDOC via WE02, each of the IDOC record will consist of Control Record/Data Record/Status Record).
Questions:
I notice that the data records consists of many segment (i.e. E1EDK01, etc) which are use to store application data.
1 - My question is do I have to manually create all these segment and do a mapping to my application field one by one (i.e. that is when I want to create a brand new message type from scratch)?
2 - If question no. 1 is Yes, how to do it, what are the transaction code to create it? can you show me the step by step.
3 - I don't have to create the Control record and the status record for my new message type right ? because those field value will automatically pull out from partner profile and system status message, am I correct?
Thanks.
TuffHi Tuff,
As everything in SAP, with IDOCs too there are
1) Standard IDOCs
2) Standard IDOCs(Extending - Enhancement to an IDOC, to accomodate for custom values)
3) Custom IDOCs
And every IDOC has,
Control record - EDIDC Structure - This mostly reflects the partner profile information, along with few more details which are used for IDOC extension, Sequencing etc
Data Records - EDID4 Structure - These records contain the actual business data of the document in concern. So for ORDERS05 it would contain order details, INVOIC02 - Invoice details so on...
Status Records - These records capture the status of an IDOC from the time it is received/sent from your system and a corresponding business document is created/changed. So this will have messages like "IDOC sent to the port OK" etc which are status from the communication layer(ALE) to application specific messages like "Sales Order XXX created" or "Invalid Material" etc.
You would have noticed something called as Process code in the partner profile, this is associated with a FM(or work flow task etc) which has the business logic coded in.
So in case of an Inbound IDOC, the sending system updates the IDOC - Control and Data records, and sends it to the receiving system. On the receiving system the IDOC's control record is validated against the partner profiles set, if an entry is found then using the process code it finds the associated FM which will decode the data from the IDOC data records as per the IDOC type and then use it to post data into SAP (VIA BDC, Batch Input, BAPI etc).
And all this while the Status records are being updated accordingly.
So with the above context will try to answer your questions,
1 - My question is do I have to manually create all these segment and do a mapping to my application field one by one (i.e. that is when I want to create a brand new message type from scratch)?
In case of a custom IDOC, yes you will have to.
In case of a standard IDOC, you wouldn't have you just have set up the necessary configuration (Partner Profile, Process code etc)
In case of a standard IDOC extended to accommodate for some custom values(for which there are no fields in standard IDOC - Let us say you have added some new fields on VA01) - In this case you can still use the standard Process code and Standard FM associated with it, SAP provides several Function exits in these FM's which you can leverage to add your custom logic.
2 - If question no. 1 is Yes, how to do it, what are the transaction code to create it? can you show me the step by step.
There are several documents available on the net and on SDN detailing step by step approach for all the above three cases,
just search for step by step guide for IDOCS - sap.
3 - I don't have to create the Control record and the status record for my new message type right ? because those field value will automatically pull out from partner profile and system status message, am I correct?
Again it depends, in case of using a standard IDOC you wouldn't have to. But in case you have some customizations/enhancements then you might have to.
For Ex: updating the control record accordingly for indicating that you have extended the standard IDOC. Or append custom messages to the status record as per the business logic.
Try out the examples you find on the net and post any specific questions you might have.
Regards,
Chen -
Data records in an IDoc getting erased, when conversion rules are defined
Hello ,
We are sending IDocs of message type GLMAST & COELEM from a system(version 4.7) to another system (version 4.6B).
The segment data in the IDocs are changed using the user exit enhancement KKCD0001. The function exits used are EXIT_SAPFKCIM_001 and EXIT_SAPFKCIM_002.
If there is no conversion rule defined in the receiver system, for the segments, the IDocs are posted correctly in the receiving system. But if we define conversion rules , then the data records for all the segments for which conversion rule is defined are getting erased, and an error occurs during processing of IDocs
Please let me know what can be the the reason behind this issue..And how to solve this..
Thanks in advance,
AfsarIssue solved
-
Error: IDoc XML data record
Hi all,
We have file->XI->idoc scenario and the problem we are facing is like, when the idoc structure is prepared using XSLT mapping, when the idoc is ready to get in thru the idoc adapter we are getting the following error.
<i><b>Error: IDoc XML data record: In segment
Z1UKGAS_HEADR attribute occurred instead of SEGMENT </b></i>
Anyone faced the same issue....if so pls do throw some light into this issue....
We r in XI 3.0 SP13...
Thanks & regards,
JayakrishnanHi,
In an IDOC structure segment attribute is requried. From the error you posted, it looks like seqment attribute is missing.
<Z>
<IDOC BEGIN="">
<ED SEGMENT="">
</ED>
</IDOC>
</Z>
Naveen -
Error : IDoc XML data record: In segment attribute occurred instead of SEGM
hi friends
i am doing the file to idoc scenario. in message mapping i had done the static test. but what ever the fields i mapped in the idoc it was not populated in the idoc. and i am getting the error as
error :IDoc XML data record: In segment attribute occurred instead of SEGMENT
can any one solve the problem please
thanks in advance
VasuHi Vasudeva,
Pls do check the nodes which you have mapped to. Also make sure that your SEGMENT field in the target structure is mapped properly.
Cheers
JK -
Error : idoc xml data record : in segment attribute instead of SEGMENT
hi all
i am doing the file to idoc scenario. in that i am getting the error
error : IDOC XML Data record : In segment attribute instead of SEGMENT
i am doing this scenario since 4 days.
can anyone help me
thanks a lot
Vasuin ref. to my post in your earlier thread.
>>>>
in your mapping check, in your IDOC if Begin , segment etc are mapped to a constant say '1'.
Also ref: In segment IDOC attribute I occurred instead of SEGMENT -
IDOC:Master Data Records are not going to be updated after posting the IDOC
I need to create employee Master data records in R/3 .I am using the IDOC HRMD_A07, though the IDOC posting is successful no tables, corresponding to employee master Data are getting updated,
Can anybody plz Let me know the possible reasons and solutions for this?
Thanks in Advance,
Sandhyahi i hecked the job log entries in SM37 in source system, the idocs were returned with '0' records. i took the Idoc number and checked in BD87 it displays some logs in that one node shows the red status with the detail as follow IDoc entries in tRFC queue 3383
the next one is green Data passed to port OK 1
i selected the red staus node and clicked 'process' button but it displays as
The operation cannot be carried out with this node type
wht should i do now, wht may be the reason for the datasource not pulling the data from R/3 to BI? -
Adding an existing segment in data record of IDOC
Hi All,
I am using basic type ORDERS04 to send IDOC out of SAP system.
Currently its not sending the segment E1EDP04 in the data record.
What should be done to get this segment in the data record of IDOC?
Also, can any one tell me the significance of VIEW when i double click on Message type of a particular partner in WE19.
Thanks,
YogeetaWhat is the message type?
E1EDP04 IDoc: Document Item Taxes
First you need to find out why required segment is not being generated, is there any data missing in document due to which the segment is missing?
If that (missing segment) is sap-standard funtionality and you would like to include the segment in IDoc then you need to implement the user-exit. And to find the correct user-exit you need Message Type. -
E1EDKT1 Data Record of an IDoc.
We are working on an Outbound Inovice IDOC of Basic Type INOVICE02 and Mesg type INVOIC.
In data record E1EDKT1 which has got E1EDKT2 Segment is mapped some unknown field whre email ID was coming. We need to change the value of this emil ID.
We dont have any mapping doc in place.
Is there any area where we can see which field this segmetn has been mapped to
Regards.Hello Amit,
I checkd in WE30.I think release version is different from EDI version because for a vendor in the system the release is 46C whereas EDI version is V11.
Thanks,
Rakesh.
Maybe you are looking for
-
Where the history of Transaction Codes does get stored?
Today when I was working on one issue in one SAP system on my PC and later on another system observed that the transaction codes (tcodes) which are there in history were the same for both the systems. Then I started searching for the table or a locat
-
Best way to deal with a lot of text in a presentation
I'm creating a 2-3 minute medical presentation in FCP and Motion that contains a lot of bullet text. I'm using FCP 6 and Motion 3. Is it best to create several individual Motion projects and import them into FCP or should I have I have a single 3 min
-
File splitting based on 3 parameterrs
Hello experts, my requirement: i have to split a file based on country, then number of records, and finally based on whether records or historical or inventory. I have done till splitting using country and number of records, ie, if the user specifies
-
Cd Database Not working in Windows
Hi All, I am trying to fix my uncle's computer. He is running iTunes on a PC. When he inserts a CD it can not connect to the CDDB and get the track names. I have turned off any firewall, and restarted the computer and tried just about everything. Any
-
Import Pictures to the Contacts
How can I import also the pictures from the Microsoft Outlook 2003 Contact profile to the iPod Contact? I see all details and informations from the Outlook profile, but not the picture. who can help me? I have an Video iPod