cancel
Showing results for 
Search instead for 
Did you mean: 

JDBC to RFC with BPM

Former Member
0 Kudos

Hi,

Please find details of my scenario.

Oracle(VIEW)

Sender JDBC--


> PI--


> RFC request

and RFC response I need to update some other table in Oracle using storeprocedure.

and have one more storeprocesdure to update the View so that I will not get duplicate entry.

I am not using UPDATE statement in JDBC sender communication channel, insted of that to update VIEW I am using storeprocedure.

Please let me know how I can achive it with BPM.

Thanks,

Bhupesh

Accepted Solutions (1)

Accepted Solutions (1)

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

>>>Please let me know how I can achive it with BPM.

- async receive step (to receive jdbc data)

- transformation to RFC.request

- synchronous send step - rfc

- transformation step from RFC.response to jdbc xml

- async send step (to send to to jdbc)

Regards,

Michal Krawczyk

Former Member
0 Kudos

Hi Michal,

Thanks for quick response.

can you please explain datatypes and message types needed for this whole scenario.

I need one datatype format for my JDBC receiver for storeprocedure.

right now I am using follwoing format for storeprocedure

DT

Statement

updatestatus

action-- EEXECUTE

table -- Storeprocedure name

field1

type--CHAR

field2

type--CHAR

Thanks,

Bhupesh

Shabarish_Nair
Active Contributor
former_member200962
Active Contributor
0 Kudos
can you please explain datatypes and message types needed for this whole scenario

For JDBC -


> BPM

1 DT, 1 MT, 1 OB Async MI (at JDBC end), 1 ABS Async MI (at BPM receive)

For BPM <---> RFC

RFC, 1 ABS Sync MI (to send from BPM), 1 IN Sync MI (at the RFC end).....the MIs here will be based on the RFC

For BPM ---> JDBC

1DT, 1 MT, 1 ABS Async MI (at BPM), 1 IN Async MI (at JDBC end)

Regards,

Abhishek.

Former Member
0 Kudos

Hi Abhishek,

Thanks for response.

how many Operation mapping I should create for this scenario.

as you suggested the 1. OB Async for JDBC, there should be 1 IB RFC Async.. right..?

can you explain me operation mappings for this scenario in detail?

Thanks,

Bhupesh

Former Member
0 Kudos

if you can see in my first post..my requirement is to send RFC response to 2 storeprocedure so that one store procedure will update table and one will update View.

Thanks,

Bhupesh

former_member200962
Active Contributor
0 Kudos

Hi,

1) If the structure send by JDBC is not acceptable by the BPM then you need one Mapping in JDBC ---> BPM flow.

2) If the structure send by JDBC is same as the receiving structure of BPM then no need of Mapping.

3) You will need one Mapping to map JDBC req message to the RFC req message; one mapping program to convert RFC response to the JDBC stored-procedure message....

So your scenario with mappings will be:

JDBC --> Interface Determination (Mapping Optional as per pt.1) -


> BPM

BPM <-> Interface Determination (Request-Response Mapping) <--> RFC

In the above mapping program your ABS MI of BPM should have below MTs

Req Message -


> Original Message Received from JDBC

Response Message ---> Message which needs to be send to the JDBC stored-procedure.

Now your IN SYNC MI at the RFC end should have below MTs

Req Message ---> RFC request message

Resp Message ---> RFC response massage.

Then in the Interface Detremination of BPM <----> RFC flow develop a IM with below mapping programs:

Request Mapping between ---> MessageFromJDBC_to_RFCRequest

ResponseMapping between ---> RFCResponse_to_JDBCStoredProcedure

BPM -


> JDBCStoredProcedure

For this flow there is no need of Mapping program...

using the above mappings programs you can ensure that there is no Transformation step in your BPM...this is to help you in achieving a good performance out of your BPM...

You need a Syns ABS and Sync IN message Interface for BPM <---> RFC communication.

Regards,

Abhishek.

former_member200962
Active Contributor
0 Kudos
if you can see in my first post..my requirement is to send RFC response to 2 storeprocedure so 
that one store procedure will update table and one will update View

Ok...didnt see that...

so what you can do is get the RFC response as-is in your BPM.....no need perform a RFCResponse_to_JDBCStored Procedure mappings as mentioned in my previous reply

then once you havea the RFC response in your BPM perform the transformation to convert the Response to JDBCUpdate and JDBCView...

Regards,

Abhishek.

Former Member
0 Kudos

can you explian Operation Mappings in the case.

former_member200962
Active Contributor
0 Kudos

The Mapping will have the RFC response as Source and at the target you will have two Statement nodes (in your [JDBC structure for receiver|http://help.sap.com/saphelp_nw70/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm]) one each for Update and View....

Are you performing the Update and View action on the same table?....if yes then you will need only one DT, MT, MI at the BPM ---> StoredProcedure end....

Regards,

Abhishek.

Former Member
0 Kudos

here is my full scenario in detail:

Request side:

View (JDBC sender--- only Select at communication channel)

NAME: ABC View: -


> PI----


> RFC request

_________________________________________________________________________________

reponse side

Update:

VIEW: ABC(by using storeprocedure (structure is different)) <-PI <--


RFC response

Update

Table:XYZ(by 2nd storeprocedure) <--


PI <--


RFC response

-


so here if you can see I need to pass same RFC response to 2 storeprocedure

1set storeprocdeure will get response from RFC and will update table XYZ

2nd storeprocedure will get response from same RFC and will update VIEW ABC(I need to update just 1 field.. storeprocedue is mandatory)

former_member200962
Active Contributor
0 Kudos
2nd storeprocedure will get response from same RFC and will update VIEW ABC(I need to update 
just 1 field.. storeprocedue is mandatory)

not sure on how the logic needs to be applied for a VIEW....

1set storeprocdeure will get response from RFC and will update table XYZ

For this you can refer this link on how to creata a DT for Executing a stored procedure:

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

From the above link:
<StatementName5>
<storedProcedureName action=u201D EXECUTEu201D>
    <table>realStoredProcedureeName</table>
<param1 [isInput=u201Dtrueu201D] [isOutput=true] type=SQLDatatype>val1</param1>
</storedProcedureName > 
</StatementName5>

Check it out..

For more info on StoredProcedure:

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

/people/sriram.vasudevan3/blog/2005/02/14/calling-stored-procs-in-maxdb-using-sap-xi

Regards,

Abhishek.

Answers (0)