cancel
Showing results for 
Search instead for 
Did you mean: 

Missing segment in invoice idoc

Former Member
0 Kudos

Problem: A segment in IDOC is missing. This contains the internal record text of a pricing condition type... when i look at the condition type, no changes were made to it since it's creation and it is automatically determined in the pricing condition in sales order. The condition record text is optional but the business now wants to see this text.

Question:

1. I want to know the reason why this segment is missing?

2. Does the condition type has something to do with it?

3. How can I make this segment appear in the IDOC?

thanks and i look forward to your replies...

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

I overlooked your question. Since you are talking about invoice idoc, you must be using <b>Message type = INVOIC, IDOC = INVOIC02 and Process code = SD09</b>.

The FM is IDOC_OUTPUT_INVOIC. The idoc has segment for condition at header level ( E1EDK05) and item level ( E1EDP05). The header condition segment is filled in routine PERFORM fill_e1edk05 while the line item condition segment is filled in PERFORM fill_e1edp05.

You can use enhancement <b>LVEDF001</b> (User exit for IDOC_OUTPUT_INVOICE) and user-exit in this enhancement is <b>EXIT_SAPLVEDF_002</b>. This usr-exit triggers for each segment.

Let me know if you need any other information.

Regards,

RS

Former Member
0 Kudos

Hi RS,

I followed your instruction, I put a break-point to where segment E1EDKT1 is being populated and tried to debug the code but it didn't stop in the break-point...

we encounter this problem in production sytem but in testing it is working fine... i'm debugging it in test system... is that the reason why it is not stopping at the break-point?

what else do I need to check?

Thanks in advance RS...

Former Member
0 Kudos

Hi,

1. Check the FM module related to this IDOC. See where this segment is being populated. Put a break-point there and debug the code where it is failing to add this segment.

2. Once you debug the code, you would come to know that if condition type has something to do with this or not.

3. If you want this segment to populate on IDOC then find out the user-exit in IDOC processing ( most probably in FM ) and add this segment.

If you tell me which IDOC/message type/process code you are using, i can tell you the user-exit and i might be able to answer too why the segment is not getting populated. Also let me know which segment you are talking about

Let me know if you need any other information.

Regards,

RS

Former Member
0 Kudos

I just want to add this one too....

because you said that you might be able to answer too why the segment is not getting populated...

if i'm not mistaken this idoc segment is for item level because this contains internal record text...

Hope you can helps me with this... thanks

Former Member
0 Kudos

Pablito, in order to be able to stop in debug when your output is being processed you have to enable update debugging since outputs with timing '4' are processed in update task.

So, just switch into debug before clicking save in your invoice, then enable update debugging (settings tab) and click continue, in this case your breakpoint will work.

E1EDKT1 - headet texts, E1EDPT1 - item texts... but I think these are used to pass texts from header or item of the invoice... not condiiton info.

I believe pricing condiitons are sent in E1EDK05 or E1EDP05 segments.

Former Member
0 Kudos

Hi,

Thanks for the help...

Can you please explain what is the difference between APPEND and INSERT?

APPEND int_edidd.

INSERT int_edidd INDEX l_lines.

Thanks in advance...