Hello everyone, in this SAP HANA tutorial, we will learn how to expose Attribute Views as XS OData service in HANA. Lets get started.
1.Prerequisites
You should have installed SAP HANA Studio in your local machine.
You should have connected to HANA system with your HANA DB Credentials.
You should have Attribute View created in HANA Repository.Please read our previous tutorial on how to create Attribute View.
2.Step-By-Step Procedure
1. You need to change the Eclipse IDE perspective to SAP HANA Development. Navigate to Window → Open Perspective → Other to change the perspective of your HANA Studio to SAP HANA Development (OR) Select the SAP HANA Development perspective in the perspective shortcut which is at the top right corner of your SAP HANA Studio.
2. In the Open Perspective window, select SAP HANA Development Perspective and hit OK,

3. In the left section, you will see three new tabs Project Explorer, Repositories and Systems.Select Repositories tab.
4. Right click to create a new repository workspace for the HANA System you have already logged in.

5. In the Create New Repository Workspace window, select the HANA system for which you want to create workspace, enter Workspace name and hit Finish.

6. Your new workspace will be created.

7. Expand the created workspace and identify your repository package , right click on it and choose Check Out.
♦ Tip : Checked out package will have tick mark like this

8. After checking out, select your package and press Cntrl+N (or) Right click → New → Other.
9. In the New window search with XS OData and select XS OData File and hit Next.

10. In the New XS OData Service window, enter File name, choose Template as “Basic” and hit Finish.

11. A new HANA XS OData service will be created with predefined syntax like below.

12. We are not going to use the predefined syntax as it, remove that and copy and paste the below code.
1 2 3 4 5 6 7 8 9 10 11 |
service { "demopackage.models::ZAV_EMPLOYEE_INFO" //Full path to your Attribute View & its Name as "EmployeeCollecion" //Name of Entity Type with ( "EMPLOYEE_ID", "FIRST_NAME", "LAST_NAME", "EMAIL_ADDRESS", "CITY", "COUNTRY") //List of exposed columns key ("EMPLOYEE_ID"); //Key relevant for Attribute view } |
13. Lets see what the HANA XS OData service file contains
Service definition starts with syntax – service { }.
you have to provide the full path of attribute view where it is stored and its name.
as – you have to provide the Entity Type name.
with – columns of attribute view you want to expose.
key – key of the attribute view.
14. Activate the service by clicking on Active Button on the tool bar. You can also right click on the package and choose Activate / Activate All.

15. Before testing the service we need to first expose our package to do so we need to create two files in our package they are .xsaccess and .xsapp. Right click on your package → New → File.

16. Copy and paste below code into newly created .xsaccess file.
1 2 3 |
{ "exposed" : true } |
17. Again repeat the Step-17 to create .xsapp file. This file will be a blank file.
18. Activate all objects in the package. Now we are ready for testing.HANA XS OData services are accessed by URL.Open your chrome browser and enter URL of your XS OData service in the below format.
http://hostname:port/package/file.xsodata
For example in our case the URL would be
http://saplearners.com:8005/demopackage/services/EmployeeInfo.xsodata
18. You will see the XS OData service metadata output like below in the browser.

19. Now append the entity name “EmployeeCollection” to the above URL and you will see the data of the attribute view like below.
URL – http://saplearners.com:8005/demopackage/services/EmployeeInfo.xsodata/EmployeeCollection

20. Congrats you have successfully exposed HANA attribute view as XS OData service.Now we can use this XS OData service in SAPUI5/SAP Fiori applications to display the data in UI.
Please stay tuned to us for more SAP HANA/HANA XS OData tutorials.Please feel free to comment and let us know your feedback. You feedback will keep us alive. Thank you.