Enterprise Cloud Connect™: REST Integration

REST has gained widespread acceptance across the Web as a simpler alternative to SOAP- and Web Services Description Language (WSDL)-based Web services. Key evidence of this shift in interface design is the adoption of REST by mainstream Web 2.0 + service providers—including Facebook, Yahoo, and Google who have deprecated or passed on SOAP and WSDL-based interfaces in favor of an easier-to-use, resource-oriented model to expose their services.

For the Enterprise/ERP world, our REST approach solves several core technical problems that have long hindered interoperability initiatives and interface development attempting to solve the SAP-to-any reasonable UI problem:

  • Ability to access the deep structure or nested data found in SAP
  • Ability to drive all aspects of the UI, including configuration support, fields, data elements
  • Ability to leverage standard, release BAPIs from SAP in a UI agnostic framework
  • Separation between ERP core system objects and UI components; if the ERP configuration is changed; the UI components are not affected
  • Ability to support various ERPs or LOB systems within one UI
  • Ability to easily support/surface user exists, Business Add-Ins (BADIs), or custom Remote Function Calls (RFCs)
  • Greatly accelerated development, less effort required

An Example – SAP Infotype 0002, Personal Details

ithin Enterprise Cloud Connect™, we publish a RESTful service for Personal Details within SAP. It supports create, read, change and delete, the standard SAP activities needed to support this data.

Assuming a developer has written a token service or is leveraging the delivered user authentication service delivered with Enterprise Cloud Connect™, the following REST service URL is referenced:

URL: http://…/PAService/PersonalDetail/Get/{PERNR} or {USERTOKEN}

HTTP Method: GET

This URL returns a Javascript object notation (JSON) string.  The JSON string returns everything in SAP for that employee; all field labels and data values for Infotype 0002. The developer would then use the JSON string with any UI development platform such as Xcode/Cocoa, Visual Studio, Java Eclipse, etc. Despite its relationship to JavaScript, JSON is language-independent, with parsers available for many languages. In many ways it is an alternative to XML.

Another advantage to using JSON is the broad browser support. The following browsers have or will have native JSON support, via JSON.parse() and JSON.stringify():

  • Mozilla Firefox 3.5+
  • Microsoft Internet Explorer 8+
  • Opera 10.5+
  • Google Chrome
  • Apple Safari

Some software solution providers indicate that in the future their tools will be able to return the JSON string, but will not provide access to the REST services for integration. Other products are developer only experiences that still rely on SOAP services with no CSS, and no configurable UI. In this case, to integrate to the LOB system, the developer would need to know the BAPIs, RFCs and function modules needed to support a given transaction. In addition they would then need to optimize those functions, develop the UI, create their own internal service framework and application architecture, and then deploy a solution. This is not an effective use of time, money or technical resources.

At Enterprise Cloud Connect™, we have architected a product solution that is optimized for flexibility in facilitating real business processes in the enterprise. Enterprise Cloud Connect™ includes the CSS, UX, and REST architecture in a platform solution. Enterprise Cloud Connect™ is still extensible via the REST API layer for customers to consume for a variety of functions, and that list continues to grow.

For more details and code snippets, see our technology page.

Comments are closed.