cancel
Showing results for 
Search instead for 
Did you mean: 

How to make a Sender Jdbc as Synchronous

Former Member
0 Kudos

Hi All!

I am having the Following requirement,

In the sender system we are getting the data from a Data base Table.In that table there is an field named as INTERFACE_STATUS.

In the Sender CC we are Using JDBC adapter ,In the Query SQL Statemnet Parameter we are select the datas with the INTERAFCE_STATUS='N'.In the Update SQL Statement we are Updateing the INTERFACE_SATUS='S',it means the data has been interfaced to the target System.

But,

In the Receiver CC we are Using the SOAP Adapter.Because, there is some Bussiness validation is required before inserting the data into the Target Data Base.So, here there is a possible of getting some faliur.In this case ,the data will not interface to the

target data.

By getting the Responce from the Web Service the Source DATABASE should get update. that is if the web service returns Failur meassage the INTERAFCE_STATUS should be remain as 'N' and if we get the Responce message from web service the INTERAFCE_STATUS should update to 'S'

Can any one pls give me an idea. Thanks in advance.

Regard's

Preethi.

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hai!

>>Receive->Transformation->Syn sender->Trans->Send

Kindly,give configuration steps.

rajasekhar_reddy14
Active Contributor
0 Kudos

Hi,

roughly you required below ID Stuff.

1) One Sender agreementu2014(JDBC sender communication channel).

2) 3Receiver determinationsu2014Outbound JDBC service interfaces to BPM.

BPM to SOAP

BPM to JDBC Receiver

3)3 Interface determinations

4)2 receiver agreements (one SOAP CC and one JDBC CC).

Regards,

Raj

Former Member
0 Kudos

Hai Raj!

I have finished design and Configuration. Now JDBC Sender Adapter has picked the data and Processed to the BPM.

Now there is an error in BPM Process. How can i trace this issue.

Can u help me.

regard's

Preethi

rajasekhar_reddy14
Active Contributor
0 Kudos

You have to monitor integration process, it is very simple...

sxmb_moni-->viewprocess--->seelct your Integration process work item,then disply in graphical flow..it will show where exactly message strucked in BPM.

SEARCH IN SDN for more help.

Regards,

Raj

Former Member
0 Kudos

Hai Raj!

In the BPM Design i have made a small change that is

In the Receive step i am passing the Message Structure that The Web Service Request Needs.

In the Syn Send

Sync Interface : Web Service Request and Responce

Receive:Web Service Request MSg

Responce:Webservice Responce Msg

Using this Responce Message i am making Transformation.

This Transfermation Mapping will contain the Mapping Between the Responce Msg from Webservice and Update Statement to

update the INTERFACE_SATUS='S'. Here i am not using a seperate JDBC Receiver.

So BPM Steps are: RECEIVE--->SYNC SEND->TRANSFERMATION--->SEND2

Now ,the BPM has been started But,the SOAP Receiver is not getting any Meassage.In the SXMB_MONI only the message from JDBC SENDER TO BPM is displaying.

Can,any one give a solution

Regard's

Preethi.

former_member207622
Contributor
0 Kudos

I think you dont need to use BPM , Using request response bean will be feasible

http://wiki.sdn.sap.com/wiki/display/HOME/UsingRequestResponseBeanModuleinFILE+Adapter

Search on request response bean or response one way bean and its a better option avoiding BPM

regards

Ninad

Former Member
0 Kudos

Hi Preethi,

in your case as of my understanding you donu2019t need BPM. think about following option I think it should work..

your scenario is JDBC to PI to SOAP and again JDBC receiver(to update table.)

in this case use following way.

you have 1 outbound synchronous service interface - for JDBC sender

1 inbound synchronous service interface- for SOAP receiver

2 Message Mapping (Request, Response)

- 1st mapping- JDBC to SOAP (you have JDBC sender Communication channel with select statement configured and in place of Update statement write u201CTest" so that this will not get triggered.)

- now in 2nd mapping - SOAP to JDBC (on JDBC side in mapping use Update action and put your condition if successfully received response use update statement with INTERFACE_SATUS='S' and if response is not as expected use INTERFACE_SATUS='N')

Thanks,

Bhupesh

Former Member
0 Kudos

Hai Bhupesh!

Your understanding is right. Thanks for this idea. i will try this and get u back.Thanks once again.

Regard's

Preethi.

Former Member
0 Kudos

Hai Bhupesh!

I have tried it but, while testing Processing Started Message is Displaying for every Polling Interval,but the Sender JDBC Channel is not picking the data.

rajasekhar_reddy14
Active Contributor
0 Kudos

If your customer have any limitation like no Integration process then you cana achieve this requirement using withput BPM.

use SOAP look option to get response from web service, based on response use JDBC Receiver adapter to update bststaus.

JDBC>soaplookup--<JDBC.

With BPM:

Receive-->Trasformation->Sync Send>Trscformation---->send.

Regards,

Raj

Former Member
0 Kudos

Hai!

Thank for your quick Reply.

Can u Pls explain in detail about the Design part for this without using the BPM.

Regard's

Preethi.

Former Member
0 Kudos

hai Raji!

i am try to do this using BPM.Can u pls give me the Configuration Steps.

rajasekhar_reddy14
Active Contributor
0 Kudos

Hi,

you can use SOAP look up to get response from webservice system at the time of mapping,but i am not sure this SOAP look will server your job or not.

better to go with BPM, i have alredy explained the steps.

search in sdn for SOAP look ups.

Regards,

Raj

Former Member
0 Kudos

You can solve by using a BPM or maybe using a simple JDBC structure....

REQ JDBC -> REQ SOAP -> RESP SOAP -> Map response to JDBC RECEIVEER If success -> Map UPDATE Statement in receiver structure (with table keys) to update Table field || If error -> NO Update Statement.