cancel
Showing results for 
Search instead for 
Did you mean: 

Synchronous Scenario.

Former Member
0 Kudos

Hi dear experts.

I have a requirement for new scenario. like this.

Third Party----->SAP PI -


>ECC->PI----ThirdParty.

Basically a partner.send a Message then PI received and sent to ECC(Proxy) then inmediatly return a response to PI finally we should sent the response to thirdParty.

Is posible to do that with synchronous scenario..or do I need anything else?.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Why dont you think about avoiding a synchronous call back from ECC , by setting up an ASNYC interface by means of a trigger in ECC , when the data is avaiable.. That way you can avoid expected lags in processing business logic in case of voluminous data..

REgards

Krishna

Former Member
0 Kudos

Hi.

Thanks for your inputs.

My scenario is working however I have a problem.

send data by Parameter .. I get the value from Parameter by UDF , for my mapping I tried to get the value but the blank spaces is missing.

For example

I send my Data : Abcd%20%20%20%2012345%20%20%20%20ABCD

Payload : Abcd 12345 ABCD. (only 1 withspace)

How can I get the real data?

Krish....

The scenario is only for few data.

Regards.

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

I get the value from Parameter by UDF , for my mapping I tried to get the value but the blank spaces is missing.

For example

I send my Data : Abcd%20%20%20%2012345%20%20%20%20ABCD

Payload : Abcd 12345 ABCD. (only 1 withspace)

How can I get the real data?

Once you get the parameter by UDF, use a find/replace function to replace %20 with the whitespace, you can do this outside of the UDF or inside e.g

Outside UDF


UDF -> replaceString -> Target
Constant: %20 -> /
    Constant: -> /

or in your UDF specify the .replaceAll String function after you got the parameter by using UDF


parameter.replaceAll("%20","");

Hope this helps,

Mark

Edited by: Mark Dihiansan on Feb 22, 2012 2:10 AM

Answers (2)

Answers (2)

gagandeep_batra
Active Contributor
0 Kudos

Hi

plz follow the link, it may help.

http://www.saptechnical.com/Tutorials/XI/Proxy/SS.htm

Regards

Gagandeep

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

Is posible to do that with synchronous scenario..or do I need anything else?.

Yes, it is possible with a synchronous scenario.

Regards,

Mark

Former Member
0 Kudos

Hi Mark.

Thanks for your response.. however I have a doubt , do I need two interface synchronus? ..

Can you give me the steps..?

Regards

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

Thanks for your response.. however I have a doubt , do I need two interface synchronus? ..

In ESR

1.) 2 Sych Interfaces (1 Outbound - from thirdparty, 1 Inbound - to Proxy)

2.) 4 messages (2 for Outbound Req/Res, 2 for Inbound Req/Res)

Take note that ABAP Proxies can only be activated using the same message types e.g if you are using messageTypes, only use messageTypes. If external definition, only use external definitions for Request/Response otherwise the proxy cannot be created.

3.) It depends if you are using mapping because if you are, you also need to create an operation mapping

In ID

1 business component (if A2A) or 1 party (B2B) with Sender Comm Channel

1 business system with XI Receiver Comm Channel (for Proxy)

1 Receiver Determination

1 Interface Determination

1 Sender Agreement (for third-party)

1 Receiver Agreement (pointing to Proxy Receiver)

Hope this helps,

Mark

rajasekhar_reddy14
Active Contributor
0 Kudos

Hi,

ECC side use Proxy/BAPI because both supports sync cals.

Is your third party system supports Sync calls? how you are connecting third party syste,? if it supports Web service calls then use SOAP adapter without BPM you can achive this req easily.

If third party system not supporting Sync cals then use BPM, but both cases only one interface required.

Search in sdn. you will find many docs.

Regards,

Raj

Former Member
0 Kudos

Hi..

Thanks you Mark and Raj for your inputs.

The third party will be send the message by HTTP and receive response by the same way.

Regards