cancel
Showing results for 
Search instead for 
Did you mean: 

RFC <-> XI<->JDBC

Former Member
0 Kudos

I have created an RFC function Module which sends the materail number to the third party system.

Where it would trigger the stored procedure and get back the result set into an rfc enabled function

module structure.Here there is problem when mapping back result set to the rfc Function Module.

Can any one tell me.How to map the result set from the stored procedure to the RFC fucntion Module.I have

created a structure to hold the data returned from the stored procedure.

I doubt what should with header (NODE),which contains subelements materialnumber and otherfields.The elements

under NODE are mapped properly.But i doubt with Header structure mapping the node should disable the field enable and mapit

to the header strucuture of the target.

I would appreciate if any one help me how to do the mapping back to the rfc enable function module

or either pass on the blog or the http of help documentation.

Thank you,

KishoreJ.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Kishore,

As you will be using the JDBC adapter as your Reciver that will select data from the database, the Adapter will be SYNCHRONOUS and the format of the Datatype has to be,

<DT>

<StatementName4>

<dbTableName action=”SELECT”>

<table>realDbTableName</table>

<access>

<col1/>

<col2/>

<col3/>

</access>

<key1>

<col2>val2old</col2>

<col4>val4</col4>

</key1>

<key2>

<col2>val2old2</col2>

</key2>

</dbTableName>

</StatementName4>

</Dt>

The COL between ACESSS will contain the column names that have to be selected from the database.

The values between KEY will contain the conditional values.

The response will be of this format,

<DT_response>

<row>

<column1>value11</column1>

<column2>value12</column2>

...

</row>

...

<row>

<column1>valueN1</column1>

<column2>valueN2</column2>

...

</row>

<DT_Response>

Just create the Datatypes of this formats for the request and response JDBC and it will work fine.

Also go thru these links and clear all your doubts:

http://help.sap.com/saphelp_nw2004s/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm

/people/alessandro.berta/blog/2005/10/04/save-time-with-generalized-jdbc-datatypes

http://help.sap.com/saphelp_nw2004s/helpdata/en/4d/8c103e05df2e4b95cbcc68fed61705/frameset.htm

Regards,

abhy

Former Member
0 Kudos

Hi Kishore,

I guess this can be achieved thru java mapping or other rather than Message mapping.The thing here is,First we have to read each row from the returned object and map to the response field.

Former Member
0 Kudos

Hi Kishore,

Here is an example of mapping for synch JDBC.

/people/siva.maranani/blog/2005/09/16/xi-how-to-on-jdbc-receiver-response

/people/siva.maranani/blog/2005/05/21/jdbc-stored-procedures

Regards

Vijaya