Does BPM - for a synchronous interface have a performance bottleneck
Hi All,
Just have a small query.
We have a scenario in which we need to receive PO details from a legacy system, create a sales order in ecc and send back a response table to the legacy system.
Our understanding is that this can be acheived using synchronous ABAP Proxies and also involves BPM and Abstract mappings.
I beleive that this should not pose any problems. My concern here is that we are confused as to whether BPM would have bottlenecks with performance. Do we have any SAP document or article which mentions that for synchronous interfaces BPM is the only way to go and this would not have a significant impact on the performance.
Another approach to the problem would be to create an asynchronous inbound proxy, write ABAP code within it and call a seperate outbound asynchronous proxy within the inbound proxy method. This approach looks and sounds very clumsy.
Kindly let me know your thoughts or any links which would be useful.
Thanks & Regards,
Mz
Hi Aashish,
Thanks for your quick reply. it was helpful, but i am not using RFC's. Correct me if i am wrong, but i have explained the scenarios in detail below.
Scenario 1. Synchronous
1) PI Picks file from a common folder.
2) PI does a data mapping and sends the data to ECC.
3) ECC contains an inbound interface which receives the data and in which abap proxy code is written.
4) The abap proxy code executes a function module and sends the response as an internal table back to PI.
5) PI receives the response and places it in a text/csv file and places it back to another folder.
I assume that the above would be possible only using BPM. What i understand is that in order for an interface to receive and send data, abstract mappings are to be used, and for this BPM is required. We do not have any conversions etc. its just a simple matter of receiving an internal table from ECC and creating a file to place in the folder.
I also understand that BPM could have bottlenecks due to queue and cache issues, messages might be pending, or lost etc.
Scenario 2. Asynchronous
1) PI Picks file from a common folder.
2) PI does a data mapping and sends the data to ECC.
3) ECC contains an inbound interface which receives the data and in which abap proxy code is written.
4) ABAP Proxy code executes the same function module and calls a seperate outbound interface and passes the values to it. This would be used in sending the response back.
5) PI receives the response from the second interface and places it in a text/csv file and places it back to another folder.
I would like to know which would be the better approach. Documentation/references to support your claims would be much appreciated.
Cheers,
Mz
Similar Messages
-
Archiving of Soap header part for a synchronous interfaces
We have a requirement where we have to retain the soap header details for a longer period for tracking purpose. So is there any option of archiving only soap header part from the message for a synchronous interface.
More Information about the requirement:
1. We will be passing some parameters to the XI Soap header.
2. In the WSDL we will add the header fields, so that the end system can populate them.This is done for tracking and searching the message, end to end.
3. Another thing to note, is that, for synchronous messages the payload will not be available (without enabling logging), Can we search the messages using the values in the header?
4. The above process is done, keeping in mind that when the messages are archived, the XI soap header will be the only thing that will be archived and not the whole payload, and the messages that are archived can be searched or retrieved based on the values in the XI Soap header.
Regards
NityaHi,
Glad to hear that you solve this issue, thanks for your sharing.
Thanks,
Linda Li
Linda Li
TechNet Community Support -
I am updating my phone to the newest IOS and it has been doing it for hours. I have now plugged it into the computer and it says that it is in recover mode and I should restore it? What does that mean? Do I lose everything on my phone? Is there anything else I can do?
Have you tried a reset ? Press and hold both the sleep and home buttons for about 10 to 15 seconds, after which the Apple logo should appear - you won't lose any content, it's the equivalent of a reboot.
-
How to add a Wait Step in BPM for the synchronous send step
Hi,
we have a scenario where in one of the step in BPM is a synchronous step which sends data to ECC system and gets the Respose .
The Requirement is that we need to add a wait for the Synchronous step in BPM as the data sent to RFC(ECC) need to get comitted before sendng the response which requires some wait time.
Currently we are getting the Response to PI from ECC where it was reported as the response is not correct.
Is this possible to add wait> Is this possible to add wait
No, this does not make any sense.
The BPM waits for the response anyway.
You could change the scenario to an asynchonous pair of messages.
But in my opinion the error is inside the ECC, because the response from ECC is not correct. -
Multiline for a synchronous interface
Friends,
Iam stuck with a webservice issue,
Scenario is File <->BPM <-> Webservice <-> BPM <-> Merge (File + WS) <-> Send
We have to make one sync call per order number (msg), right now the BPM is working for 1 call only. how can we mitigate this issue? iam not able to use multi mapping/ multiline container since its a synchronous call.
Thanks for all your help.
Regards,
PavanCheck the use of ForEach block in the BPM: /people/milan.thaker/blog/2008/08/05/modes-in-block-step-of-bpm
After the Send step (in the ForEach block) have a Container Operation whose job will be to perform an Append action so that each message received will be appendedand you will get one single message when all the calls are completed to the WS.
If Sync call doesnt work then you will have to split the sync call into an Async Send and Async Receive calls....
Regards,
Abhishek. -
Http adapter at sender side for synchronous interface
Hi SapAll.
here for one synchronous interface we using http adapter at sender side.
i just want to know on how i can get the sender ip adress or url through which they sending the data.
will be waiting for best asnwer.
regards.
VarmaHttp adapter at sender side for synchronous interface
i cont see any messages in xi producction.
Is LOGGING_SYNC enabled for your production box....also is the problem just about the visibility of the messages or is your scenario itself not getting executed?
At least the sender application might have received some error response if posting message to XI was a failure....also if possible check the message monitoring in RWB if you feel an error has occured.
Regards,
Abhishek. -
Error while doing GR for scheduling aggrement
Dear Experts,
We are facing error while doing GR for scheduling aggrement.
we have done the following steps.
1) Scheduling aggreement in ME31L
2) Released in ME35L
3) Mainatined Sch.Agmt Schdule in ME38 for todays and date 200 qty and other line is 800 qty.
When we are trying to do GR in MIGO system is giving the following message.
Document 5500000152 does not contain any selectable items
can I know what I have missed in the above steps.
Please guide me to resolve this.
Regards,
PrasadHi,
Please check Please check if Gr is already done against this document. Also please check whether you have attached SA in the source list with line items.
T-code:ME01
Enter Mat.code & Plant.
In the next screen pl.do the following:
Valid from - commencement date of the SA
Valid to - End date of the SA
Vendor - Vendor on whom the SA is released
POrg - Your purchase organisation
PPL - Leave it blank(This is only for interplant)
OUn - Ordering unit
Agreement - SA number
Item - 1
I hope this will resolve your issue. Thanking you -
Problem while doing bdc for fv60
Hi frends,
I got problem while doing BDC for fv60 tcode.i have given
header items:
vendor number
invoice date
posting date
amount
item data:
g/l acc no: 100000
amount 1000 whatever
these are all given in recording
in recording after all giving this data if we click on park it is telling "parking not possibe duiring batch input".
can any body tell me the process for recording shdb and after that in bdc how can we give multiple line items for fv60
thanks,
naveen.I don't think you can use FV60 in batch input. Your options are to use transaction FBV1 or bapi BAPI_INCOMINGINVOICE_PARK.
Rob -
Multimapping for Synchronous interfaces.
Hi,
Is it possible to do multi mapping for synchronous interfaces.
I have observed that when the cardinality of the target service interface is changed to 0:unbounded , the response message mapping tab disappears from operation mapping.
Can anyone please suggest how it can be handled?
I have a requirement to call a webservice and then write multiple files from the webservice response.Hi Soumya,
i dont think so ...if you think theroitically. you are doing multimapping where u have a N:M relation... so it will be difficult match the respose directly.
Since your scenario is syncrhronous, u have to rember the identity of source messgaes and then u need to reply back to those same identitiies. That means u have to use correlations and that can be achived by BPM. -
Does mapping to JNDI for ejb-refs have a performance impact?
Does mapping to JNDI names for ejb-refs have a performance impact for
WLS6.1?
In the ejb-jar.xml deployment descriptor, you can define an ejb reference as
follows:
<ejb-ref>
<ejb-ref-name>ejb/AccountHomeRemote</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<home>com.package structure.AccountHomeRemote</home>
<remote>com.package structure.AccountRemote</remote>
<!-- <ejb-link>AccountBean</ejb-link>-->
</ejb-ref>
Now, optionally, you can use the ejb-link element - or - you can, in the
weblogic DD, specify a JNDI name that the ejb-ref maps to.
Using a JNDI name buys you some flexibility. If, for some reason, the jar is
divided, you dont have to convert ejb-link's to JNDI names. The question is:
Is there a performance cost in doing this?
CheersHi Aashish,
Thanks for your quick reply. it was helpful, but i am not using RFC's. Correct me if i am wrong, but i have explained the scenarios in detail below.
Scenario 1. Synchronous
1) PI Picks file from a common folder.
2) PI does a data mapping and sends the data to ECC.
3) ECC contains an inbound interface which receives the data and in which abap proxy code is written.
4) The abap proxy code executes a function module and sends the response as an internal table back to PI.
5) PI receives the response and places it in a text/csv file and places it back to another folder.
I assume that the above would be possible only using BPM. What i understand is that in order for an interface to receive and send data, abstract mappings are to be used, and for this BPM is required. We do not have any conversions etc. its just a simple matter of receiving an internal table from ECC and creating a file to place in the folder.
I also understand that BPM could have bottlenecks due to queue and cache issues, messages might be pending, or lost etc.
Scenario 2. Asynchronous
1) PI Picks file from a common folder.
2) PI does a data mapping and sends the data to ECC.
3) ECC contains an inbound interface which receives the data and in which abap proxy code is written.
4) ABAP Proxy code executes the same function module and calls a seperate outbound interface and passes the values to it. This would be used in sending the response back.
5) PI receives the response from the second interface and places it in a text/csv file and places it back to another folder.
I would like to know which would be the better approach. Documentation/references to support your claims would be much appreciated.
Cheers,
Mz -
BPM problems on PI (XI 7.0) - internal error - Does BPM work in PI for you?
Hi guys!
This is the 2nd time I get into the troubles with BPM on PI. On XI 3.0 I had never problems. But on PI when I use BPM I get following error:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Empfängergruppierung
-->
<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="BPE_ADAPTER">SYSTEM_FAILURE_INTERNAL</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Es ist ein interner Fehler aufgetreten</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
SAP:Stack tag means in english: An internal error has occured.
My scenario is:
Idoc sent from R/3
Mapping to Integration Process (BPM) inbound interface format
Message receiver in Int Proc (start of BPM)
sync call to web service (inside Int Proc)
web service response sent out from BPM (end of BPM)
mapping of ws response to target structure (idoc)
Idoc sent to r/3
I don't know, what could be wrong. In SXI_CACHE I have return code 0 for this Integration Process, so it should be ok.
Any ideas? Does BPM work in your PI environment?
Thanx a lot foro help!
Olian.hi,
>>>>Any ideas? Does BPM work in your PI environment?
of course it does
it might mean that your installation was not done properly (or XI configuration during installation) but it has nothing to do with BPM
Regards,
michal
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a> -
Can I supress BPM for Asyn outbound and syn inbound proxy interface
Hi all,
Is there any other alternate to remove the BPM at asyn outbound and syn inbound proxy interface. Reason because I can create another outbound proxy interface at the receiver. But at receiver side we already invested huge code to develop the sync server proxy. So the intension is, with out disturbing the code Can I make the message flow with out BPM?
Because the reason of removing BPM is for a simple interface like this I don't want to use BPM. souce is JDBC and receiver is ECC 6.0. I know with out BPM it can not be achieved but in PI 7.1 EHP 1 by any chance can we do?
I mean during response mapping from server proxy shall we use look up function to achieve?This bean I have to use at sender channel right?
Yes
I mean is it is limited to JMS adapter?
No
You can find more information in the Wiki which deals with FILE to RFC synchronous...using the above Module -
BPE_adapter The process does not support the given synchronous interface
We are using PI 7.0 Sp 14 .
Old dev box needed to be upgrade with 64 bit hardware. We did a fresh installation and done all the technical configuraiton. Imported SLD , IR,ID , Runtime value mapping . All scenario working fine after migration except one particular scenari which involves SOAP Web service .
Our scenario is Extern system send SOAP call to PI - BPM_SYNC_ASYnc_process --> BPM Proxy_send
this BPM proxy_send to ECC R/eceiver at R/3
We are getting the following error after migraiton. Please help
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!--
Call Adapter
-->
Error! Hyperlink reference not valid. <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="BPE_ADAPTER">SYNCHONOUS_MESSAGE</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>The process does not support the given synchronous interface or does not support synchronous messages</SAP:Stack>
<SAP:Retry>N</SAP:Retry>
</SAP:Error>Is there any other Configuration to be done at the Abap side part from BPE_XI_customising (Automatic customising) done as part of the post installation steps .
Wondering any other configuration needs to be done at the ABAP side (as BPE is running on the ABAp stack) to resolve this.
Thanks -
Dynamic receiver determination for synchron interface
Hello everybody,
I want to use dynamic receiver determination for a synchron scenario.
The problem is, that the interface 'ReceiverDetermination' (http://sap.com/xi/XI/System SAP BASIS 7.00) is a asynchron interface.
This leads to an error when activating the Interface-Mapping (synch source Interface -> asynch destination Interface ReceiverDetermination)
Is there a way to use the dynamic receiver determination for synchron interface?
Thanks a lot,
ThomasHi Thomas,
I guess your scenario is not possible ASIS, since XI doesn't support 1:n for sync interfaces (and even if your mapping condition reduces it to 1:1, actually it is still 1:n, since your receiver list is unbounded).
Theoretically, you could make it work with BPM, though.
But I've never worked with a Receiver Determination Step reading from an enhanced receiver determination in ID (though there should be no problems).
Use sync async bridge, then use receiver determination step to obtain the receiver from an enhanced Receiver Determination. Pay attention that this enhanced receiver determination is a dummy one, using a mapping from your async abstract interface to the ReceiverDetermination interface. Once your mapping has determined the receiver, the enhanced receiver determination will return that receiver to the Receiver Determination step in the BPM. Then use this receiver in the sync send step (in mode receiver from receiver list, not from context).
The receiver determination of the actual sync send step may be a standard one, with the several receivers there (even if there are several there, at the moment of the sending, only one will be used).
Maybe it will work, maybe not.
Just try it.
Regards,
Henrique. -
Enabling to see the Source payload for synchronous Interface
Hi Experts,
Am working on a SOAP <-> RFC synchronous interface and PI version is 7.4 dual stack. Am unable to see the source payload when a
message is triggered from the Source Webservice. I can only see the receiver payload in RWB for request msg i.e the RFC payload.
Even for Response, I can only see the receiver payload which is sent to webservice and not the source payload from ECC on the RFC.
I have built the interface using ICO. I have made the changes in NWA, by setting the RemoveBody field to false.
Please let me know if any other settings are required. I have checked all other threads related to this issue and could not find the solution
to my issue where only the source payload in the synchronous interface is missing. In case of Asynchronous interface, the source payload
is visible.
Please assist me how can I enable this.
Regards,
Vish...Hi Vishwanath,
Please check the below blog
Message Staging and Logging Options in Advanced Adapter Engine of PI 7.3x
regards,
Harish
Maybe you are looking for
-
Why can't I sync more than one computer? This is a serious design flaw.
I have a macbook and so does my wife. So, who gets to sync and who ends up in the streaming ghetto? This is a pretty crappy design choice. We should both be able to sync to a combined library on the appletv so that we don't have to fight over who get
-
I have a date, let's say 01.01.2007, and I want to postpone the date by 12 working days. "working days" in my case shall mean only monday to friday, not saturday and sunday, and I do not case about public holidays. Is there are function module or som
-
HI All, we are getting the below error message ERROR: com.sap.aii.af.ra.ms.api.DeliveryException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: resource error: could not get a client from JCO.Pool:
-
How can I list folders within a category?
I have assigned several folders to a category, which I have published as a portlet. When I display that category portlet on a page, the folders in that category are not listed in the portlet. How can I get these folders to display within the category
-
Gradient Maps doesn't work properly when editing a photo from Lightroom
When I open a file in photoshop to edit and apply a gradient map to the image, it works fine. However, when I open an image from Lightroom (right click image, EDIT IN Photoshop) and apply the exact same adjustment layer, NOTHING HAPPENS. It's the str