Skip to Content
author's profile photo Former Member
Former Member

How to compare a sent MATMAS IDOC and to be sent MATMAS IDOC?

Hello all;

I create and send my IDOCs from SAP R/3 system to non-SAP system. When I use MATMAS Idoc for material master data, I works fine to send all of the required fields of material master data. However for the field "MARA-LVORM", If I change the material "TO BE DELETED", which means the field "MARA-LVORM" to be "X", Idoc gets created and sent it with the deletion flag.

1- If I have sent the material IDOC without the deletion flag before, my NON-SAP system will delete the material with my new material IDOC which has a deletion flag. (No problem on this, besides it works perfectly but please read 2)

2- While my NON-SAP system doesnt have that material, If i send the same material's IDOC (lets say, I have changed the definition), my NON-SAP system gives an error telling this material doesnt exist and cannot be deleted!!

My business requirement could be to check previous material IDOCs of the related material and look if it has sent with deletion flag or not before. However, I dont know how to check previous IDOCs or any other way to do this.

If you have any other suggestions please kindly let me know.



Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

3 Answers

  • Best Answer
    Posted on Nov 16, 2012 at 03:55 PM

    Any IDOC is stored in a table (until it gets archived - which is after 90 days in my system)

    This table is EDID4

    The content of the IDOC segment is stored with variable feld length in table field SDATA.

    Just use SE16 to display one of your IDOCs, then try to think how you could find your older IDOC based on string search in that SDATA field.

    Isnt the error message from the Non-SAP system the best answer for this situation.?

    you have actually an inconsistent situation, you have not distributed all your material initially,

    But you are distributing changes for all your materials. And you do not know which of your materials was not distributed initially.

    We classify our materials, means they get an class assigned which represents the receiving system. so it does not have a class with a system where it was never distributed to, hence we can know and can control the distribution.

    Add a comment
    10|10000 characters needed characters exceeded

    • your 2 systems are working inconsistent.

      In SAP you set just a deletion indicator, while your external system deletes the material physically.

      Even your systems were initially in sync, they get out of sync after the first distribution of a deletion indicator.

      The easiest solution is just to live with the error message for IDOC inbound posting in your target system.

  • Posted on Nov 17, 2012 at 10:26 AM



    Sanjeet Kumar

    1.png (90.6 kB)
    2.png (265.1 kB)
    3.png (329.7 kB)
    4.png (329.7 kB)
    5.png (70.1 kB)
    6.png (189.0 kB)
    7.png (347.4 kB)
    8.png (336.1 kB)
    9.png (208.2 kB)
    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 17, 2012 at 02:48 AM

    What is the reason behind this business requirement? If the material was not previously sent to non-SAP system, then it gives error message, which is expected behavior. What are you trying to solve by determining it in SAP whether material was not sent or not, which could be determined anyway from the error message in non-SAP system.

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member

      Okay, let me describe the scenario:

      1- I send all material via tcode BD10 (Works like a charm)

      2- All materials are on my NON-SAP system now.

      3-I change one material's description and its deletion flag and run BD21 for changes to be sent. (Works perfectly fine)

      4- The material which got deletion flag is deleted now in my NON-SAP system.

      5-Now in my SAP system, I just change the definition of the same material which i put a deletion flag before and run BD21 for changes to be sent.

      6-Idoc gets created and sent (works fine) However my NON-SAP system gives error, saying there is no material like that. (it gives that error because it got deleted before)

      I hope I was clear now why I need to check old IDOCs.

      If you have any more suggestion please let me know.

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.