SAP NetWeaver Gateway provides a standards-based way to access SAP data and services from any device or application. It uses open protocols like REST and OData to expose SAP applications to external consumers. Gateway services are built from data provider and model provider classes and configured through service groups and technical model objects. These services can then be consumed from any technology that supports calling REST APIs. The Gateway simplifies development by removing the need for SAP-specific knowledge and allowing access to SAP systems from non-SAP developers.
Gateway is open and provides access to SAP Business Suite Data for multiple devices, experiences and platforms.In addition to mobile devices, the interfaces provided by Gateway can be accessed by any Web based applications as well as Enterprise Software and social platforms.Gateway services are optimized for user interaction scenarios. They are not targeted for A2A or B2B scenarios and are thus not intended to be a replacement for the existing Enterprise Services.Gateway supports the timeless principle since it offers non-disruptive access to any SAP Business Suite version.No internal knowledge of an SAP system is required before a developer can consume a Gateway service. The only prerequisite understanding is they are familiar with the OData protocol.
The Open Data Protocol (OData) is a web protocol for querying and updating data. It has been referred to as “ODBC for the Web”.OData is based on HTTP(S) communication and the Atom Publishing Protocol (AtomPub).For more detailed information, please refer to http://www.odata.orgService DocumentA Service Document is a URL lists all the resources available from a particular service.For instance http://services.odata.org/OData/OData.svcEntity Sets represented as Atom FeedsAn Entity Set is a resource that can be acted upon in some way. Entities are typically represented as Atom Entries and a Collection of typed Entries where an Entry is a record with a:KeyList of properties (primitive and/or complex types)Service OperationsA Service Operation is a verb that performs some task on the resource.Service Operations can accept zero or more input parameters and return entriesService Metadata Document A Service Metadata Document is a self-describing set of metadata that provides an external software system with all the information necessary to consume the particular OData service.The metadata description can be obtained by adding the keyword $metadata to the end of the Service Document URL.For instancehttp://services.odata.org/OData/OData.svc/$metadata
Technical Use CasesConsumption of well defined SAP Netweaver Gateway objects, e.g. Duet Enterprise or Alloy for connected application systemsConsumption of centrally deployed application contentBenefitsGateway enables routing for Alloy/DUET /Mobile scenarios against multiple backendsDecoupled lifecycle of consumer apps from application backendCentral management of routing & connectivity with application systems SAP Gateway capabilities need to be deployed only once within the landscapeSeparate SAP Gateway system can be implemented in DMZ for external accessIndependent innovation speed of SAP Gateway and connected application systemsConsiderationsSAP Gateway enabling component has to be installed in each application systemCreation of new SAP Gateway objects requires high effortYou can only call coding from the server that is remote enabled like RFC's, BAPI's or Web ServicesThere is always the need for some kind of adaptation between the backend logic and the data model which exposes this logic through OData services with SAP Annotations.This adaptation can be defined either on the Gateway or on the backend which is discussed in the next slideGateway offers support to generate an adaptation against some backend without modifying the backend. With SAP NetWeaver Gateway 2.0 the adaptation of BOR Objects, RFC Function Modules and Screen Scraping are supported. The Tooling is based on model driven development.Alternatively adaptation can be coded in ABAP on the Gateway Server.If the interfaces for data provisioning on a backend already match the requirements, e.g. the RFCs exist, a complete adaptation on Gateway is feasible. Basically, the adaptation wraps remote calls to the backend and converts data between the RFC’s tables and the Gateway API. If However the required remote interfaces do not exist, adequate RFCs for data provisioning would have to be developed.In such a case it would be better to perform the adaption on the backend directly and one should go for the Odata Channel which is described in the following slide.
Technical Use CasesConsumption of well defined SAP Netweaver Gateway objects, e.g. Duet Enterprise or Alloy for connected application systemsConsumption of centrally deployed application contentBenefitsGateway enables routing for Alloy/DUET /Mobile scenarios against multiple backendsDecoupled lifecycle of consumer apps from application backendCentral management of routing & connectivity with application systems SAP Gateway capabilities need to be deployed only once within the landscapeSeparate SAP Gateway system can be implemented in DMZ for external accessIndependent innovation speed of SAP Gateway and connected application systemsConsiderationsSAP Gateway enabling component has to be installed in each application systemCreation of new SAP Gateway objects requires high effortYou can only call coding from the server that is remote enabled like RFC's, BAPI's or Web ServicesThere is always the need for some kind of adaptation between the backend logic and the data model which exposes this logic through OData services with SAP Annotations.This adaptation can be defined either on the Gateway or on the backend which is discussed in the next slideGateway offers support to generate an adaptation against some backend without modifying the backend. With SAP NetWeaver Gateway 2.0 the adaptation of BOR Objects, RFC Function Modules and Screen Scraping are supported. The Tooling is based on model driven development.Alternatively adaptation can be coded in ABAP on the Gateway Server.If the interfaces for data provisioning on a backend already match the requirements, e.g. the RFCs exist, a complete adaptation on Gateway is feasible. Basically, the adaptation wraps remote calls to the backend and converts data between the RFC’s tables and the Gateway API. If However the required remote interfaces do not exist, adequate RFCs for data provisioning would have to be developed.In such a case it would be better to perform the adaption on the backend directly and one should go for the Odata Channel which is described in the following slide.
Technical Use CasesEnable applications to be consumed by popular devices via application specific contentScenarios not requiring any routing across different backendsBenefitsDirect local access to metadata and business data Less runtime overheadNo content merge for different applications requiredNo additional separate SAP Gateway system requiredConsiderationsInnovation speed of SAP Gateway and application system need to be in syncDevices need to be integrated with application system on a point-to-point baseDedicated SAP Gateway content not availableIn general we cannot eliminate the backend component since its very task is to expose new tailored interfaces for consumption through SAP NetWeaver Gateway.However, we can eliminate the adaptation component on the Gateway Server. Conceptually, this is achieved by moving the adaption logic to the backend.The resulting concept code is called OData Channel.Hence, the corresponding Gateway API for data and metadata provisioning will be on the backend.This is achieved through interfaces that are provided by the ABAP AddOn IW_BEP that has to be installed in the backend system.Complete adaptation in a backend component leads to significant simplifications in development, maintenance, and deployment.This is because the OData Channel enables the lifecycle of content and metadata to be within one software component in the backend system.
The configuration screen asks you to enter the internal service name and then uses this value as the external service name.Be careful to enter the name here that you want the end user to see.There is no need to start the internal service name with a Z character, and remember that the value you enter is case-sensitive.
The activation of a Gateway service takes place in whichever SAP system has the GW_CORE component. This may well be a different system than the one in which you developed the Gateway Service.
The activation of a Gateway service takes place in whichever SAP system has the GW_CORE component. This may well be a different system than the one in which you developed the Gateway Service.