Skip to Content

Create an SAP HANA Database Project

test
0 %
Create an SAP HANA Database Project
Details

Create an SAP HANA Database Project

January 7, 2021
Created by
January 7, 2021
Create a Business Application Studio HANA Database Project

You will learn

  • How to create a multi-target application with a database module via SAP HANA database project in the SAP Business Application Studio
  • How to create a columnar table using declarative SQL
  • How to load data for testing into a columnar table from a CSV file
  • How to access the Database Explorer to browse your tables, data and use SQL statements
QR code

Prerequisites


Step 1: Create a new project from template
  1. From the SAP Business Application Studio Welcome tab, click Start from template Create a new project.

    New project from template
  2. Choose SAP HANA Database Project and click Start.

    New project from template
  3. Call the project DM and click Next.

    New project from template
  4. Keep the module name at the default of db and press Next.

    New project from template
  5. Clear the Namespace and Schema Name blank. Choose version HANA Cloud and click Next

    New project from template
  6. Leave all values of the Bind to HDI Container service at their default values and press Finish

    New project from template
  7. You should see a Generating SAP HANA Database Project message which will remain for a minute or two as the HDI container instance is being created.

    New project from template
  8. Upon completion of the project generation, you will see a message. Press the Open in New Workspace button in this success message to open the new project in the IDE.

    New project from template
Log on to answer question
Step 2: Create database artifacts

This project will combine artifacts from an HDI container and a classic, replicated schema.

You will first create a table to hold data from performance evaluations received by employees and the rating they give the company in terms of satisfaction.

These are sample records that will be stored in this table:
New DB artifact

  1. Right-click on the src folder, choose New File

    New DB artifact
  2. Use the following name

    data/performance.hdbtable
    
    New DB artifact
  3. This will create both a folder and a file. Paste the following content into the hdbtable file to define a new table:

    column table "PERFORMANCE" (
        "ID" INTEGER  unique not null COMMENT 'Employee ID',
        "EVALUATION_RATING" DOUBLE COMMENT 'Evaluation results',
        "REPORTS_TO" INTEGER not null COMMENT 'Reports to Manager',
        "FEEDBACK_COMMENT" NVARCHAR(512) COMMENT 'Feedback comment',
        "SATISFACTION_INDEX" DOUBLE COMMENT 'Employee given rating',
        PRIMARY KEY ("ID")
    )
    COMMENT 'Performance evaluation record'
    
  4. Save the file.

    New DB artifact

What is going on?
 
You have created a database module and a design time artifact representing a table. When this module is deployed, SAP Business Application Studio will automatically create the runtime object (a physical table) in the schema associated to the HDI container.
 
This approach allows you to modify the structure of the table without worrying about underlying adaptation operations.

Log on to answer question
Step 3: Create a text index

The table you have just defined will have a large text field with comments from the employees. You want to enable an index to enhance text search.

  1. Create a new database artifact under the data folder

    New DB artifactNew DB artifact
  2. Use the following name

    comment_text
    

    And choose Artifact Type of hdbindex

    New DB artifact
  3. Paste the following code into it:

    INDEX "COMMENT_TEXT"
    on "PERFORMANCE"("FEEDBACK_COMMENT")
    
  4. Save the file.

Log on to answer question
Step 4: Deploy the database module
  1. Expand the SAP HANA PROJECTS View

    Deploy DB
  2. Click the Deploy icon (which looks like a rocket).

    Deploy DB


What is going on?

 
The console on the bottom will show the progress. First, an HDI container will be created and bound. Scroll up the log to see it in your screen:
 
Build db
 
The container is called hdi_db, which is the name you specified in the deployment configuration file, mta.yaml.
If you continue to scroll down, you will see how the table and text index you have created using design-time artifacts are prepared for deployment. A physical schema called DM_HDI_DB_1 has been created. Finally, you will see a success message:

 

Build db
 

Log on to answer question
Step 5: Add data from a local file

For testing and development purposes, you can use a local file to load data into an HDI container.

  1. Create the configuration for the upload first. In the data folder, create a file called:

    loads/dataload.hdbtabledata
    
    Data load
  2. Paste the following content into it:

    {
        "format_version": 1,
        "imports": [{
    	    "target_table": "PERFORMANCE",
    	    "source_data": {
    		    "data_type": "CSV",
    		    "file_name": "performance.csv",
    		    "has_header": true,
    		    "dialect": "HANA",
    		    "type_config": {
    			    "delimiter": ","
    		    }
    	    }
    	    }]
    }		
    
  3. Download this csv file – https://github.com/SAPDocuments/Tutorials/blob/master/tutorials/hana-cloud-create-db-project/performance.csv into your computer. Upload it into the loads folder using the Upload Files option

    Data load
  4. Deploy the loads folder

    Data load
Log on to answer question
Step 6: Check the data
  1. Press the Open HDI Container icon

    Explore data
  2. The Database Explorer will open in a new browser tab with your HDI container already selected. Select Tables

    Explore data
  3. Right-click on the table PERFORMANCE and choose Open Data

    Explore data
  4. Open the SQL editor for this query

    Explore data
  5. Execute the following SQL statement to complete the validation below:

    SELECT ROUND(AVG("SATISFACTION_INDEX"),1)
    FROM "PERFORMANCE";
    
What is the average satisfaction index given by employees for this company?
×

Next Steps

Back to top