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

Sap Documentation and the Spirit of Open Source


I have noticed that not all of SAP functions have documentation (for example in SAP CRM there are around 80.000 functions and many of them, I dare say most of them, have no documentation and I suppose this is the situation for all SAP solutions).

I spoke to someone from SAP and I was told that not all of them need to, as they are not supposed to be used by clients. I agree with this and moreover it would be a tedious process for SAP to do it now. But sometimes need arises to use this functions or at least know what they do.

And the standard search for Functions .....

One enters "dialog popup" in Short description and he gets nothing (in SAP CRM 3.1 SP06).

She/he has to enter "dialog Popup" and thus gets the function POPUP_TO_CONFIRM

It is LUDICROUS ! Need no say more !

I do have an idea, SAP community could help out.

If all the functions would be shared among the SAP developers from all over the world – I mean those who would like to participate in this project - all functions will have documentation in less than 1 year.

Let's take as example - PHP:

Every function is documented and an example is given.

Also, developers from all over the world add their own comments for each function.

There is a .chm help file very easy to search


There would be one main writer and one main reviewer for a function (I mean one could choose to do 100 functions, other 50, other 30, and so on).

Also, who wants could add his/hers comments.


To have a documentation (.chm file) as comprehensive as possible about all the functions in SAP.

Is this plan feasible ? Are there any volunteers ?


Add comment
10|10000 characters needed characters exceeded

3 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Jul 30, 2004 at 02:07 PM

    I can agree on some points but not others. First, let's agree that dialog popup and popup dialog are two different search strings. In SQL, this would produce "WHERE description like "%dialog popup%" which is clearly not equivalent to "%popup dialog%". However, I feel your pain. While the level of function docs is disappointing, how wonderful that we even have access to them at all! One of the best parts of SAP is the fact that I don't have to guess "how that works". I can go look and learn from the master code ... albeit slowly.

    My understanding of German is non-existent. Therefore, much of the comments that are available in the functions are lost on me. That's a shame. I would like to see an effort to get readable English comments out of these valuable German comments. That' would take a native speaker's translation vs. a babelfish-like systran. They just don't cut it.

    Docs: The level of SAP documentation in general, even for BAPIs, is appalling. Maybe I just don't know where it is but from what I've seen, even the most complex BAPI docs are not worth the space they take up.

    Case in point: BAPI_SALESORDER_CREATEFROMDAT2. This is a rather complex BAPI which can create all manner of sales documents. So let's say I want to build a configured sales order. Let's hit the BAPI documentation:

    <i>If the item is configurable, you need to enter the configuration data in the ORDER_CFGS_REF, ORDER_CFGS_INST, ORDER_CFGS_PART_OF and ORDER_CFGS_VALUE tables.</i>

    That's it. There might be a few more hints down the page but there are no examples, no "here's why you need to stick an A in field XYZ", etc. This is why I rely on reading code and trying to gets hints from poorly translated German comments. I generally get an answer but what a time waster that is! If SAP is claiming that they don't document all functions because they are not "supposed to be used by clients", then how about fully documenting the BAPIs at least? Those certainly ARE for use by clients. That's their main purpose.

    As a concept, I agree with you. How to pull that off? Personally, I wouldn't feel comfortable documenting any function that I've not had 1st hand experience with. Even still, I've only used about 20% of the sales order BAPI's capability. While that's 18% better than what SAP gives, I'm not sure I would be willing to take the time to document it given that I'm stretched to the max, in part, due to the lack of function docs! Catch-22.

    Good luck with the idea. I'd like to see what other people's comments are. I'm hoping that I'm missing some key documentation resources. If nothing else comes from this thread, that would be great.

    Maybe the SDN would provide a place/forum to store documentation that is created? Not a forum ... more like SAP notes (which can be a helpful source of docs sometimes BTW).


    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jul 30, 2004 at 02:59 PM

    Hallo Mihai,

    it could be dangerous to use SAP Functions even if documentation available. See OSS 385830 - Important additional information:


    Goods movements are not completely updated.

    Example: Material documents without accounting documents.

    Additional key words


    Cause and prerequisites

    The SAP-internal function modules MB_CREATE_GOODS_MOVEMENT and MB_POST_GOODS_MOVEMENT are used for the execution of a goods movement in the background.

    The data to be updated (Material document, stocks, valuation, ...) is marked (through call of update modules IN UPDATE TASK or registration via PERFORM ... ON COMMIT).

    If errors occur as of the start of these marks, you must make sure that everything will be reset. Up to now, you could achieve this through sending a termination message (MESSAGE A ...) which normally deletes the marked program parts, releases all locks and finishes the transaction.

    However,if the call of the above modules occurs with addition EXCEPTIONS ERROR_MESSAGE, the system will also catch the termination message. It is expected that the initiator evaluates the termination information that is then situated in the global SY fields and that they react accordingly.

    If this does not happen at all or incorrectly and if a COMMIT WORK is triggered later, the system will execute the program parts that have been marked until the occurrence of the error in the update.

    Firstly, such an error behaviour is caused by customer-specific programs that use modules while disregarding the fact that these modules are not released. Secondly, the error behaviour is caused by SAP programs that have EXCEPTIONS ERROR_MESSAGE in the call path in the case of call hierarchies that are nested several times and they have these at a spot which cannot correctly deal with the termination caused by the goods movement.

    Important additional information

    The above function modules may only be used by original SAP programs. The modules have not been released for the use by customers (see release statuses in Transaction SE37). If this will be done nevertheless, the maintenance responsibility of SAP expires for possible damages. This will also be valid if SAP program parts are copied and are used instead of the originals in the production operation.


    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jul 31, 2004 at 09:35 AM

    Sounds like a good idea. Probably a good candidate for implementation as a Wiki (eg.


    Add comment
    10|10000 characters needed characters exceeded