Retrieving table contents with JSP
Using the examples of JCo and RFC functions found on this site I am trying to create a small JSP page that will retrieve the contents of some tables for me. I am very new to SAP but not to Java.

    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.


My code is the following:

// Get a function template from the
//repository
IFunctionTemplate ftemplate = repository.getFunctionTemplate("RFC_READ_TABLE");

// Create a function from the template
JCO.Function function = new JCO.Function(ftemplate);
   
JCO.ParameterList tables = function.getTableParameterList(); 

out.println(tables);
If I understand correctly the output should show something? but I only get:

----------------- | PARAMETERS 'TABLES' ----------------- | DAT| FIELD| OPTION| ----------------- |0123|456789|0123456| ----------------- |TAB5|RFC_DB|RFC_DB_| ----------------- 
...Which leads me to believe I have not set a property or value or something? In the ST03 transaction you have the option to "Survey Graphics". This is the data that I'm trying to retreive and store in secondary database. Any help or at least a direction to head in?
You are getting the right response, as far as the Java statement's execution goes. The getTableParameterList()-method returns the internal structure or metadata for any in/outbound tables in the RFC interface. Simply printing that structure to the command console will only result in the display of that structure. This is exactly what you are seeing. In order to retrieve any table data, you must populate the appropriate import parameters (QUERY_TABLE would be best) then execute the call to SAP using JCO.Client.execute(function). I recommend using the Function Builder (SE37) to test the RFC_READ_TABLE for the data you need to retrieve. This will also help you better understand how to use this RFC through JCo.

This was first published in April 2003