How to create OData services in SAP / SAP HANA system

This blog post will teach you how to create OData services in SAP / SAP HANA system. You will learn the basics of OData, how to create a data model, and how to generate and deploy your OData service.

Step 1. Go to transaction code – SEGW 

process to create Odata services in SAP

Click on Icon Create. A pop window will appear , Fill the details as per below mention in screen shot and click on check icon or enter.

process to create Odata services in SAP

Below screen will appear where you can see below folder in project. In Folder data model, we can see three sub folders. Entity Type – it acts as work area , Entity Sets -It act as internal table and associations.

process to create Odata services in SAP

Now we are going to define structure of work area and internal table , Right click on Data model select import and select DDIC structure .

process to create Odata services in SAP

Here give the details of structure and structure name as per below screen below.

Select radio button Entity type and and click on check box entity set. fill ABAP structure as VBAK and click on next

process to create Odata services in SAP

Now you will get the pop up screen with VBAK table fields name. Select fields for your structure and click on next.

process to create Odata services in SAP

Other window will appear where we have to select the key field. tick on Vbeln as key field and click on finish. You may get warning message , it can be totally ignored.

process to create Odata services in SAP

Now expand folder entity type and fill the below parameters in properties , Please don’t tick Null check box for VBELN as it is key field.

process to create Odata services in SAP

Similarly Create Structure for SD Item following same steps

process to create Odata services in SAP
process to create Odata services in SAP
process to create Odata services in SAP
process to create Odata services in SAP

click on Save button at the top of menu bar

Now click on generate Icon, A pop up window will appear with class details , click on tick icon and proceed further. It will ask for package , give details and proceed further . These are also knowns as runtime artifacts.

process to create Odata services in SAP

Step 2. Go to transaction code /IWFND/MAINT_SERVICE .

Click on push button Add services .

process to create Odata services in SAP

Next screen will appear, give the alias name and execute , Search you for your project .

process to create Odata services in SAP

Now double click on your project name . A pop up window will appear , enter the package details and click on tick icon. An Information message will be shown where it will confirm about the service is created and metadata loaded successfully

process to create Odata services in SAP

Now click back and go to main screen of transaction /IWFND/MAINT_SERVICE and find your service.

Click on SAP Gateway Client

process to create Odata services in SAP

A new screen will come, Execute the transaction and check the response .

process to create Odata services in SAP

Now we will write code to get data.

Step 3. Go to transaction code SEGW and expand folder service Implementation  .

Under service implementation – Expand SDheaderSet. you will find different options. Right click on GetEntitySet and select GO to ABAP work Bench . It will redirect to the class

process to create Odata services in SAP

Now expand the method drop down and select method for GetEntitySet for Header data and right click and select redefine.

process to create Odata services in SAP

Write below code in method. Save and activate all related objects for classes.

process to create Odata services in SAP

Similarly , Write code for GetEntitySet for Item and activate .

process to create Odata services in SAP

Step -4

Go to transaction /IWFND/MAINT_SERVICE and find out you service , select your service and click on load metadata.

process to create Odata services in SAP

Information message will pop up – Metadata has been loaded successfully.

Now Click on SAP Gateway Client .

process to create Odata services in SAP

Now Click on Entity set.

process to create Odata services in SAP

Select entity for header and enter

process to create Odata services in SAP

Click and execute and you will get the header data in response

process to create Odata services in SAP

Similarly, Select entity set for item and execute . You will get data for item

process to create Odata services in SAP

Here , We had completed our Odata service creation with a Service Builder Project with two entities and two entity-sets. We have generated the runtime artifacts and registered and activated our OData service. We had redefined methods of header and item entity set , load metadata and test the entity set with for test data.

Thanks

Leave a Comment