GRC
HR
SCM
CRM
BI


Article

 

Leverage SAP Enterprise Services in a .NET Environment: SAP Enterprise Services Explorer for Microsoft .NET Makes It Easy

by Dr. Susanne Rothaug | SAPinsider

July 2, 2009

Discover how the new SAP ES Explorer helps developers in both SAP and .NET landscapes share and consume enterprise services between the two environments.
 

Discussions around enterprise services have tended to focus on using these services within an SAP environment. You’ve likely seen many cases in which SAP Business Suite applications provide services and composite applications based on SAP NetWeaver Composition Environment (SAP NetWeaver CE) consume them. But to truly fulfill the goals of service-oriented architecture (SOA) — flexibility, openness, and interoperability across platforms — enterprise services should also be easily available within non-SAP landscapes.

SAP has achieved these goals for the Microsoft .NET space with the new SAP Enterprise Services Explorer tool for Microsoft .NET (SAP ES Explorer), which allows convenient access to enterprise services within the .NET environment. SAP ES Explorer helps developers in both SAP and .NET landscapes work more efficiently by bridging the gap between the two environments and allowing developers to share and consume enterprise services.

An important element of SAP-Microsoft interoperability, SAP ES Explorer enables .NET developers to discover SAP enterprise services in the Services Registry of SAP NetWeaver and consume them in their own applications and, conversely, to publish their own .NET Web services for use in SAP applications. In this article, I’ll show you how to do both.

 

 

 

 

 

 

What Is SAP ES Explorer?

SAP ES Explorer, a design-time tool, is an add-in for Microsoft Visual Studio 2005 or 2008 and supports all types of .NET applications and languages. The solution also addresses the entire service paradigm — from consumer to provider. Developers can use the solution to discover enterprise services and consume them in their Visual Studio applications. And on the provider side, .NET developers can use SAP ES Explorer to publish their .NET-developed Web services to the Services Registry in the SAP environment.

Before SAP ES Explorer, if developers wanted to share enterprise services, they had to do so manually — by exchanging URLs for the WSDL files or downloading and saving the services’ WSDL files to their local file system, for example. SAP ES Explorer now allows both SAP and .NET developers to directly and easily access the central Services Registry and share the available pool of enterprise services.

 

 

 

Key Term: Interoperability

While interoperability is simply the ability of two or more systems or components to exchange information and then use that exchanged information, SAP’s focus is on how it allows companies to leverage existing IT investments and support long-term strategic decisions based on collaborating technologies.

 

 

 

 

 

The Services Registry as the Central Point of Interaction

SAP NetWeaver offers the Enterprise Services Repository and the Services Registry for the central creation, storage, and governance of SOA artifacts. These tools are available with SAP NetWeaver Process Integration 7.1 as well as with SAP NetWeaver Composition Environment 7.1.

The Enterprise Services Repository is the central repository in which service interfaces and enterprise services are modeled and their metadata is stored. The Services Registry, the central place of record for all executable services in a service landscape, contains all the information required to call a service. Providers publish their enterprise services here, and it’s here that consumers discover those services that can be consumed. The Services Registry is the component within SAP NetWeaver with which SAP ES Explorer communicates.

The Services Registry consists of a UDDI v3-based server, plus SAP-specific enhancements: a classification service and a user interface. In this way, the Services Registry complies with the UDDI standard, which is still the most widespread standard for service registries, while at the same time offering additional functionality such as semantically meaningful classifications on both a technical and a business level. Examples of business classifications include BusinessObject (such as Purchase Order, Leave Request, and Business Partner), ServiceInterface, and ProcessComponent. As I’ll discuss later in the article, you can search by classifications when consuming services, and you can add SAP classifications to the services you publish.

 

 

 

 

 

 

 

 

Set Up Your Services Registry Connection

To connect to the Services Registry, you’ll need to set the correct configuration properties for SAP ES Explorer. This is a one-time configuration; once you set it up for the first time, you won’t have to worry about it again.

From Visual Studio, navigate to Tools → Options. In the resulting screen (see Figure 1), specify the URL and credentials to the Services Registry installed in your landscape, both for discovering and publishing services. Your system administrator can provide this URL and the credentials for the back-end systems where the services are located. To test the querying functionality, you can use the Services Registry available from SAP at http://sr.esworkplace.sap.com.

 

 

 

NOTE!
The screenshots in the following sections are based on a fictional employee self-service UI for ordering company cars. The UI was created in Visual Studio using Microsoft Windows Communication Foundation. When an employee who wants to order a car clicks the “order” button, an SAP enterprise service to retrieve employee details is executed.

 

Figure 1
Configuring SAP ES Explorer

 

 

 

 

 

Once this setup is complete, let’s see how developers will use SAP ES Explorer in the context of their programming work.

How to Add SAP Enterprise Services to .NET Applications

To consume an SAP enterprise service in Microsoft Visual Studio, select “Add SAP Enterprise Service…” in the Solution Explorer of Visual Studio (see Figure 2).1 This action opens the logon screen where you enter your username and password and choose the service discovery mode — either “Search” or “Browse.” Depending on which you choose, you can either set search parameters or browse the entire tree of services in the Services Registry for suitable services you wish to consume.

 

 

 

Figure 2
“Add SAP Enterprise Service…” becomes a menu item in the Visual Studio Solution Explorer

 

 

 

 

 

Searching for Services: Basic or Advanced Options

You can use the basic search function to search for enterprise services by free text, service state, physical system, or a combination of these options (see the top of Figure 3). A few recommendations here:

  • If you know the exact name of the service you’re looking for, or you know what the service can do but you’re unsure about its implementation, search by free text.

  • Search by service state if, for example, you’re looking for configured services.

  • A physical system search is helpful if you’re looking for a service within a particular system; you can limit your search so you don’t retrieve services in systems you’re not authorized to access.

 

 

 

 

Figure 3
Basic and advanced search options in the Services Registry; the basic option allows you to search by free text, service state, or physical system, while the advanced option allows you to search by classification, such as BusinessObject,
DeploymentUnit, or ExtendedByIndustry

 

 

 

 

 

The advanced search feature allows you to search by SAP-specific service classifications (see the middle portion of Figure 3).

Browsing for Services

You can also use the browse option to discover services. Browsing by classification or physical system, you can navigate through all the enterprise services available in your registry based on the structure of the application hierarchy. Figure 4 shows a possible navigation path: BrowseByApplicationERP Applications without HCMAccounting.

 

 

 

Figure 4
The browse functionality of the Services Registry

 

 

 

 

 

To get a feel for the search and browse options of SAP ES Explorer and to view sample classifications, check out the Services Registry publicly available at http://sr.esworkplace.sap.com.

Selecting, Invoking, and Running the Service

Once you’ve designated your searching or browsing parameters, SAP ES Explorer calls the Services Registry to perform a search and retrieves service definitions (WSDL) and endpoints that fit those parameters. Another screen will then display a list of retrieved services. Once you pick one of these services, SAP ES Explorer will add the service reference to your project.

Next, the solution invokes the standard Visual Studio mechanism to create Web service or Windows Communication Foundation (WCF) service local proxies through which you can consume the service in your code. Finally, in the runtime environment, your application invokes the actual enterprise service through these proxies.

How to Publish .NET Web Services to the Services Registry

Now let’s complete the development cycles of search/browse and consume on the one hand, and create and publish on the other hand. By enabling .NET developers to publish Web services and make them available in the Services Registry, SAP ES Explorer enables SAP developers to search for and consume these .NET services in their SAP applications.

Once you’ve developed a reusable Web service in Visual Studio Solution Explorer that you would like to make centrally available to developers to create consuming applications, you can select the “Publish to SAP Services Registry…” menu option. In the resulting Publish Web Service screen, you can add information about your service, including service details, a URL, system details, and classifications (see Figure 5). It’s important to note that during the publishing process, you can add SAP classification metadata to Web services created on the .NET platform. This way, you can add the services to the semantic categories that already exist in your Services Registry. For example, you can classify a service belonging to the BusinessObject category as Business Partner.

 

 

 

Figure 5
In the Publish Web Service screen, developers can add details to a service, such as its technical name and a description

 

 

 

 

 

Once you enter the relevant information in the Publish Web Service screen and click “Next,” you’ll see a final screen where you can publish the service in real time. As soon as the service is published, it becomes available in the Services Registry — other developers can then search for, discover, and consume it from Microsoft Visual Studio or from any SAP consumer application or consumer tool, such as SAP NetWeaver Visual Composer. It’s that simple!

Conclusion

SAP ES Explorer leverages SAP enterprise services for the .NET community, thus enhancing the reach of SAP’s SOA story. The solution enables easy consumption of SAP enterprise services in the .NET environment and also enables publishing .NET Web services into the Services Registry for use in SAP composite applications. SAP ES Explorer is a cornerstone of the SAP-Microsoft interoperability offering, successfully linking the two landscapes.

You can download a trial version of SAP ES Explorer at https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/10cacdca-b0bb-2a10-77be-d600de4658b7. Please visit https://www.sdn.sap.com/irj/sdn/dotnet for additional information on .NET interoperability with SAP systems.

 

 

 

Additional Resources

  • SAP NetWeaver/.NET Interoperability by Andreas Rohr, Thomas Meigen, and André Fischer (SAP PRESS,
    http://store.sapinsider.wispubs.com)


  • “A How-To Guide for Consuming Services with SAP NetWeaver Composition Environment,” an SAP NetWeaver Unleashed column by Volker Stiehl (SAP Insider, April-June 2008, sapinsider.wispubs.com)

  • “Use SAP NetWeaver PI 7.1 tools for provisioning and consuming enterprise services in ABAP” by Prasad Illapani and Dr. Susanne Rothaug (SAP Professional Journal, September/October 2008, www.SAPpro.com)

 

Dr. Susanne Rothaug (susanne.rothaug@sap.com) is a Product Manager on the SAP NetWeaver SOA middleware team. She joined SAP seven years ago and has worked on various areas within SAP NetWeaver product management. Currently, Susanne focuses on process integration and SOA topics. She is a regular speaker at major SAP events including SAP TechEd.

 

 

 

 

 

 



1 Note that when you install the SAP ES Explorer add-in, options to use the tool automatically appear within Visual Studio. [back]


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

An email has been sent to:






More from SAPinsider



COMMENTS

Please log in to post a comment.

No comments have been submitted on this article. Be the first to comment!


SAPinsider
FAQ