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

Call ABAP Program from outside SAP

Hi all,

How can I call an ABAP program from outside SAP, for example from a C++ executable, a .NET assembly or a JAVA package ? Are their "adapters" provided by SAP for this ?

Angela

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

4 Answers

  • Best Answer
    author's profile photo Former Member
    Former Member
    Posted on Jun 05, 2008 at 07:29 AM

    Hi Angela

    You can use RFC to do so. SAP provides a rfcsdk with containing a library and various examples. Check this sap note for a start: 27517 - Installing RFCSDK

    Also have a look at the related notes there.

    Regards

    Michael

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Hi,

      I don't have OSS or anything of the sort, I'm trying to learn NetWeaver and SAP development using "SAP NetWeaver 70 - Java and ABAP VMware Trial".

      Is there any way to get information of using RFC to call ABAP programs besides these notes ?

      Is there any other way to do what I can to do? For example, what if I develop an EJB inside NetWeaver, will I be able to access this from any J2EE client ?

      Angela

  • Posted on Jun 06, 2008 at 09:24 AM

    Hi Angela,

    as Olivier has already stated: RFC SDK is only available for SAP customers, and it is not part of the trial version.

    Rgds, Boris

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Jun 05, 2008 at 10:37 AM

    Hi Angela,

    as mho already stated:

    For external connections to ABAP, the sap-proprietary "remote function call (RFC)" is a common way.

    SAP delivers an RFC-library for this, and for some development environments SAP even offers a connector on top of this library to make connectivity more easy (SAP Java Connector, SAP Business Connector, SAP Connector for Microsoft .Net). An RFC is always starting function modules in ABAP, not ABAP programs, and these function modules need the attribute "remote-enabled".

    (Remark: in the context of SAP NetWeaver Process Integration, SAP offers adapters for connectivity, also for ABAP systems.)

    For ABAP systems on basis code line 6.20 and above, the remote-enabled function modules can externally be used as web services.

    Information on RFC can be found in the SAP Help Portal http://www.help.sap.com, e.g. [RFC Call - Example Program|http://help.sap.com/saphelp_nw04/helpdata/en/3d/733760ccb411d2b4550060941936e3/frameset.htm]. A search in SDN provides links to the Help Portal as well.

    >

    > For example, what if I develop an EJB inside NetWeaver, will I be able to access this from any J2EE client ?

    This part is beyond the ABAP question, and my guess is pretty simple: like on any other J2EE server.

    Regards, Boris

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Hi,

      >Sorry, but is "SAP RFC SDK" supposed to be avalable for non SAP customers ?

      I would be very surprised if it would be the case...

      I guess you could become a SAP customer by buying the SAP RFC SDK license.

      Regards,

      Olivier

  • Posted on Jun 11, 2008 at 12:09 PM

    Hi angela,

    I am not sure whether this EJB solution will work at all - but surely this is much more complicated than necessary.

    Here's an easier solution:

    1.) wrap your report into a function module which is rfc-enabled (you cannot call reports directly from outside)

    2.) use the SOAP wrapper (look at service "/bc/soap/rfc" in SICF) to call that function module via HTTP - no need to download and install anything, except maybe a SOAP library for your favourite language. Example is herehttp://help.sap.com/saphelp_47x200/helpdata/en/2d/64d041e74911d6b2e400508b6b8a93/frameset.htm">here>.

    You only need the RFCSDK (which is available for customers only) if you want GUI functionality, e.g. show popups and similar. But then, EJB won't be a solution either as that would be running on the server, not on the client.

    Add a comment
    10|10000 characters needed characters exceeded

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.