Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Issue:EDI: Syntax error in IDoc (mandatory segment missing):Idoc extention

Former Member
0 Kudos

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 AM

1 ACCEPTED SOLUTION

former_member181962
Active Contributor
0 Kudos

Hi,

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

4 REPLIES 4

former_member181962
Active Contributor
0 Kudos

Hi,

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

0 Kudos

Can you please explain how this segment can be inserted after E1CUCFG as when i keep curser on E1CUCFG and try to create segment it is added as child to E1CUCFG where as my requirement is to keep it at same hier archylevel as E1CUCFG.

If i try to insert by keeping curser on E1MARAM extendedsegment are getting inserted between other segment.

0 Kudos

Hi,

What I meant was, as the time of run time.

When you populate the data for the segments, you have to fill the data for the segment at the end.

Can you show how you populated the data for the Z Segment in your program or user exit?

Regards,

Ravi

0 Kudos

I populted the data in the same sequence of segments in USER-exit also.I maen to say i poulted as per structure of IDOC segment.The data received correctly at receiving end.Do i still need to populte at the end?And while receiving also i updated the data in the same sequence of segments in IDOC structure.My issue not resolved please help.

Edited by: sanu debu on May 5, 2009 11:55 AM

Edited by: sanu debu on May 5, 2009 11:59 AM