cancel
Showing results for 
Search instead for 
Did you mean: 

Asynch Proxy ->XI ->Synch Http ->XI ->Asynch File

Former Member
0 Kudos

Hi,

Currently I have Scenario:

Asynch Proxy (SAP Delivered BADI) ->XI ->Asynch HTTP

Now the Requirement is that from HTTP I need to get the response back So I need:

Asynch Proxy ->XI ->Synch Http ->XI ->Asynch File Scenario.

The catch is the proxy is SAP delivered BADI and makes Asynch call. Also all the Design time objects in XI on Sender side (Proxy) are predelivered by SAP and so Interfaces are Asynchronous.

Is there any way I can achieve the required Asynch Proxy ->XI ->Synch Http ->XI ->Asynch File scenario? If yes How?

I have gone through weblog /people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit

but it is not working for me as the proxy I am using is SAP Delivered Asynch and also the Business content in XI is for Asynch comminication.

Thank you in advance.

-Adrean.

Message was edited by:

Adrean Hart

Accepted Solutions (1)

Accepted Solutions (1)

moorthy
Active Contributor
0 Kudos

HI,

What is the problem you are facing if you use standard design contents ? Because it should work similar to blog you mentioned. However, you need to create some of the abstract interfaces to use in BPM to get the work done. If you feel, delivered object in XI is not able to do this, copy the same into your SWCV, and continue with this customization..

Generally this works like this: Receive the Async Message in BPM, Map it, Send the data Synchronously to the Receiver, Receieve the response, send to File.

Hope this helps,

Rgds.

Moorthy

Former Member
0 Kudos

In the blog No Transformation Operation is mentioned. Now as it is Synch send step. Do I need two transformation steps for example:

Asynch Receive-> Transformation (Request)->Synch Send->Transformation (Resp)->Asynch Send

Or I do not need Transformation Steps at all. Also What will be the config for Synch Send Step. As it asks me of Synch Interface. Is that going to be the Traget Synch Abstract or Source side Synch Abstract?

Thank you.

Adrean.

moorthy
Active Contributor
0 Kudos

Yes, in the blog, the synchronous mapping is executed outside the BPM. Hence there is no Transformation Step,.

Let me go like this:

1) Recieve the message (Abstract Async Interface)- Receive Step

2) Send the message to Receiver in BPM : for this you need to have Synchronous send step. For this you need to have Abstract Sync Interface.

3) Outside the bpm, exeucte the mapping step with

-Req to Http Req

-Http Response to File Message type

4) As you used Sync send step, you can receive the response from Http in BPM. Now send that Fileresponse to file using Send step.

<i>As it asks me of Synch Interface. Is that going to be the Traget Synch Abstract or Source side Synch Abstract?</i>

>>>Yes you are right. U need to have Sync Interface. For this Request is your input to the Http and Response is your file message structure.

No need of Transformation in BPM to avaoid any performance problems ...

Hope it helps,

Rgds,

Moorthy

Former Member
0 Kudos

Hi Moorthy.

Thnk you but could you be more specific about How can I achieve Mapping outside the BPM? In the First Recieve step, Do I still have the Original Message that I got from the Source SAP or it is after the Mapping?

Any tips configuration part will be helpful. If you need actual Design time Object's name then I can provide them.

Thanks.

-Adrean.

Former Member
0 Kudos

Adrian, I think he means you can do the mapping assignment in the Interface Determination instead of an actual mapping in the BPM - this is more resource-effective.

so in the receive step that will trigger your BPM, you should have configured receiver determination and interface determination, you can configure a mapping for this interface determination, instead of the doing a transform in the BPM.

sincerely,

--NM

Message was edited by:

Naomi Monnier

Message was edited by:

Naomi Monnier

moorthy
Active Contributor
0 Kudos

Hi Adrean,

<i>In the First Recieve step, Do I still have the Original Message that I got from the Source SAP or it is after the Mapping?</i>

>>>In the first Receiver Step you have the original Message you got from SAP e.g ReqMessageProxy.

In the BPM you have a sync send Say SYNCMessage.(Sync, Abstract Interface) To create this you need to have following 2 Interface

1) Req 2) Response.

i.e your Req = ReqMessageProxy - Abstract Async

Resp = RespMessageHttp (this response is used to send to a file) (Abstract Async)

Now for the Receiver Http Side, you have a sync Interface. e.g ReqHttp, RespHttp

Mapping Outside the bpm: In the blog Diagram, 11, 12,13,14

ReqMessageProxy(Abstract) -->ReqHttp

RespHttp-->RespMesageHttp.

Integration Directory Config:

1) Receiver Determination: from SAP to BPM (No mapping, no receiver agreement)

2) Receiver Determination: from BPM to Http (Use the above mapping and Reciever agreement)

3) Receiver Determination: from BPM to File ( No mapping , Receiver agreement)

Hope this helps,

Rgdss,

Moorthy

Former Member
0 Kudos

Hi Moorthy,

Thank you very much. So still one more question:

In Interface mapping Do I have to use the Abstract Synch interfaces or Inbound and outbound synch Interfaces?

Thanks,

-Adrean.

moorthy
Active Contributor
0 Kudos

In the Interface Mapping you need to use SYNCH Interface ( which inturn comprises of Req and Resp)

Rgds,

Moorthy

Former Member
0 Kudos

Hi Moorthy,

Thanks and let me give it a try and if I will run in to any issue will let you know.

Thanks.

-Adrean.

Former Member
0 Kudos

Hi Moorthy,

As you said while I am doing BPM -> HTTP Receiver Determination it is fine but when I try to go with Interface determination in the Interface Mapping it says no object found.

Any Idea why it is so?

-Adrean.

Former Member
0 Kudos

This is usually because you do not have a mapping object from the source interface to target interface (names and namespaces have to be accurate in map in order to be pulled in the ID)

activate the mapping and then you should see it in the ID when you select the source and target.

if the interfaces and namespaces are the same then you dont need a mapping.

sincerely,

--NM

Former Member
0 Kudos

Thanks Naomi,

The issue was slightly different though, I have forgot to add all the custom Interfaces in to my Business Service in ID. Once I did it it is fine.

Though When I started testing the configuration, it is giving me following error:

HTTP connection to ABAP Runtime failed.

Error: Unexpected end of file from server URL: http://*******.*****.com:8040/sap/xi/simulation?sap-client=100

User: PIDIRUSER

Any Idea what is still wrong?

-Adrean.

Former Member
0 Kudos

Have you tested scenarios on this before?

If not, ensure the testing service is activated from SICF

sincerely,

--NM

Former Member
0 Kudos

Hi Naomi,

Yes The test service is Active.

-Adrean.

Former Member
0 Kudos

Have you tested scenario's successfully before?

few suggestions

- check your payload

- check authorizations for the PIDIRUSER

- check the service is it active, are the config entries accurate (client, lang etc)

- XI channels ensure the pipeline definition is accurate

sincerely,

--NM

moorthy
Active Contributor
0 Kudos

Hi,

Hope as mentioned all services in SICF is active i,e all XI services.

Also pipeline url is correct in the SLDBusiness system><Your integration server>-->Pipeline URL it should be

http://<server>:<http port>/sap/xi/engine?type=entry

And all PI service user id s are correct and not locked.

Rgds,

Moorthy

Former Member
0 Kudos

PIDIRUSER was locked.

Thanks.

-Adrean.

Answers (0)