Search code examples
.netweb-serviceswsdlodatasap-gateway

Consuming SAP Web Service in .net or sharepoint


I have received these three links from SAP team.

http://nmb.net:2525/sap/opu/odata/sap/empl/

URL for service document:

http://nmb.net:2525/sap/opu/odata/sap/empl/?$format=xml

URL for metadata:

http://nmb.net:2525/sap/opu/odata/sap/empl/?$metadata

If I open them in the browser I am getting this result:

<app:service xml:lang="en" xml:base="http://os0.nmb.net:2525/sap/opu/odata/sap/ZEMPLOYEERFCGEBO/">
<app:workspace>
<atom:title type="text">Data</atom:title>
<app:collection sap:deletable="false" sap:content-version="1" href="EmployeeCollection">
<atom:title type="text">EmployeeCollection</atom:title><sap:member-title>Bank</sap:member-title>
</app:collection>
</app:workspace>
<atom:link rel="self" href="http://os0wdddc.ores.net:8021/sap/opu/odata/sap/ZEMPLOYEERFCGEBO/"/>
<atom:link rel="latest-version" href="http://os0wdddc.ores.net:8021/sap/opu/odata/sap/ZEMPLOYEERFCGEBO/"/>
</app:service>

Is this the wsdl that we normally get? How do I format the URL above to get some data back as I would normally get when I create a custom service in .net and view it in browser?

Edit 1:

If I use the provided URL and I add service reference in visual studio project, I get:

Operations: WCF Data Service: No operations found

Solution

  • It's fairly simple. Open your metadata – by opening

    http://os0.nmb.net:2525/sap/opu/odata/sap/ZEMPLOYEERFCGEBO/?$metadata
    

    in your browser – and then append the names of entity sets at the end of URL. See few examples here and here.