Beruflich Dokumente
Kultur Dokumente
Wrap abap stuff in backend. Next version will have JSON built into it along with MS oData standard. Is GW a game changer? May be not. It can be seen as developer productivity tool. Abaper can expose SAP functionality in a standard way. Customers might not be happy with the way SAP is charging (licensing model). Need more details.
Questions: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Architecture Performance Constraints Hardware requirements Software requirements License requirements Features (Risks vs Benefits). Distributed or centralized better? Development time Online Resources
1. Architecture
Gateway allows you to expose your SAP systems with REST HTTP service calls instead of cryptic BAPIs, or even highly complex SOAP services (that are better suited for PI). REST is a really simple and fast web service interface that is extremely easy to integrate. If you aren't familiar with BAPI's, they can be very powerful and critically useful. If you are an ABAP programmer they may even be easy to use. However, to a 3rd party, or anyone integrating with SAP, these are downright cryptic:
SAP Netweaver Gateway is an ABAP Add-On for Netweaver 702. It generates these simple REST services (create, read, update, delete, and query) based on the back-end business objects. Once these services are exposed, you can easily consume them from consumers like mobile-devices. There are a few challenges I would like to note. This is a relatively new product, and very few of these business objects come out of the box. A good knowledge of the business objects and ABAP is really important to create these. Also the basis and technical setup is not arbitrary. Those points aside, I was able to create a RESTful set of services based on Invoices in ERP in just a few hours. As this product matures, and more objects come out of the box, it will be exciting to see the innovative ways that SAP data can be used throughout the enterprise.
OData (Open Data) Protocol:is a Web protocol for querying and updating data. OData is the data access API. Based on web technologies like HTTP, Atom Publishing Protocol (AtomPub) and JSON. It provides a uniform way to expose, structure, query and manipulate data using REST practices and JSON or ATOM syntax to discribe the payload. OData is the web-based equivalent of ODBC, OLEDB, ADO.NET and JDBC. Atom is the XML format in which OData data is published. AtomPub is the protocol to provide not only getting Atom data, but also creating it, updating it and deleting it, all of which OData relies upon. Finally, OData provides a set of features on top of Atom and AtomPub to make the data query and manipulation richer.
In OData, the documents are the data being acted upon (Business Objects, etc).
http://msdn.microsoft.com/en-us/library/ff478141.aspx
Gateway consists out of server components and (optional) backend components that are deployed as SAP NetWeaver Application Server ABAP (AS ABAP) add-ons that you install on top of your existing SAP Business Suite or application platform.
On the following picture we depict a high level architecture of SAP NetWeaver Gateway.
Consumers: Any UI-centric client (groupware application, mobile application, Development Environment, Excel spreadsheet, ...) consuming OData protocol-compliant resources that are exposed by Gateway with additional SAP Annotations. This also subsumes cases where UI-centric clients access Gateway indirectly via additional infrastructure components such as Web or groupware servers. Gateway Core: The Gateway Core Technology components encompass several central components such as runtime components, the OData for SAP Library and the MetaData Infrastructure*.* Data Source Providers: Data provisioning implementations done on Gateway as a hub usually need to access business suite systems either via RFC or Web Service. The Content Provider Connectivity abstracts from such protocol specifics by means of a System Alias, which can be configured by the administrator to point to the desired RFC and/or Web Service destination. Tools: Gateway offers a SE80 based design time tool that allows for the generation of Gateway services following a top-down approach. Based on existing objects such as RFC
function moduls, BOR objects or Dynpro Screens it is possible to generate Gateway services without the need to write a sinle line of code. AddOn for Backend Enablement and event Publishing (IW_BEP): This AddOn is needed for scenarios where business events from the backend are being pushed to the Gateway system, where they are translated into OData Protocol for SAP-compliant Notifications and forwarded to the respective consumer agents. It is also needed for scenarios that are based on the OData Channel where the implementations is done"close" to the actual business data in the backend.
Note 1735987 - SAP NetWeaver Gateway 2.0 GW_CORE 190 IW_FND 240 Constraints Note 1574568 - SAP NetWeaver Gateway 2.0 - Known Constraints
4.Hardware Requirements
Hardware
The minimum hardware requirements for SAP NetWeaver Gateway are as follows: Requirements Processor Random Access Memory (RAM) Hard Disk Capacity Specification Dual Core (2 logical CPUs) or higher, 2 GHz or higher 8 GB or higher 80 GB primary, or higher
5. Software Requirements
The minimum software requirements for SAP NetWeaver Gateway are as follows: Requirements SAP NetWeaver Stack Specification The latest kernel patch for the corresponding SAP NetWeaver version has to be applied.
Requirements
Specification Framework Components GW_CORE and IW_FND SAP NetWeaver 7.0 SPS25 SAP NetWeaver 7.01 SPS10 SAP NetWeaver 7.02 SPS07 SAP NetWeaver 7.03 SPS01 SAP NetWeaver 7.31 SPS01 SAP NetWeaver 7.0 SPS18 SAP NetWeaver 7.01 SPS03 SAP NetWeaver 7.02 SPS06 SAP NetWeaver 7.03 SPS01 SAP NetWeaver 7.31 SPS01
Business Enablement Provisioning Component IW_BEP Content Adapter Components IW_SPI, IW_PGW Screen Scraping Component IW_SCS Content Adapter Component IW_HDB
SAP NetWeaver 7.02 SPS09 SAP NetWeaver 7.03 SPS01 SAP NetWeaver 7.31 SPS01 SAP NetWeaver 7.01 SPS03 SAP NetWeaver 7.02 SPS06 SAP NetWeaver 7.03 SPS01 SAP NetWeaver 7.31 SPS01 SAP NetWeaver 7.02 SPS07 SAP NetWeaver 7.03 SPS01 SAP NetWeaver 7.31 SPS01 SAP WEB UIF 7.01 SP01 SAP WEB UIF 7.31 SP00 SAP WEB UIF 7.0 SP03 SAP WEB UIF 7.01 SP00 SAP WEB UIF 7.31 SP00
SAP Backend
7. Risks(/disadvantages) VS Benefits
RISKS/DISADVANTAGES New system, unknown risks. Licensing issues. Additional system to maintain
BENEFITS Increase in productivity of non-abap developers Expose SAP functionality in standard way
Sample Data: http://bxnwgateway.bx.com:8000/sap/opu/odata/sap/Z_BANK_DEMO_SRV/?$format=xml <?xml version="1.0" encoding="utf-8"?><app:service xml:base="http://bxnwgateway.bx.com:8000/sap/opu/odata/sap/Z_BANK_DEMO_SRV/" xmlns:app="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:sap="http://www.sap.com/Protocols/SAPData"><app:workspace><atom:title>Data</atom:title>< app:collection sap:pageable="false" sap:addressable="false" sap:content-version="1" href="Banks"><atom:title>Banks</atom:title><sap:member-title>Bank</sap:membertitle></app:collection></app:workspace><atom:link rel="self" href="http://bxnwgateway.bx.com:8000/sap/opu/odata/sap/Z_BANK_DEMO_SRV/"/><atom:link rel="latest-version" href="http://bxnwgateway.bx.com:8000/sap/opu/odata/sap/Z_BANK_DEMO_SRV/"/></app:service>
Metadata: http://bxnwgateway.bx.com:8000/sap/opu/odata/sap/Z_BANK_DEMO_SRV/$metadata
1. <?xml version="1.0" encoding="utf-8"?> 2. <edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata " xmlns:sap="http://www.sap.com/Protocols/SAPData"> 3. <edmx:DataServices m:DataServiceVersion="2.0"> 4. <Schema Namespace="Z_BANK_DEMO_SRV" xmlns="http://schemas.microsoft.com/ado/2008/09/edm"> 5. <EntityType Name="Bank" sap:content-version="1"> 6. <Key> 7. <PropertyRef Name="bankID"/> 8. <PropertyRef Name="bankCountry"/> 9. </Key>
10.
<Property Name="city" Type="Edm.String" Nullable="false" MaxLength="35" sap:label="City" sap:creatable="false" sap:updatable="false" sap:sortable="false" sap:filterable="false"/> 11. <Property Name="street" Type="Edm.String" Nullable="false" MaxLength="35" sap:label="Street" sap:creatable="false" sap:updatable="false" sap:sortable="false" sap:filterable="false"/> 12. <Property Name="region" Type="Edm.String" Nullable="false" MaxLength="3" sap:label="Region" sap:creatable="false" sap:updatable="false" sap:sortable="false" sap:filterable="false"/> 13. <Property Name="bankName" Type="Edm.String" Nullable="false" MaxLength="60" sap:label="Bank name" sap:creatable="false" sap:updatable="false" sap:sortable="false" sap:filterable="false"/> 14. <Property Name="bankID" Type="Edm.String" Nullable="false" MaxLength="15" sap:label="Bank Key" sap:sortable="false" sap:filterable="false"/> 15. <Property Name="bankCountry" Type="Edm.String" Nullable="false" MaxLength="3" sap:label="Bank Country" sap:sortable="false" sap:filterable="false"/> 16. </EntityType> 17. <EntityContainer Name="Z_BANK_DEMO_SRV" m:IsDefaultEntityContainer="true"> 18. <EntitySet Name="Banks" EntityType="Z_BANK_DEMO_SRV.Bank" sap:pageable="false" sap:addressable="false" sap:content-version="1"/> 19. </EntityContainer> 20. <atom:link rel="self" href="http://bxnwgateway.bx.com:8000/sap/opu/odata/sap/Z_BANK_DEMO_SRV/ $metadata" xmlns:atom="http://www.w3.org/2005/Atom"/> 21. <atom:link rel="latest-version" href="http://bxnwgateway.bx.com:8000/sap/opu/odata/sap/Z_BANK_DEMO_SRV/ $metadata" xmlns:atom="http://www.w3.org/2005/Atom"/> 22. </Schema> 23. </edmx:DataServices> 24. </edmx:Edmx>