Extend Idoc INVOIC02 - E1EDKA1 - Syntax error
Hi All,
I have extended Basic idoc INVOIC02 and using exit EXIT_SAPLVEDF_002 to extend custom segment. I am trying to add a custom segment under E1EDKA1. In program I am inserting Z1 segment after parent segment E1EDKA1. I am passing Parent segment reference (INT_EDIDD-PSGNUM) and hierarchy level of custom (INT_EDIDD-HLEVEL) segment. Problem is custom segment still placed under root segment after E1EDKA1 segment, which is incorrect. Idoc error with status 26 Syntax error. Can any one tell me what I am doing wrong or how do I manage to get custom segment under parent segment E1EDKA1, so that I dont get this error. Below code for your reference. Thanks in advance.
Regards,
Tim
Program -
"ZXEDFU02" -
describe table INT_EDIDD lines gv_indes.
read table INT_EDIDD index gv_indes.
if sy-subrc eq 0.
if INT_EDIDD-segnam eq co_e1edka1 and
INT_EDIDD-sdata+0(3) eq 'ZM'.
Now INSERT segment Idoc value and custom extend field
if not gv_email is initial.
INT_EDIDD-PSGNUM = gv_indes.
INT_EDIDD-HLEVEL = '03'.
move: co_z1edka1 to INT_EDIDD-SEGNAM,
'email address' to INT_EDIDD-SDATA.
append INT_EDIDD.
endif.
endif.
endif.
Your logic looks ok. I would remove the code to populate the parent segment number and hierarchy level. SAP will determine those on its own.
As for the result you are seeing, if there is a syntax error on an IDoc, the entire hierarchy will be lost so the fact that the custom segment is showing up at the same level as its parent doesn't mean that is actually causing the syntax error.
Did you add your extension in the partner profile?
Program -
"ZXEDFU02" -
describe table INT_EDIDD lines gv_indes.
read table INT_EDIDD index gv_indes.
if sy-subrc eq 0.
if INT_EDIDD-segnam eq co_e1edka1 and
INT_EDIDD-sdata+0(3) eq 'ZM'.
Now INSERT segment Idoc value and custom extend field
if not gv_email is initial.
INT_EDIDD-PSGNUM = gv_indes.
INT_EDIDD-HLEVEL = '03'.
move: co_z1edka1 to INT_EDIDD-SEGNAM,
'email address' to INT_EDIDD-SDATA.
append INT_EDIDD.
endif.
endif.
endif.
Similar Messages
-
Extended IDOC for transaction VL02N : Error 51
Dear,
I am Working on Extended IDOC for transaction VL02N (Outbound Delivery) and stuck in Inbound with Error 51: Specifications for units and quantities contain errors VBPOK-MEINS TO LIPS-MEINS MT.
Message no. VL282
How to resolve it?
At Outbound Programmed at EXIT_SAPLV56K_002 and at Receiver did WE57, BD51, WE42, WE20 and using listed below programs.
Function Module - IDOC_INPUT_DELVRY - SAP Standard
Function Type - F (Function Module)
Basic Type - DELVRY03 - SAP Standard
IDOC (Enhancement) - ZDELV - Custom
Message Type - ZDELVRY - Custom
Process Code - DELV - SAP Standard
Thanks-
VarunHi varun,
in SAP you have a few keys that not only have a description depending on language but also the key itself varies from language to language. You can see that if you double-click on a unit field like i.e. MARA-MEINS: On domain level it will show a conversion exit. If you try the conversion exit function modules, you will find out that i.e. PC english pieces will be mapped to internal ST wich comes from the german Stück which is the translation of pieces.
Be aware that this special logic may apply for document types, partner types and a few more (?).
So, in IDoc processing this may cause harm. I did not analyze DELVRY03 structure and processing, I don't know any of your data, I haven't seen any line of your code, I don't know what you actually implemented.
So now it is your turn to check what you pass in the unit fields and how this is handled.
Regards
Clemens -
Regarading IDOC status 26 ,syntax error
Hi All,
we have some problem to create IDOC type ORDERS05 for Purchase Order.
*ERROR STATUS 26:*
(SYNTAX ERROR IN IDOC (SEGMENT CANT B IDENTIFIED))
msg number E0078:
The segment E1EDK14 does not occur at the current level of the basic type ORDERS05 (extension ) AND
e1edk14 segment missed.instead of 5 ,it shows only 4.
*ERROR STATUS 26:*
(SYNTAX ERROR IN IDOC (MANDATORY DATA MISSING))
msg E0072:The segment E1EDK01 has the attribute 'Mandatory' in the syntax description of the basic type ORDERS05 (customer enhancement ).
header data was totally different.
it contains street fields,n country ,,like dat,instead of document number
However, the segment is missing in the IDoc. The segment number logged in the status record identifies the item before which the segment is missing.
This happens for order create (ORDERS) and for order change (ORDCHG)
Do you have any idea to solve the problem? I'm using a standard IDOC.hi
Usually posting program contains your logic which exists in process code this process code contain function module nothing but posting program
and also
check whether u r using
1) sap standard program
2) user defined program
3) enhancing sap program using user exits
if it is standard program check all ur ALE settings once again
if ur using user defined check ur program logic and compare it with idoc structure
if ur enhancing sap standard program check partner profiles using correct message & idoc type
check your user exit logic
reward if u find helpful
Thanks&Regards
Nagesh.Paruchuri -
Idoc in status syntax error check
Hi,
Outbound invoice idoc ended in status 7 (error during syntax check). I check the alloted segment numbers in WE30 and the maximum number alloted segment is not exceeded. Any possible reasons why this scenario is happening?
Thanks for the feedback.Hi,
Did you check if the segments in the Data Record are in a hierarchial order (ie) Parent segment followed by the Child segments, the Parent segment should alway be mandatory.
I have faced a similar error of this kind and the reason was because of the ordering of the segments.
Thanks
Krithika -
Regarding EDI: Syntax error in IDoc (segment cannot be identified)
Hi,
My requirement is that I was adding two diffrent field values under two diffrent segments as "E1EDKA1" and "E1EDK02" in outbound invoice IDOCS, INVOIC02 (process code: SD09 - IDOC_OUTPUT_INVOIC).
I am getting the IDOC number through Tcode "VF02". Can any body give me idea how to check that syntax error in debug mode.
Please find the following error details using TCODE "WE02".
*EDI: Syntax error in IDoc (segment cannot be identified)*
*Message no. E0 078*
*Diagnosis*
*The segment E1EDKA1 does not occur at the current level of the basic type INVOIC02 (extension ).*
*This error can have several reasons:*
*The segment E1EDKA1 is assigned to a group whose header segment does not occur.*
*The segment E1EDKA1 does not exist in the syntax description of the basic type INVOIC02 (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.*
Please help me to resolve this problem. <REMOVED BY MODERATOR>
Regards,
Skumar.
Edited by: Alvaro Tejada Galindo on Apr 28, 2008 1:09 PMIt seems that you added segment E1EDKA1 at a place where it is not supposed to be. That's where this error is coming from. The structure of every IDOC is definded by SAP standard and you cannot change the sequence or the level of standard segments. If you require a certain field at a certain level you have to add that field to a Z-segment and then add that Z-segment where appropriate in your extension.
Hope that helps,
Michael -
Hi all,
Im developing a interface for purchase/sales orders. i populated the fields into segments and am running the function module. it is creating an idoc with status 60
EDI: Syntax error in IDoc (segment cannot be identified).
I dont know which segment its not identifying..
mesage type ZXXXXXX
process code used orde
fm idoc_input_orders.
can somebody help me with this in trouble shooting
thanks,
KiranHi Vijay,
this is the structure of edidc when i c it in we19..dont know how to clear this error.
EDIDC 2000000000000404101620 60 2SAPSD1 LSSD1CLNT200
E1EDK01
E1EDK14 0081800
E1EDK14 00710
E1EDK14 00610
E1EDK14 012ZOR
E1EDK14 019OMY
E1EDK03 00220040809
E1EDK03 02200000000
E1EDK03 02300000000
E1EDKA1 AG 0002200253
E1EDKA1 VE 00000096
E1EDK02 001CUSTPONOTEST1
E1EDK02 044J0000000143
4 E1EDKT1 Z004I VBBK
4 E1EDKT1 Z002I VBBK
4 E1EDP01 000001 0000000010 PCE
E1EDL44 1
this is the erro message im getting..
The segment E1EDL44 does not occur at the current level of the basic type ORDERS05 (extension ).
This error can have several reasons:
The segment E1EDL44 is assigned to a group whose header segment does not occur.
The segment E1EDL44 does not exist in the syntax description of the basic type ORDERS05 (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.
Procedure
Please check the IDoc or the syntax description of the basic type ORDERS05 (extension ).
thanks.. -
Hi all,
I have extended the the standard IDOC MATMAS05 classification view with structure as below-
E1MARAM Master material general data (MARA)--->Mandatory segment
Z1KLART KLART --->Extended chaild to E1MARAM
Z1CLASS segment for class --->Extended chaild to Z1KLART
Z1CHARACTERISTIC CHARACTERISTIC --->Extended chaild to Z1KLART
E1MARA1 Additional Fields for E1MARAM
E1MAKTM Master material short texts (MAKT) --->Mandatory segment(Child to
E1MARAM )
I am getting an error in IDOC fro material master as:EDI: Syntax error in IDoc (mandatory segment missing ).
Diagnosys By system is :*The segment E1MAKTM has the attribute 'Mandatory' in the syntax description of the basic type MATMAS05 (customer enhancement ZMATMAS05). However, the segment is missing in the IDoc. The segment number logged in the status record identifies the item before which the segment is missing.
This error may have been triggered by an unidentifiable segment before the expected mandatory segment.*
Please help to resolve the issue.
Thank you.
Edited by: sanu debu on Apr 30, 2009 11:25 AM
Edited by: sanu debu on Apr 30, 2009 11:31 AMHi,
You cannot add an segment in the middle of other segments.
YOu have to add any segment at the last.
If you want to add a segment as the child of another segment, it should be added after the last child of the parent segment.
In you case, you have to add your segment after the E1CUCFG segment.(NOt under that segement)
Regards,
Ravi Kanth Talagana -
Error while Filling custom extended idoc
i have extended segment e1edpa1 with ZLOC segment in INVOIC01 idoc .now i'm filling this extended idoc from exit EXIT_SAPLIEDI_101 but it is giving me error like "EDI: Syntax error in IDoc (mandatory segment missing)" can anyone tell me what could be the reason?below is my code.
WHEN 'E1EDPA1'.
MOVE idoc_data-sdata TO e1edpa1.
IF e1edpa1-parvw = 'WE'.
SELECT SINGLE * FROM kna1 INTO w_kna1 WHERE kunnr = e1edpa1-partn.
IF sy-subrc = 0.
MOVE: w_kna1-locco TO zloc-locco,
w_kna1-bahne TO zloc-bahne.
MOVE 'ZLOC' TO idoc_data-segnam. " administrative section
MOVE zloc TO idoc_data-sdata. " data section
APPEND idoc_data.
thxWhy do you need to add a segment via code in an inbound IDOC? we dont populate segments in inbound processing, rather you shoul dbe getting value from the source system in the IDOC, and reading the custom segment to process the values.
if source is not sending the values , and you need those then you are supposed to read and process the values to move those to corresponding structure for SAP program to process the data. Adding a segment in inbound is not going to get you anything. -
I have created an extension for idoc INVOIC02. I added a segment ZDISC to E1EDK18(qualf 002). In my test system, everything is working fine. But in production, it is giving a syntax error. Following is the error.
EDI: Syntax error in IDoc (segment cannot be identified)
Message no. E0078
Diagnosis
The segment ZDISC does not occur at the current level of the basic type INVOIC02 (extension INVOICEX).
This error can have several reasons:
The segment ZDISC is assigned to a group whose header segment does not occur.
The segment ZDISC does not exist in the syntax description of the basic type INVOIC02 (extension INVOICEX).
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.
Procedure
Please check the IDoc or the syntax description of the basic type INVOIC02 (extension INVOICEX).
Though , the segment E1EDK18 with qualifier is being created in the IDOC but zdisc created at zero level and not attching to the E1EDK18.
Same thing is working fine in the test system.
All the helpful answers will be rewarded.
ThanksHi,
I think you have selected ZDISC as mandatory segment . this is added to optional segment : E1EDK18, if segment E1EDK18 is missing in the idoc , you will get the above error.
remove the mandatory option for the Z segment ZDISC.
Check this link , if you miss something it will give details:
http://www.intelligententerprise.com/channels/applications/feature/archive/kasturi.jhtml
Regards
Appana -
IDOC Syntax Error E0072 with status 26 after upgrade to ECC6.0
Hi
We have upgraded SAP R/3 from 4.6C to ECC6.0. After upgrade, when we create PO and output EDI, we are seeing this IDOC syntax error E0072 for Mandatory Segment E1EDK01. In 4.6C it was working fine with no issues, only after upgrade this problem started. It says E1EDK01 is missing which is mandatory. We are using basic type ORDERS01 with no extensions. When we see WE30 it looks fine, WE20 settings looks fine.
Order of the segments got scrambled in upgraded version. First segment is E1EDP19001, this is supposed to be under E1EDP01 segment. There are two E1EDP19001 segments created but there were no sub segments to E1EDP01.
Any help in this regard is highly appreciated.
Thanks
PandiriUser Exit activation and fixing the issue in user exit fixed this issue.
-
XI Business content for MDM - Syntax error in IDOC adapter
Hi mates,
I'm trying out the Master Data Harmonization scenario for Vendor data with R/3 as the client system. I'm using SAP delivered XI Business content for MDM. The mapping program is generating ADRMAS and CREMAS IDocs but the IDOC adapter reports that there is a syntax error in ADRMAS IDOC. Find below the details.
<i><SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_IDOC_METADATA</SAP:Code>
<SAP:P1>Segment 'E1BPAD1VL', segmentnumber '000001' not correct in structure ADRMAS02</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Error: Segment 'E1BPAD1VL', segmentnumber '000001' not correct in structure ADRMAS02</SAP:Stack>
<SAP:Retry>M</SAP:Retry></i>
Generated ADRMAS IDOC is
<i> <?xml version="1.0" encoding="utf 8" ?>
<ADRMAS02>
<IDOC BEGIN="1">
<EDI_DC40 SEGMENT="1" />
<E1ADRMAS>
<OBJ_TYPE>LFA1</OBJ_TYPE>
<OBJ_ID>0000500140</OBJ_ID>
<CONTEXT>0001</CONTEXT>
<E1BPAD1VL SEGMENT="1">
<FROM_DATE>00010101</FROM_DATE>
<TO_DATE>99991231</TO_DATE>
<NAME>Swift Transportation</NAME>
<COUNTRY>US</COUNTRY>
<COUNTRYISO>US</COUNTRYISO>
<LANGU>E</LANGU>
<LANGU_ISO>EN</LANGU_ISO>
<SORT1>SWIFT TRANSPORTATION</SORT1>
<TIME_ZONE>CST</TIME_ZONE>
<E1BPAD1VL1 SEGMENT="1">
<LANGU_CR>E</LANGU_CR>
<LANGUCRISO>EN</LANGUCRISO>
<ADDR_GROUP>BP</ADDR_GROUP>
</E1BPAD1VL1>
</E1BPAD1VL>
</E1ADRMAS>
</IDOC>
</ADRMAS02></i>
Strangely, the control record is blank. I looked at the XSLT program, it is coded that way. I do not understand the reason. Is the error pointing to the control record?
Look at the code sample from XSLT mapping program
<xsl:for-each select="IDOC/*/E1ADRMAS">
<IDOC BEGIN="1">
<!-- The header data of each single ADRMAS-IDoc needs to be there but does not require specific data -->
<EDI_DC40 SEGMENT="1"/>
<xsl:apply-templates select="."/>
</IDOC>
</xsl:for-each>
How can an IDOC w/o control record be posted?
Did anyone come across this error? Whats wrong/missing?
I appreciate ur inputs.
thx in adv
praveenMoorthy,
I tried reloading the IDOC metadata from IDX2. Still I get the same error.
Regd, IDOC w/o control record, can u elaborate on "dynamic value while posting IDOCs". From where, XI message SOAP header with Business System replaced by corresponding logical system names?
Thanks
Praveen -
Getting Error 26 in ALE IDOC scenario .- EDI Syntax Check Error...
Hi..
i am working in ALE Idoc scenario...I am getting Status 3 as well as status 26 in we02 transaction in my custom IDOC scenario for outbound process..
The error is 'EDI- SYntax Check'..
How to remove this error..
Pls help.ya, there is only one segment available in IDOC..named i.e zseg_a .
So , error in postion is avoided..
How to find syntax error then? -
Syntax error in IDoc (too many repetitions of a segment)
Hi,
I tried to load master data from R/3 into BW system. The load is not ending and the IDoc error message is displaying,
The error message is " EDI: Syntax error in IDoc (too many repetitions of a segment) with status 26" .
I tried to analise the issue and checked in the Idoc List Outbox of BW system. I found Red status message with number 26 stating " Error during Syntax check of IDoc (Outbound) and the message type is RSRQST.
Could any one help me out in solving this problem. Reply to the message if any more information needed.
Thanks in Advance.
Regards
KoushikI'm getting the same error. I think it is because I have a InfoPackage selection routine, that selects more than 1000 select conditions. I guess it is a parameter that needs to be changed somewhere. Any help on this one?
BR
Øyvind -
Extended Syntax Error......
Hi All,
In my Program I have created the following Subroutine -
FORM call_back TABLES record_tab STRUCTURE seahlpres
CHANGING shlp_top TYPE shlp_descr
callcontrol TYPE ddshf4ctrl.
Here seahlpres is a DDIC Structure
Now this is giving an Extended Syntax Error stating that "Using STRUCTURE is Obsolete".
Agreed, but I am unable to use following -
FORM call_back TABLES record_tab TYPE STANDARD TABLE OF seahlpres
CHANGING shlp_top TYPE shlp_descr
callcontrol TYPE ddshf4ctrl.
or
FORM call_back TABLES record_tab TYPE LINE OF seahlpres
CHANGING shlp_top TYPE shlp_descr
callcontrol TYPE ddshf4ctrl.
How to remove this Error, by what way should RECORD_TAB be declared as to remove the Error.
Regards,
Pankaj Agarwal.Hi,
see the below code from tcode ABAPDOCU.
REPORT demo_mod_tech_example_5.
DATA: BEGIN OF line,
col1 TYPE i,
col2 TYPE i,
END OF line.
DATA itab LIKE STANDARD TABLE OF line.
PERFORM fill CHANGING itab.
PERFORM out USING itab.
FORM fill CHANGING f_itab LIKE itab.
DATA f_line LIKE LINE OF f_itab.
DO 3 TIMES.
f_line-col1 = sy-index.
f_line-col2 = sy-index ** 2.
APPEND f_line TO f_itab.
ENDDO.
ENDFORM.
FORM out USING value(f_itab) LIKE itab.
DATA f_line LIKE LINE OF f_itab.
LOOP AT f_itab INTO f_line.
WRITE: / f_line-col1, f_line-col2.
ENDLOOP.
ENDFORM.
For more details check examples in abapdocu.
The ABAP Programming Language >Modularization Techniques >Procedures >Subroutines
Cheers,
Rudhir -
Idoc Error - EDI: Syntax error in IDoc (segment cannot be identified)
Hi All,
have created a new reduced message type for our new vendor A/C group through BD53. Also done reqd config for sending the vendor master through this message type. .
I have created couple of vendors for testing with X01 with withholding tax functionality and when try to send these vendors , Idocs are getting failed .
When I create vendor without withholding tax functionality , idoc is getting posted succesfully . If create vendor with entries in the feild whih are related to withholding tax . Idocs are getting failed .
If I see the status in WE05 ,Idocs which are posted succefully are showing the basic type as CREMAS03 . For idocs which are getting failed have the basic type as CREMAS04 and also the extension as Z1CREMAS . I don`t understand why the system is defaulting CREMA04 & Z1CREMAS when I send the vendor master with withholding tax feild entries.
I am not much familiar with ALE /Idoc set up. Please can any body help me to resolve the issue.
The error message in we05 as below
EDI: Syntax error in IDoc (segment cannot be identified)
Message no. E0078
Diagnosis
The segment Z1LFA1M does not occur at the current level of the basic type CREMAS04 (extension Z1CREMAS).
This error can have several reasons:
The segment Z1LFA1M is assigned to a group whose header segment does not occur.
The segment Z1LFA1M does not exist in the syntax description of the basic type CREMAS04 (extension Z1CREMAS).
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.
Procedure
Please check the IDoc or the syntax description of the basic type CREMAS04 (extension Z1CREMAS).
ThanksHi,
I don`t understand what do you mean release after adding segment.
Message type works i.e. Idoc get posted if I send with the vendor w/o withholding tax field entries. Idoc fails when send vendor with withholding tax field entry.
Regards
Maybe you are looking for
-
G/L account is missing error when try to add AP Credit Memo
Dear All Experts, we are facing problem in adding A/P Credit memo, which is made based upon AP Invoice. Error is :- [A/P Credit Memo - Whse Status] , 'G/L account is missing (1)' [Message 131-46] Can any one know why this problem is coming? Regards
-
I was recently using my netflix online account and to use it i have to switch to xp . The problem i am having is that it appears that my graphics card isnt processing the data correctly. It displays all green and un viewable., The audio is fine, but
-
Report Builder truncating data
I have inherited an application that has uses Java and CFR's (built with CF report builder 7) to create PDF files. On one of the reports is a field that an essay goes into. This essay can be up to 10,800 characters long. That length is being controll
-
How to rip DVD to MP3 Are you looking for a program that can help you extract audios from a concert DVD or a movie DVD, and then save them as MP3? If so, Pavtube DVD Ripper would be a nice choice, since it is able to remove protections from all sorts
-
Consuming a web service from a BSP page
Hello Here is the description of the different instances : ERP is running on an instance without J2EE engine EP is running on an instance with J2EE engine I create a web service definition, VI, and proxy classe on ERP. I tested the web service using