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: 

Error In inbound Processing IDoc

Former Member
0 Kudos

Dear All,

I am facing error while inbound processing of IDoc

In status record of IDoc following errors are occuring

Status 60 : EDI: Syntax error in IDoc (mandatory segment missing)

The segment E1MAKTM has the attribute 'Mandatory' in the syntax description of the basic type MATMAS05 (customer enhancement ). However, the segment is missing in the IDoc

Status 51: Application Document not posted

Log details :

Error : Material Number should be filled.

When i checked IDoc all 4 fields in E1MAKTM have the values in inbound IDoc.

Please guide me how to resolve these issues so that IDoc will be posted and Material Master will get created in reciever system.

Thanks

30 REPLIES 30

Former Member
0 Kudos

Hi,

Check the data in the segment is relevent data or not.

Regards

Praveen

0 Kudos

Hi Praveen,

I checked the data in IDoc for this segment.

It is ok as required in basic message type.

e.g. the error says that mandetory segment E1MAKTM is missing.

when i check basic type

MSGFN : Function

internal data type : CHAR

Internal length : 000003 characters

Position in segment : 001, Offset : 0063. external length : 000003

SPRAS : Language Key

internal data type : LANG

Internal length : 000001 characters

Position in segment : 002, Offset : 0066. external length : 000001

MAKTX : Material Description (Short Text)

internal data type : CHAR

Internal length : 000040 characters

Position in segment : 003, Offset : 0067. external length : 000040

SPRAS_ISO : Language according to ISO 639

internal data type : CHAR

Internal length : 000002 characters

Position in segment : 004, Offset : 0107. external length : 000002

is information.

and data in segment of IDoc is

MSGFN 005

SPRAS E

MAKTX MANATA2000 TEST ALE

SPRAS_ISO EN

which i think is ok.

I have no clue why this syntax error is coming.

Thanks

Niketan

JL23
Active Contributor
0 Kudos

are you talking about 2 different idocs, right?

the first has no description, and the second has no material number.

if an idoc has status 60 syntax error, then it cannot be posted, so it never can get status 51.

how is this IDOC created?

Former Member
0 Kudos

Hi,

This is same IDoc.

as After status 60

there is one more status 61 which says processing despite syntax error

and after that there is status 64

and lastly 51 saying Application document not processed.

please see my earlieir post for situation about status 60

thanks in advance

Former Member
0 Kudos

Is MATNR filled up in segment E1MARAM? What is the message number and description of the error? Is there any segment showing up in 'Red' color when you see the IDOC?

Former Member
0 Kudos

Hi,

Is MATNR filled up in segment E1MARAM?

--> Yes it is filled up. (just one more this in reciever system no external # is allowed)

What is the message number and description of the error?

--> At status 60 (Syntax error) ---> Message no. E0072 description: EDI: Syntax error in IDoc (mandatory segment missing)

Is there any segment showing up in 'Red' color when you see the IDOC

--> No When I see IDoc i dont see any red color element.

thanks in advance

Former Member
0 Kudos

hi niket

Have u assinged message type to idoc type??

0 Kudos

Hi Arpan,

yes correct message type (referring to right release of SAP) is assigned to IDoc type

thanks in advance

Former Member
0 Kudos

Hi Niketan,

Please make sure while you are receiving the idoc( at the inbound side) the min occurence of the mandatory segment should be 1.

Regards,

Vinod

0 Kudos

Hi Vinod,

how / where do i check the minimum occurance of mandatory segment?

thanks in advance

0 Kudos

Check in WE02 transaction in the receiver system. Check Data records for the elligible idocs, whether the idoc contains contains the mandatory segment with the value in the rec. system.

0 Kudos

Hello,

As per your post I understand you have required segments but you have status 60, after the idoc is process even after systax error. so there is some other error It seems the error message is not passed back to IDoc. Please try to proces the Idocs in foreground mode using WE19 transaction then you will get MM01 screen where you will be able to see the error. if you are not able to find the error please let us know the list of segment in you Idoc and the sequence of them.

Regards

Naresh

0 Kudos

Hi,

Your question I have already answered to praveen in my earlier post.

Thanks in advance

0 Kudos

Hi Naresh,

I ran WE19 in foreground but i didnt get any screen.

following are the segments in sequence in my IDoc

E1MARAM

Z1Z_MAT_EXT_AND_SIZES

E1MARA1

E1MAKTM

E1MARMM

Thanks in advance

0 Kudos

Hello Maral,

In your message you said the error message is "Error : Material Number should be filled." and also you confirmed the material number is fille in the Idocs but there is another statement you (just one more this in reciever system no external # is allowed) I don;t understand what is this..

More over t seems you are using extenstion type, can you please check in which user exit you have written the logic. probably you are not filling all required eport parameters in the user exit.

Please check and correct the user-exit where you hare writen the logic and let me know the exit name and logic you have written there..

Naresh

JL23
Active Contributor
0 Kudos

if the message says that a mandatory segment is missing, but this segment is there, then it is probably at the wrong place in the structure.

0 Kudos

Did you checked the issue?

0 Kudos

Hi Jurgen And Naresh,

I suggested by you i checked the IDoc segment sequence

In basic message type sequence is as below

MATMAS05

E1MARAM

E1MARA1

E1MAKTM

E1MARCM

E1MARMM

E1MBEWM

E1MLGNM

E1MVKEM

E1MLANM

E1MTXHM

E1CUCFG

E1UPSLINK

of which E1MARAM and E1MAKTM are mandatory.

but there some enhancement which is adding one more z segment between E1MARA1 & E1MAKTM in IDoc data.

Is it the source of error as recieving system might not be able to understand this zsegment and mistaking data of zsegment as data of E1MAKTM?

IF yes how to correct above issue?

Regards,

0 Kudos

Hello Maral,

First you have to check whether there is proper assigmnet in for your message type and extention tpye in WE82, WE87. The reason why you are getting error message is probably due to extenions assigment is missing in receiver system.

2nd is if extension type is coming Control record of the Idoc.

3rd... if both are fine then please check as I mentioned in m prevous thread.

Regards

Naresh

0 Kudos

Hi Naresh,

Yes the the Z segment is in an extension to a message type.

in WE82 i see below entries

MATMAS MATMAS01 30A

MATMAS MATMAS02 30D

MATMAS MATMAS03 40A

MATMAS MATMAS04 46B

MATMAS MATMAS05 470

MATMAS MATMASDI 46C

MATMAS MATMASDI ZMATMASDI 46C

of which extension ZMAMASDI contains z segment which i mentioned in IDoc.

but by default in incoming and outgoing IDoc basic type MATMAS05 is getting selected.

How do i proceed in above scenario?

Thanks a lot in advance Naresh.

Regards,

0 Kudos

Hello Maral,

1. In WE30 can you please provide the sequnece of segments in extension.

2. it seems you are not analysing the issue as I mentioned in my previous post.

Please let me know the feedback for both quesions.

Regards

Naresh

0 Kudos

Hi Naresh,

1. In WE30 below is tree strucuture for extension

ZMATMASDI

E1MARAM

Z1Z_MAT_EXT_AND_SIZE

E1MARA1

E1MARADI

E1MAKTM

E1MARCM

E1MARMM

E1MBEWM

E1MLGNM

E1MVKEM

E1MLANM

E1MTXHM

2. message type and extension type assignment is as below

MATMAS MATMAS01 30A

MATMAS MATMAS02 30D

MATMAS MATMAS03 40A

MATMAS MATMAS04 46B

MATMAS MATMAS05 470

MATMAS MATMASDI 46C

MATMAS MATMASDI ZMATMASDI 46C

in WE87 there is no assignment. Page is coming blank.

3. Extension type is not coming in control record of IDoc. (Control record of IDoc carries message type MATMAS05)

4. I am unable to see the user exit. Where can I check the same? Please guide.

Thanks in advance

0 Kudos

Hello,

1. The reason why you are getting the error message is the idoc contains custom segment but the control record doesn;t contain the extention type so please make sure the control record should have correct infromation and also makes the you have correct logic to process the idoc.

2. if the extension segment is not releavant then please infrom the sender not to send the unwanted segments in Idoc,

Regards

Naresh

0 Kudos

Hi Naresh,

You are correct. We updated Partner Profile settings in sender system, now message type is assigned to extension and syntax error is no more. thanks a lot.

Now we are left with posting error 51. We are trying to debug standard Function module IDOC_INPUT_MATMAS01 to find out why this error is coming

Please suggest.

Thanks and regards,

Niketan

0 Kudos

Hi,

The Material Number Error may be due to following. The MATNR field is 18 Char Length. Incase if you are entering the Material Number only 10Char.. Please add zero's before that and try processing it again.

In Txn. WE02... open the error idoc and then double click on the error segment it will open a screen...from menu change view and change the material number field add the leading zeros and save and process it again.

Regards

GK.

0 Kudos

Hi Gnana,

in WE02 i opened the IDoc with 51 status.

But it is saying "No data records flagged as containing errors are available"

Thanks and regards

Former Member
0 Kudos

Thanks assigned correct extension

Former Member
0 Kudos

Hi,

we can check status 60

Former Member
0 Kudos

Hi,

we can check status 51

0 Kudos

In your message you said the error message is "Error : Material Number should be filled." and also you confirmed the material number is fille in the Idocs but there is another statement you (just one more this in reciever system no external # is allowed) I don;t understand what is this..

More over t seems you are using extenstion type, can you please check in which user exit you have written the logic. probably you are not filling all required eport parameters in the user exit.

Please check and correct the user-exit where you hare writen the logic and let me know the exit name and logic you have written there..