cancel
Showing results for 
Search instead for 
Did you mean: 

How to get access to abap-tables?

Former Member
0 Kudos

In this document: https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/documents/a1-8-4/abap versus java.ca

I found following sentence: "You should not even think about accessing the ABAP database directly from the Java stack."

How can i get access to the abap-tables for java?

bapi, jco, jca ?????

confused about the possibilities

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi Ramakrishna,

thanks for your answer, but i still have problems with the sld ->

Former Member
0 Kudos

It is much clearer now. But what should I use: BAPI or RFC?

Somewhere I read that BAPI's in the future will not longer be supported. Where are the advantages of BAPI or RFC? I think when I use BAPI, I first have to develop my own BAPI in the SAP-system.

Former Member
0 Kudos

BAPIs use RFC

Former Member
0 Kudos

true

regards,

valla

Former Member
0 Kudos

Hi Rossi,

in R/3(Three tier Architecture),BAPI in other words function modules,you can write your own function module(coustom one) for this you have to have a sapgui logon pad, either you can use standard BAPI's.

In oder to access BAPI, you have to setup JCO connection in the SLD of you WAS Server,

Now you can all BAPI's through webdynpros with proper client, and Password.

Here is a URL ( webdynpro application clling a BAPI in otherwords connecting to Backend)

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/web dynpro sample applications and tutorials.htm#backend

<b>Backend Access</b>

Adaptive RFC Model, BAPIs

Adaptive RFC Model, transaction handling

Hope this helped you !

Regards,

RK

Former Member
0 Kudos

Hi Alex,

Your confusion in this matter is understandable. If you consider the term <i>Web Application Server</i> where the ABAP and the Jave Engines reside, you will realize that the communication between then is possible <i>only at the application level</i>.

There can be tables created using Java as well, which would all reside in a separate database system altogether, depending on the WAS configuration. Think about what a major mess it would be if both were to have the same database.

Further, there's no need for Java to access the SAP database directly. The JCo is responsible for all communication between ABAP and Java - whether Java needs the data from ABAP (there would have to be an RFC / BAPI)or vice-versa (there would have to be a method that is exposed as a web-service).

Hope that helps.

Regards,

Anand Mandalika.

P.S. Please note that even if the ABAP Engine and Java Engine reside on the same system, the call to the function module is nevertheless considered <i>remote</i> That's the reason you cannot call a non-RFC function Module from Java.

Former Member
0 Kudos

Hi Alex,

You can use the RFC "RFC_READ_TABLE" to extract the data from tables in R/3.

Regards,

Naresh

Former Member
0 Kudos

Hi Alex,

JCO and JCA are java framework that you use to call BAPI or RFC function module (written in ABAP) to access database table of R/3. You would write code in JCO, if you writing java application outside of Portal. You would write code in JCA, if your application is inside portal. JCA inside portal sits on top of JCO.

JCA<->JCO<->BAPI or RFC <-> R/3 tables