Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
takayuki_tanaka
Product and Topic Expert
Product and Topic Expert
855

はじめに


本ブログでは、前回のブログに引き続き、簡単なデータセットを公開し、権限管理を行い、世界中から利用できるようにするまでの手順をStep by Stepガイドの形式でお届けします。本ブログは主にDBへの接続セットアップからAPIの外部コールまでの手順を示します。

なお、内容は2024年01月時点でのスクリーンショットを用いて解説しており、見た目は予告なく変更される可能性がありますので、ご注意ください。

 

前提条件



 

目次



  1. HANA Tools – HANA Cloudへのデータモデルとテストデータのデプロイ

  2. SAP HANA Database Explorer - テーブルへのSQL実行

  3. POSTMANからのデータ操作


 

1. HANA Tools – HANA Cloudへのデータモデルとテストデータのデプロイ


前回 Dev Space を作成する際に追加で有効化を行った SAP HANA Tools を用いて、HANA Cloudへデータモデルとモックデータのデプロイを行なっていきます。左端のペインから「Explorer」を開き、ディレクトリ構造が表示された列の最下部にある「SAP HANA PROJECTS」を展開します。この中には、接続されたHANA Cloudに関する情報が表示されており、ここからデータやスキーマのデプロイを行うことが可能です。

「Database Connections」タブを展開し、内部の「{アプリ名}-service-db」にホバーすると出現する、プラグアイコンをクリックしてください。これにより、SAP BTP上に建てられたHANA Cloudインスタンスへの接続(バインディング)を行うことができます。接続先としては、前回のブログにおける手順のうちで Productivity Tools により、 HDIコンテナ が作成されているはずですので、そちらを選択してください。

 


HANA ToolsによるHDIコンテナのバインド


 

続いて、{アプリ名}/dbにホバーすると出現するロケットアイコンをクリックしてください。これにより、このプロジェクト内で行なったDBに関する設定事項が、バインドしたHDIコンテナにデプロイされます。具体的には、Productivity Tools により裏側で作成されたDBスキーマや、手動で作成したモックデータが本番のDB環境に反映されていきます。この際には、ターミナルが自動で立ち上がり、必要な作業を自動で実行していきます。

 


HANA ToolsによるDBのデプロイ


 

実行が完了したら、SAP HANA Database Explorer を用いてデータベースの中身を閲覧、更新していきます。

 

2. SAP HANA Database Explorer - テーブルへのSQL実行


「{アプリ名}-service-db」にホバーすると出現する、箱がたくさん集まったアイコンをクリックしてください。これにより、SAP HANA Database Explorer にアクセスすることができます。

 


SAP HANA Database Explorerへのアクセス


 

今回バインドしているHDIコンテナを選択し「Tables」 -> 「JOBRECORDER_JOBRECORD」へドリルダウンしていきます。すると、下図のようなスキーマを閲覧することが可能です。さらに、「Open Data」ボタンから、HANA Cloudに格納された具体的なデータを閲覧することが可能です。

 


SAP HANA Database Explorerでのスキーマ閲覧


 

下図の通り、モックデータが格納されていることがわかります。ここに追加のデータを格納してみましょう。SQLアイコンをクリックして、SQLコンソールを開きます。

 


SAP HANA Database Explorerでのデータ閲覧


 

下記SQLを記入し、実行するとデータが挿入されます。

 
INSERT INTO ”<スキーマID>"."JOBRECORDER_JOBRECORD" ("ID","EXECUTEDBY", "EXECUTEDAT", "CONTENT") VALUES ('3bf6ef80-f81e-442e-9fa9-b1c9d53ff3cb','SAP HANA Database Explorer', '2024-01-09 15:46:36.000000000', 'SAP HANA Database Explorerにより追加されました');

 


SQLコンソールによるデータの挿入


 

 

データを更新すると、2行目にデータが追加されていることが確認できます。

 


挿入されたデータの確認


 

前回のブログでアクセスしたサービスのURLをチェックしてみましょう。同様に、追加のデータが返却されることが確認できます。

 


ODataサービスからの追加データの確認


 

3. POSTMANからのデータ操作


最後に、このAPIを外部から操作してみましょう。今回のCAPバックエンドはSAP BTP上で認証認可を行うためのXSUAAインスタンスがバインドされています。そのため、APIを呼び出すためには認証の設定を行う必要があります。

まずはBTP Cockpitから、対象のXSUAAインスタンスにアクセスし、認証情報を取得します。利用する情報は下記の通り、”clientid”、”clientsecret”、”url”の3つです。

 


XSUAAインスタンスのサービスキー


 

これを、POSTMANのAuthorizationタブで認証の種類に「OAuth2.0」を選択し、下記の表の通りに項目をマッピングしていきます。

 































POSTMANの項目 BTPの認証情報 or 定数
Grant Type Password Credentials
Access Token URL “url” の後ろに「/oauth/token」を付与した値
Client ID “clientid”の値
Client Secret “clientsecret”の値
Username ご自身のユーザーネーム
Password ご自身のパスワード

 


POSTMANにおける認証設定


 

これにより、以下のようにPOSTMANからデータ操作を実行することができます。今回はPOSTMANからデータをPOSTし、それを改めてGETすることで、データ操作の確認を行っています。

 


POSTMANからのデータ操作の実行


 

まとめ


本ブログでは前回のブログに引き続き、CAPバックエンド開発の流れをご覧いただきました。HANA Cloudに接続すると、外部からのデータ操作に基づいて動的にデータを保持することが可能となります。今回のブログでご紹介した内容を元に、あらゆるカスタム開発を行うことが可能です。ぜひトライアル環境、社内環境等のSAP BTPの環境を使って、高度に自動化されたBTPでの開発を体験してみてください。