Using WAIT step in Sync/Async Bridge
I am using a sync/async bridge and placed a 1 minute wait step in between my async send and async reply. When I test my process, the async reply comes in but then my 1 minute wait eventually times out and gives me an error. Can someone guide me in fixing this BPM design (which steps to add and how)?
http://webpages.charter.net/kpwendel/bpm_with_wait.jpg
I would like it to stop waiting once the async reply comes in and not timeout. If the 1 minute mark comes and a reply never came in, it would also be nice to send back an error message.
Thanks!
I pulled my WAIT task and had this scenario working a week ago. I have not made any changes, but now my inbound replies to close the BPM and link up to the request are not "linking". The request is eventually timing out even though the reply with a good correlation id comes in successfully. Any suggestions?
UPDATE: I went through my objects in the IB:Config and resaved/activated them and now it is working. Don't know what messed them up in the first place.
Message was edited by: Keith Wendel
Similar Messages
-
Getting Time-Out Error in Sync-Async Bridge
Hi All,
My IP has a Sync-Async Bridge. I have a fork, two senders, two switchs and a transformation step inside the bridge.
If XI takes much time to process the IP, the send step that closes sync-async bridge is not waiting for the message after a particular period and throws time out error to the sender.
Is it possible to increase the waiting time for sync-async bridge?
This IP works correctly 8 out of 10 times. Sometimes the message is sitting permenantly in the queue(smq2) and gives me system failure error.
Can u tell me why this problem happening?
Thanks & Regards,
Senthil.Dear Michal/Senthil,
Can you pl clear a confusion that i have had for ages...
suppose there is a sync/async bridge ( i understand that it is used for sync business system too async BS communcation )
where we have 4 steps
sync receive - > async send -> async receive -> sync send..
i do understand that async send and async receive are combined through correlation
but i do not understand how do they work..
i mean when async send say send a file to a target system...does async receive reads a file from the same folder based on the corelation or wat...
basically can you pls explain me how do the steps 2 and 3 above work
Edited by: Tarang Shah on Mar 3, 2009 12:51 PM -
BPM Design using sync-async bridge
Hi Arpit,
Below mentioned is an overview of the process flow which we are trying to implement.
1. A synchronous interface takes in the request
2. After the mapping, a file is created
3. Another file adapter reads this file and sends a message back to the sync interface. This step is to make sure that the file is created
I'm using a sync-async bridge for this process, since file creation and reading processes are asynchronous and the request/response is synchronous.
Can somebody help me by telling how to design the BPM. How many send and receive steps are required etc?
Thanks,
Sandeep
| Request | | | | | | | |
|--------->| | | | | | |File |
HTTP| |Sync|--->|Mapping|--->|Async|--->|Adapter|
|<---------|I/f |<- | | |I/f | |(write)|
| Response | | | | | | | |_______|
| |
| |
| ____|___
|| | | | | |
-|Async |<--|File Adp|<---|Folder |
| I/f | |(read) | |________|Hi
<i>>>I have to map the incoming xml from HTTP to another format before creating the file.</i>
Ya then u can use the transform Step in between the
sync Recv ---> Transform ---> Send to File System
<i>>>Once a file is read, that interface has to send an acknowledgement message telling the status.</i>
Wht type of acknowledgement msg telling the status.
I think u can add another element in ur created file payload like <b>Status</b>: Created (ConstanT)
Then u can map the payload of the readed file with tis payload having Ststus init.Fo this u need a <b>Transformation</b> Step.
BTW i was searching some previous blogs and i got this and it is bit related to ur scenario.Go thru this
/people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi
Hope it helps.
Regards
Arpit Seth -
When is Sync-Async bridge used in BPM? Kindly help!
Hi Experts,
I am finding it difficult to understand when to use Sync-Async bridge. In the example given by SAP it is not clear what they mean by following:
1. We use Sync-Async bridge when the sender system is Sync and Receiver system is Async. What do you mean when you say receiver is Async?
2. When Receiver is Async then how will it send a response?
3. Can somebody explain the "Wait" mechanism used to get the response?
4. Can we use Sync-Async bridge when both the sender and receiver systems are Sync? How?
Please help me with the answers
Thanks & Regards,
GopalHi,
In a simple way ill tell you. Suppose we need to check the reservation seats of Train or flite then the sender(our) side is Asynchronous and receiver(server) side is Synchronous, because the receiver(server) takes the request and send the response(seats r avail or not).
For your second question
If the receiver is Async then it doesn't send the response.
For your fourth question chk this
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken]
For more info Check this links
Demonstrating Use of Synchronous-Asynchronous Bridge to Integrate Synchronous and Asynchronous systems using ccBPM in SAP Xi
http://help.sap.com/saphelp_nw04/helpdata/en/83/d2a84028c9e469e10000000a1550b0/content.htm -
Sync/Async Bridge without Asynchronous Send / Receive Steps
Hello together,
we have a synchronous HTTP <--> RFC Scenario using a sync/async Bridge in BPM with the following characteristics:
1. HTTP Payload is received (opens Sync/Async bridge)
2. lookup is done in an LDAP System (we use an UDF here)
3. Customzied JCo is called which takes the XML String as input parameter (done by Java Mapping)
4. Return Value of JCo then is delivered back to HTTP Client (closes Sync/Async Bridge)
--> No RFC Adapter is used here as the provided JCo does all the parsing
When testing the sync/async bridge is started but we receive an timeout after 30 sec.
Could it be that the sync/async required exactly a pair of async send and receive steps (which we do not have in our scenario and which we do not need)?
This would be a problem, as we have to use BPM in this synchronous scenario. Do you have any idea?
Thank you very much for your help.Thank you for your reply, but I think you misunderstood me. Please let me try to clarify once more:
1. Synchronous HTTP Sender Interface (Request/Response) opens Sync/Async Bridge
2. LDAP Lookup is done by UDF using the Request Message in Transformation Step
3. Switch is done based on result of Lookup
4. Branch 1 in switch calls customized JCo with Java Mapping in Transformation Step (Request Message as input, Response message as output)
5. Response message (delivered from JCo Call) should close the Async/Sync Bridge and be send back to HTTP Sender
--> We have no async send / receive steps in this scenario.
The customized Jco has been provided by an external partner as there is lots of parsing logic implemented. So we want to connect to the backend SAP system using this JCo and not via a send step.
My key qestion is therefore: Is it absolutely necessary to use exactly a pair of async send / receive steps in a sync/async bridge?
In this case we have to look for another design concept without BPM which would make the solution very difficult I think.... -
SOAP to JMS using Sync/Async bridge - configuration confirmation needed
Hi group,
Since I'm experincing error in a scenario using sync/async bridge in jms adapter I really would like a confirmation on my configuration.
For a simple SOAP to JMS scenario is it then correct that all I need is;
1) 2 synchronous message interfaces, 1 inbound and 1 outbound
2) 1 Receiver determination
3) 1 Interface determination
4) 1 Receiver agreement (JMS adapter with module configuration)
5) 2 Sender agreements (in my case 1 soap and 1 JMS adapter - the later with module configuration).
6) The sender and receiver JMS adapters point to different MQ queues (request and response queues)
7) The sender agreement for the JMS adapter uses my synchronous, inbound message interface (isn't this really just a "dummy" to actually fetch data from response queue - meaning that the actual utilized business system/service, MI and namespace are unimportant, since the module will make the adapter notify the listening module in the receiver JMS adapter?)
Best Regards,
DanielHi, thanks for your reply.
I'm familiar with the links provided. I believe everything is configured as it should be, but since I get error I would like to have my configuration confirmed. Neither the weblog (or SAP guide) are detailed enough to convince me 100% that my configuration is correct. Surely the problem could be on the MQ side, but before going into that, I want to be sure that its not on XI-side.
So I really would like confirmation on the steps/question that I wrote:-)
Best Regards,
Daniel -
Doubt on Sync-Async bridge using BPM
Hi Experts,
I had a doubt on Sync-Async bridge using BPM,
1. If sender system is SAP system and receiver system is non-sap system then while configuring in Integration Directory how many Receiver Determinations should be done ?
2.Plz explain if we have 2 receivers i.e one sender SAP system and 2 non-sap systems then what will be the no. of receiver determinations?
3.How we have to count no. of receiver determinations if we have 2 receivers and 1 receiver system? If so what is the no. of receiver determinations in case of 1 receiver syst and 2 receiver systems?
Plz clarify above questions good answers will be definetly rewarded.
Regards,
Vinod.vinod,
... Sync-Async bridge and Recievr determination are not related....
Sync-Async bridge means.. u r sending some request syncronously...and u r expecting the response also in synchronous way... but u r not getting the response directly...u r getting it via BPM..i.e asynchornously.....
see here what is the Use of Synch - Asynch bridge in ccBPM
/people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi
and here if u have 2 reciver... u have to create 2 receiver determination and ofcourse for BPM one reciver dtrmination is required.... since in BPM related scenario BPM will act as a reciver...BPM(IP) wil first recive the message then it will be forwarded to Receiver system!!! so total 3.
<b>3.How we have to count no. of receiver determinations if we have 2 receivers and 1 receiver system? If so what is the no. of receiver determinations in case of 1 receiver syst and 2 receiver systems?</b>
r u telling that u r having two recivers and each receiver is receiving messages using 2 interaces???
u have 2 use 2 receiver determination and 4 interface determination.
regards
biplab -
Use of sync async bridge for webservices
Hi ,
We have a scenario where we need to send a data from ERP system to PI via webservice. PI communicates with a third party system via webservice.
The data can be posted to this third party system using webservices. The third party system then reads some data asynchronosly and sends the data to PI . We need this data to be sent to the synchronous webservice from ERP system.
Can we use the sync async bridge for this scenario. Some details on how we can do this will be very helpful..
Thanks
BharathwajHi Abhishek,
Thanks for the immediate reply.
The scenario is
ERP <---WS/SOAP--->PI -----WS /SOAP of 3rd party---> 3rd Party system (X).
PI <------- WS of PI
X posts the data to a backend. THe system X then picks some processed information. This system is not capable of sending the response synchronosly. It can post this data to PI once the data is available. Now PI needs to take this data and post it to the WS request from ERP.
Hope I have provided some clarity on the scenarion..
Thanks again.
Bharathwaj
Edited by: Bharathwaj on Aug 11, 2009 4:59 PM -
. Why we use Sync-Async bridge? .
Why we use Sync-Async bridge?
Dear Manoj,
http://help.sap.com/saphelp_nw04/helpdata/en/55/c5633c3a892251e10000000a114084/content.htm
A distinction is made between synchronous and asynchronous communication for both imported interfaces and message interfaces. You define the mode of communication when you define an interface:
· In the case of synchronous communication, a response message is expected from the receiver after a request has been sent. Once the request message has been sent, no further messages can be sent until the response to the request has arrived back at the sender system.
· However, in asynchronous communication a (immediate) response is not expected. A sending process can send multiple messages to a receiver in a bundle and then continue executing the process.
You would use Synch - Asynch Bridge to enable the communication between a synchronously calling business system (synchronous outbound interface) and an asynchronously called business system (asynchronous inbound and outbound interface), you can define a sync/async bridge in an integration process. You can only define one sync/async bridge for each integration process.
Regards,
Naveen. -
Dynamic configuration in Sync/Async bridge in JMS
Hi
Scenario:
Portal sending request to JMS MQ and getting Response using sync/Async Bridge.
I have to written a UDF which will capture the value for cust_uid from request mapping and store it in dynamic configuration
And when the response comes from JMS MQu2026.this value gets populated in response mapping.
I have tested the UDF in a dummy Soap2rfc scenario and its working fine.
But when used in Sync/Async Bridge, the dynamic configuration fails.
For Sync/Async Bridge, there are 2 channels 1) Sender JMS 2) receiver JMS.
The synchronous request is converted to an asynchronous request in the module processor and sent.
The asynchronous system sends a response to a sender adapter. In the module processor of the sender adapter, this response is forwarded to the module processor of the original receiver adapter, where it is sent as a synchronous response of the waiting synchronous request.
Please suggest
Regards
AbhijitHi Abhijit,
Okay, so your data extraction/insertion is working fine for a simple synchronous request responser call.
I suppose this is working fine because your receiver adapter copies some part of the request message (at least the dc header) to the response message. (But I don't think this always works for all the adapter types). It is not working for the sync-async bridge because there are two unrelated messages in this case.
In order to copy the dc header from the first message to the second message, I think you can use the DynamicConfiguraitionBean module to store the dc header value in the module data and use this module again to recover it and set it to the second message. The whole process is somewhat complicated, but I will sketch the approach below.
First, let's call the first use of DCB the store step and the second the recover step. These store and recover steps must take place in the same module sequence so that they can use the module data to pass data from the first message to the second message. Furthermore, the store step must occur after the cust_id value is extracted into the dc header. So, your configuration must be placed in the receiver adapter side. Assuming the request message with the filled dc header coming into the module sequence, the first DCB module can be placed before the ROB module to store the dc header value in the module data. And the second DCB module can be placed after the WRB module to recover the dc header value from the module data and set it the dc header of the response message.
I hope this will work.
Regards, Yza -
Need help with scenario BPM Http-RFC Sync/async bridge
hi all!
i've got the following scenario: HTTP-BPM(XI)-RFC synchronous both of them. for that, i'm using S/A bridge in the BPM, but i'm getting the error 'Timeout condition of pipeline reached'. i think the problem is that the process gets lost in the sync/async communication, because in the trace level shows CL_XMS_PLSRV_CALL_BPE-ENTER_PLSRV" and after that every message are 'wait time starting'.
don't know the reason of the error. Maybe I missed something to configure?
the BPM is like this:
Receiver(Open Sync/Async bridge) -> Transformation (mapping from http request to RFC request) -> SyncSend (RFC request and response) -> Transformation (mapping from rfc response to http response) -> Send (Close S/A Bridge)
the IR is configured like this:
Message Types u2013 External Definitions u2013 Imported Objects
mt_cxml_request -> contains xsd of xcml request template.
mt_cxml_response -> contains xsd of xcml response template.
zintegracion_pedidos -> imported RFC from R/3
zintegracion_pedidos.response -> imported RFC from R/3
Message Interfaces
mi_cxml_request_async_abs
mi_cxml_request_sync_abs
mi_cxml_request_sync_out
mi_xcml_response_async
mi_rfc_request_asyn_abs
mi_rfc_request_sync_abs
mi_rfc_request_sync_in
mi_rfc_response_async_abs
Message Mappings
mm_cxml_request_to_rfc_request -> mapping from http request (cxml) to rfc request.
mm_rfc_response_to_cxml_response -> mapping from rfc response to http response (cxml).
Interface Mappings
im_cxml_request_async_abs_to_rfc_request_async_abs
im_rfc_response_async_abs_to_cxml_response_async_abs
and the ID is configured like this:
Business system DES -> created business system for RFC adapter with interface mi_rfc_request_sync_in as receiver. Comunication channel u2018RFC Receiveru2019
Businnes service VW -> created businnes service for HTTP adapter with interface mi_cxml_request_sync_out as sender. Comunication channel u2018HTTP Senderu2019
Receiver Determination
two receiver determinations. One for BPM and the other one for RFC(R/3):
|VW| mi_cxml_request_sync_out:
|BPM_PO| mi_rfc_request_sync_abs:
Interface Determination
two interface determinations:
|VW| mi_cxml_request_sync_out | | BPM_PO:
|BPM_PO| mi_rfc_request_sync_abs | * | * :
Sender Agreement
VW
mi_cxml_request_sync_out
Receiver Agreement
|BPM_PO| |DES| mi_rfc_request_sync_inhi all,
i've removed the transformations from the BPM, and i've created:
in IR:
- interface mapping: im_xcml_request_to_rfc_request_sync_abs
source interface: mi_cxml_request-sync_abs
target interface: mi_rfc_request_sync_abs
in ID:
- receiver determination: |VW| mi_cxml_request_sync_abs
sender service: VW
interface: mi_cxml_request_sync_abs
receiver: DES
interface mapping:im_xcml_request_to_rfc_request_sync_abs
- interface determination: |VW| mi_cxml_erquest_sync_abs ||
sender service: VW
interface: mi_cxml_request_sync_abs
inbound interface: mi_rfc_request_sync_abs
interface mapping: im_xcml_request_to_rfc_request_sync_abs
- receiver agreement: |VW| |DES| mi_rfc_request_sync_abs
sender service: VW
receiver service: DES
receiver interface: mi_rfc_request_sync_abs
not sure these are the steps i had to do for mapping xml to rfc. but the result is the same error as before, the timeout.
i couldn't test with RTW because i'm getting an error 401 unauthorized.
i'd do it without BPM but the issue is that i wanted to add another step that would be to send the response from rfc to mail too once i got this BPM running. i mean, the response from RFC would be sent to http response and mail both.
the only way i can imagine to do it is with BPM but i'm really fed up with it.
thank u very much folks -
Correlation issue due to async receive with sync/async bridge
Hi,
I have an Integration process (PI 7.0), which consists of sync/async bridge.
One of the step in the process is async receive.
To avoid any issue with correlation, i placed the whole process (except start and end) into a block and assigned a local correlation to it.
The Sync receive in sync/async bridge will activate the correlation and one of the async receive step in the process will use that correlation.
Normally it worked fine. But during one execution (just for testing), the async receive step did not take input to the process, and so the process execution replied "Timeout in Pipeline". But thereafter i cannot execute the process successfully, even when async takes the input.
And in the BPE monitoring, in workflow log, the process Instances are still "In Progress".
Do we have any way to stop these processes and unlink any possible correlation related to them?Hi,
A local correlation is only valid for the block for which it is defined. Once the block has been processed, the correlation is no longer active.
If the validity of a correlation is not restricted correctly, the following problems can occur:
¡ Messages that satisfy an active correlation are continued to be assigned to a running integration process. The integration process no longer processes the messages because no processing steps are waiting for the messages.
¡ Messages that satisfy an active correlation are continued to be assigned to a running integration process, instead of starting a new integration process.
You can avoid these problems and make it easier to follow how messages are processed by restricting correlations correctly to the required block.
Please check the local correlations for it
With SXMB_MONI_BPE you can monitor these instances.
But to kill it you need to use tcode SWWL. You can go to SXMB_ADM_BPE to check the BPM related settings.
Thanks
swarup
Edited by: Swarup Sawant on May 31, 2008 1:40 AM -
Hello,
Pls provide Sync - Async Bridge example document.
RegardsHI
Sync/async communication enables a synchronous sender system to communicate with a receiver system that cannot process synchronous messages
Refer this blog
/people/ravikumar.allampallam/blog/2005/02/17/bridging-the-sync-async-bridge-with-fork-xi
/people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi
There is an example of the Sync/Async Bridge in th SWCV: SAP BASIS.
Namespace: http://sap.com/xi/XI/System/Patterns
The Integration Server receives synchronous messages from a sender and send them to a receiver as asynchronous messages. Conversely, it can send the asynchronous response from the receiver back to the sender as a synchronous response.
As soon as a synchronous message is received from the sender system the process uses a special receive step to open the sync/async bridge, sends the received message to the receiver system asynchronously, and waits for the asynchronous response to arrive from the receiver.
The BPE receives the asynchronous response from the receiver, correlates it with the corresponding query, and activates the waiting process, which then sends the response back to the sender synchronously.
This blog also should give you some idea...
https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken]
Also go through these links:
http://help.sap.com/saphelp_nw04/helpdata/en/83/d2a84028c9e469e10000000a1550b0/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/c4/dc06418752ef6fe10000000a1550b0/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/f9/66bf40ad090366e10000000a1550b0/RN_XI_DE_neu.pdf -
Regd NWBPM Sync/Async Bridge
Hi,
I have a synchronous to Asynchronous interface. Customer sending the data through SOAP and he is expecting the response. From PI we are sending the data to ECC through IDoc.
I checked couple of blogs but those are related to Sync-to-Async (Async request and Async Response at target side). Can you please help me how to achieve this.
I checked below links
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/80f96dbf-adca-3010-ffb5-daf2d1f0e276?QuickLink=index&…
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/50be5f78-c84d-3010-32ac-ea68b7202932?QuickLink=index&…
Thank you.
Regards,
VenkatHi Rohini,
Sync/async communication enables a synchronous sender system to communicate with a receiver system that cannot process synchronous messages.
The central component of sync/async communication is the sync/async bridge, which enables the Integration Server to receive synchronous messages from a sender and send them to a receiver as asynchronous messages. Conversely, it can send the asynchronous response from the receiver back to the sender as a synchronous response.
To do this, you define an integration process, which is started as soon as a synchronous message is received from the sender system. The process uses a special receive step to open the sync/async bridge, sends the received message to the receiver system asynchronously, and waits for the asynchronous response to arrive from the receiver.
The Business Process Engine receives the asynchronous response from the receiver, correlates it with the corresponding query, and activates the waiting process, which then sends the response back to the sender synchronously.
There is an example of the Sync/Async Bridge in th SWCV: SAP BASIS.
Namespace: http://sap.com/xi/XI/System/Patterns
Go through this link to get a good idea as to how to <a href="http://help.sap.com/saphelp_nw04/helpdata/en/43/65d4dab39b0398e10000000a1553f6/frameset.htm">Define Sync/Async Communication</a>
This blog also should give you some idea...
https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1403 [original link is broken]
Also go through these links:
http://help.sap.com/saphelp_nw04/helpdata/en/83/d2a84028c9e469e10000000a1550b0/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/c4/dc06418752ef6fe10000000a1550b0/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/f9/66bf40ad090366e10000000a1550b0/RN_XI_DE_neu.pdf
I hope it helps.
Regards,
Abhy
Message was edited by: Abhy Thomas -
Hey
My task is to have an Idoc sent to a Web Service. I have heard that this can be solved using a sync/async bridge in BPM, but from what I can read (help.sap.com) it always say that the first receive step is from a synchronous application. My question is then: Can I use the sync/async bridge to call a web service - i.e. changing from asynchronous (Idoc) to synchronous (WS call)?
Anyone knows a blog that shows some good examples of sync/async communication? I have read the inital blogs on BPM, but not found anyone good at async/sync communiation...
thanks a lot!
regards MarianneHi,
If you want to receive the response from Webservice means you need to use BPM here.
Otherwise no need of any BPM,
That too if u want to response from WS also u dont require any Sync/Async Step here.
You can configure the BPM with Async receive-Sync Send-Async Send
REgards
Seshagiri
Maybe you are looking for
-
Time Capsule WDS trial and error--working now
*{ I }* I consider myself an expert in using Mac computers and Mac wireless systems although I am no hacker and no programmer by any stretch of the imagination (although I did teach myself how to use HyperStacks way back in 1990!). Although Apple ove
-
How to disable smartcut's toolbar?
I have many users that can access only to their authorized dashboards on bqy document. (there exists a login dashboard to direct users to thair authorized dashboard) that's why I need to disable or restrcit the smartcut dashboard toolbar. has anyone
-
VSTO Tools for Office 2012 will not install
I am trying to install VSTO 2012 on a Windows 7 machine and get the following errors. When I got the access denied error for the file 1343597488.xml.temp I attempted a couple of things. One was to create a file with these extensions in the folder t
-
Conect essbase with Oracle ADF Give me the link I knew that can't able create a new connection for essbase, by editing config for essbase we can able to do so give me link for editing configuration of essbase in Oracle ADF Thanks in advance
-
Hi all, I want to know the vendor Evalution process in SAP. Plesae povide any documentation for it. Regards, Kapil.