cancel
Showing results for 
Search instead for 
Did you mean: 

Sync communication with Exchange Rate server

Former Member
0 Kudos

Hi Experts,

I have a requirement to get the data from a currency exchange rate server (OANDA.com) in a synchronous scenario.I will send a request with 1 base curency like USD to this server and in response I will receive a conversion rate against 3 quote currency i.e.EURO, YEN and SAR.

SAP <------>  Exchange Rate Server

As per their Service Definition,OANDA’s FXML service is accessed using a POST 1 to a particular URL with a single request key named “fxmlrequest”.Clients may access the OANDA FXML service through a couple of URL options, depending on their security preferences.

 

Some clients may have firewall restrictions on outgoing TCP/IP connections that require a firewall rule referencing a static IP. For these clients we provide the following URL:

 

Unsecured: http://web-services.oanda.com/cgi-bin/fxml/fxml

Secured: https://web-services.oanda.com/cgi-bin/fxml/fxml

and unfortunately the fxML service is not a Webservice, they do not have a WSDL file to provide.

So in this case,

1.WS adapter or SOAP receiver adapter is a not a recommended choice.Does it make a difference if I still provide the https url.

2.Shoudl I try with HTTP adapter with secured URL.

Regards

Rebecca

Accepted Solutions (1)

Accepted Solutions (1)

baskar_gopalakrishnan2
Active Contributor
0 Kudos

You can use http adapter in synchronous mode. Refer SCN for http synchronous mode. You can set authentication if you want to consume https target URL. You can use target URL or RFC destination to specify the target address. create inbound message structure as per the requirement.

http://help.sap.com/saphelp_nw04/helpdata/en/43/64dbb0af9f30b4e10000000a11466f/content.htm

Answers (1)

Answers (1)

rajasekhar_reddy14
Active Contributor
0 Kudos

use HTTP adapter (anyways it support sync communictaion) before that you need to check the connectivty to web site from PI environment.

Ask Network team to open necessary ports.

Former Member
0 Kudos

Dear Raja Sekhar,

Could you please clear me on the following points.

1.     The url mentioned for the request message does not have any port.

          Unsecured: http://web-services.oanda.com/cgi-bin/fxml/fxml

          Secured: https://web-services.oanda.com/cgi-bin/fxml/fxml

2.     As we expect the response also from the server and suppose it too doesn't have the port what              would be my input to the network.

3.     <<Ask Network team to open necessary ports>>.

          Could you please suggest which are the necessary ports?

Tnx!!

Rebecca

rajasekhar_reddy14
Active Contributor
0 Kudos

When you conect to URL from PI landscape Netwrok team has to extablsih the connectivty between PI system environment to Web site , for that some changes required , you cant simply connect to web site from PI.

Request your network team to check the network.

Then create SOAP receiver channel and enter URL in SOAP channel and try to hit web site with request message and monitor receiver SOAP channel.

if SOAP channel did not work then use HTTP.

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

1.     The url mentioned for the request message does not have any port.

          Unsecured: http://web-services.oanda.com/cgi-bin/fxml/fxml

          Secured: https://web-services.oanda.com/cgi-bin/fxml/fxml

If the port is unspecified it just means that they are using the default port number:

http = 80

https = 443

2.     As we expect the response also from the server and suppose it too doesn't have the port what would be my input to the network.

You only have to configure the connection from your XI to the receiving system (assuming the connection from sending system is okay). The response message will find its way back via the hoplist in the XI SOAP header but you do not have to worry about that, it is automatic.

3.     <<Ask Network team to open necessary ports>>.

          Could you please suggest which are the necessary ports?

Tnx!!

Rebecca

Usually, there is a firewall preventing inbound messages from leaving XI, that is the reason why you ask your network team to open the XI ports. This port is found in tcode SMICM->shift+f1, if you are using webproxy then it would be a different matter.

Hope this helps,

Mark