Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
DeepakGDeshpande
Associate
Associate
7,604

Introduction


SAP Cloud Integration version 2.44.x comes with enhancement in OData V2 receiver adapter with support of Function Import. For more information on function import (also termed as Service Operation in OData V2) can be found in https://www.odata.org/documentation/odata-version-2-0/

This blog describes on how to make use of this enhancement.

Function Import Enhancement


The support for function import has been added as an operation in the OData V2 receiver adapter/connector and in the Query Modeler/Wizard.

Consider a sample integration flow as below, with which usage of function import is described.



 

In the adapter properties, you can observe the Function Import operation in Operation Details.



 

If you have a working URL of function import, you can select this operation and provide the function name in Resource Path and the parameters information in Query Options field.

If you are not aware of the function name of the OData V2 service endpoint, you can make use of Query Modeler/Wizard.

Click on Select button, which opens the wizard. The first screen pre-populates the connectivity information.



 



 

Click on ‘Step 2’ button.

In the next screen, select Function Import in operation and click on search icon/key in the function name text field, it will list the available function imports of the OData V2 service as shown in below screenshot.



 



 

After selecting the function import, table will be populated with parameters name which will be required to invoke the function.



If a function import is of method GET and returns entity or collection of entity, the wizard will list all the fields of that entity. You can select the individual fields. Also, you can construct filter and sorting queries along with top and skip.

Click on finish button, the constructed query will be put on to the OData V2 adapter’s properties.



 

Deploy the integration flow project and you can examine the output of function import in the SFTP receiver (as modeled in the sample integration flow project) or you can use the result of function import in the next subsequent flow steps.

Note:

  1. As of now, we support the function import with the return type entity or collection of entities. If function import returns complex/collection of complex or primitive/collection of primitive type or void, are not supported.

  2. The support for Function Import in SuccessFactors OData V2 adapter is not available and is work in progress.

11 Comments
brunoambrozio
Participant
0 Kudos
Hi Deepak,

It's good to know that Function Import will be released for CPI adapter. With your blog it's clear how it will work.

I have searched on help.sap, but I could see just the last release on August 11th (version 2.43.11).

Do you have the release date for 2.44? We are needing this update for our customer.

Thanks.

Bruno Ambrozio
DeepakGDeshpande
Associate
Associate
0 Kudos
Hi Bruno Amrozio,

Thanks for the feedback.

The scheduled date of 2.44.x release is on or following days of 1st Sep 2018. I request you to check your SAP Cloud Platform Integration tenants in calendar week 36 2018 for the availability of 2.44.x .

 

Thanks

Deepak
brunoambrozio
Participant
0 Kudos
Hi Deepak,

Thank for your prompt reply! I check it!

Regards

Bruno Ambrozio
S0001922941
Discoverer
0 Kudos
Hi Deepak,

Thanks for this blog .

I have one question how do I fill the parameters if the parameters comes from an input service / file ?

regards

 

Jean.

 
DeepakGDeshpande
Associate
Associate
0 Kudos
Hi Jean,

I recommend that you first capture information of your parameters coming from file or input service in headers or properties (via content modifier or script step before the OData adapter/connector step) and then use the headers or properties in the function import parameters.

 

Thanks

Deepak
0 Kudos
Hi Deepak - Does this support i.e. Function Import and to be specific on Position Object any effective date query parameter i.e. asOfDate or effectiveEndDate to retrieve future dated records?
DeepakGDeshpande
Associate
Associate
0 Kudos
Hi Jimish,

Which service does Position Object have? Is it SuccessFactors?

 

Thanks

Deepak
ragulan_ravi
Discoverer
0 Kudos

Hi Deepak,

Thank you for this blog. I have a query.

In our landscape, there is an IFlow where we generate the Person ID using the generateNextPersonID API which is present in the SuccessFactors.

Endpoint is https://xxx.successfactors.com/odata/v2/generateNextPersonID. Currently we use HTTP connector in SAP CPI to get the new User ID.

With the depreciation of User based Authentication in Successfactors, we moved all our Iflows to OAuth2 SAML Bearer Assertion Authentication. We followed your blog "SAP Cloud Integration – OAuth2 SAML Bearer/X.509 Certificate Authentication Support in SuccessFactors Connector".

We changed the Authentication of the HTTP connector to "OAuth2 SAML Bearer Assertion". But we are getting the below error

"java.lang.IllegalArgumentException: Cannot generate OAuth 2.0 SAML Bearer Assertion because there is no user logged in the current thread."

We also tried to use the OData Adapter but there is no "OAuth2 SAML Bearer Assertion" authentication method. Is there a possibility that the OData connector will support this Authentication method in the next release? Or Will there be an "Function Import" operation in the SuccessFactor connector?

Or is there any other workaround?

Your inputs will be highly appreciated.

Regards,
Ragu

DeepakGDeshpande
Associate
Associate
0 Kudos
Hi Ragu,

Here is the answer for your question https://help.sap.com/docs/CLOUD_INTEGRATION/368c481cd6954bdfa5d0435479fd4eaf/72ef31d2739a4b079f0d297...

search for OAuth2 SAML Bearer Credential in HTTP in that release notes for more information

 

Thanks

Deepak
ragulan_ravi
Discoverer
0 Kudos
Hi Deepak,

Thank you for the immediate response. Appreciated!!
I have implemented OAuth2 SAML Bearer Credential in HTTP following the link you have mentioned. But it looks like issue is known one and SAP is working on that.

https://launchpad.support.sap.com/#/notes/3210642

Hopefully this error will be resolved in the future releases.

Regards,
Ragu
DeepakGDeshpande
Associate
Associate
0 Kudos
Hi Ragu,

I will be checking on the note, but meanwhile, I propose that you try the scenario with new HTTP receiver adapter by re-creating (remove the existing adapter and add new one, which adds new 1.11 version of HTTP receiver adapter) it.

 

Thanks

Deepak