Will the BAPI function names change?

Will the BAPI function names change?

I am told by my SAP developers that I shouldn't be using the underlying BAPI function names (e.g BAPI_COMPANYCODE_GETDETAIL). Instead, I should be using some higher-level business object wrapper like companycode.GetDetail (which is how ifr.sap.com seems to list things). They tell me that the underlying BAPI names may change.

    Requires Free Membership to View

    When you register, you will start receiving targeted emails from my award-winning team of editorial writers. Our goal is to keep you informed on the hottest topics and biggest challenges faced by SAP professionals today.

    Hannah Smalltree, Editorial Director

    By submitting your registration information to SearchSAP.com you agree to receive email communications from TechTarget and TechTarget partners. We encourage you to read our Privacy Policy which contains important disclosures about how we collect and use your registration and other information. If you reside outside of the United States, by submitting this registration information you consent to having your personal data transferred to and processed in the United States. Your use of SearchSAP.com is governed by our Terms of Use. You may contact us at webmaster@TechTarget.com.


I can't find anything in the JCo documentation that deals with this. Does this mean that you have to use BAPIs with JCo? Is that bad? How do you map the ifr.sap.com names to BAPI names?
I consider it extremely unlikely that SAP would ever change the name of the function module (RFM) implementing a BAPI. The only case where the argument against hard-coded RFM names would make sense would be that a customer is using the delegation feature of the SAP Business Object Repository (BOR) and has actually overridden a BAPI with his own implementation. I have yet to see a customer who has done that. To be totally on the safe side, you could look up the name of the RFM implementing the BAPI dynamically at runtime. (We sell a metadata server that could be used to do the look-up for you.) In order to use an object-oriented programming approach for the BAPIs in JCo, you could use a proxy generator capable of generating OO proxies (send me an email to get a trial version of our generator).

This was first published in September 2003