Node.js からSAP Netweaver Gateway のデータをSQL Server データベースとしてクエリ
CData Connect AI を使用すると、SQL Server インターフェース経由でSAP Netweaver Gateway のデータをクエリできます。以下のステップに従って、Connect AI にSAP Netweaver Gateway の仮想データベースを作成し、Node.js を使用してクエリを実行します。
CData Connect AI は、SAP Netweaver Gateway のピュアMySQL かつクラウドベースのインターフェースを提供し、ネイティブにサポートされているデータベースにデータを複製することなくNode.js からの手軽なリアルタイムSAP Netweaver Gateway のデータクエリを実現します。Node.js でデータをクエリすると、CData Connect AI はサポートされているすべてのSQL 操作(フィルタ、JOIN など)を直接SAP Netweaver Gateway にプッシュし、サーバー側の処理を活用してSAP Netweaver Gateway のデータを高速で返します。
Connect AI からSAP Netweaver Gateway に接続する
CData Connect AI は直感的なクリック操作ベースのインターフェースを使ってデータソースに接続します。- Connect AI にログインし、 Add Connection をクリックします。
- Add Connection パネルから「SAP Netweaver Gateway」を選択します。
-
必要な認証情報を入力し、SAP Netweaver Gateway に接続します。
SAP Gateway 接続プロパティの取得・設定方法
SAP Gateway のテーブルにアクセスするには、次の接続プロパティを設定します。
- URL = お使いの環境のURL、またはサービスの完全URL。例えば、完全URL は次のようになります:https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/。この例では、環境URL は次のようになります:https://sapes5.sapdevcenter.com。CustomUrlParams プロパティを使用して、追加プロパティを追加します。
- Namespace = 適切なService Namespace。先ほどの例では、IWBEP が名前空間です。サービスへの完全URL が指定されている場合は任意です。
- Service = データを取得するサービス。先ほどの例では、サービスはGWSAMPLE_BASIC です。完全URL が指定されている場合は必須ではありません。
- CustomUrlParams = HTTP リクエストに含まれる必要のある追加プロパティ;例えばsap-client=001&sap-language=EN。
SAP Gateway への認証
SAP Gateway はBasic 認証、OAuth 2.0 認証、SAP BTP Destination 認証に対応しています。
Basic 認証
Basic 認証を有効にするには、以下のプロパティを設定します。
- AuthScheme = Basic。
- User = SAP Gateway へのログインに使用するユーザー名。
- Password = SAP Gateway へのログインに使用するパスワード。
上記のプロパティを設定したら、接続の準備は完了です。本製品への接続には、お使いの認証情報を使用してください。
他の認証方法については、ヘルプドキュメントの「接続の確立」セクションを参照してください。
- Create & Test をクリックします。
- Edit SAP Netweaver Gateway Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。
パーソナルアクセストークンを追加する
OAuth 認証をサポートしないサービス、アプリケーション、プラットフォーム、フレームワークから接続する場合、パーソナルアクセストークン(PAT)を認証に使用できます。きめ細かくアクセスを管理するために、サービスごとに個別のPAT を作成するのがベストプラクティスです。
- User Profile ページでPersonal Access Token セクションにスクロールし、 Create PAT をクリックします。
- PAT の名前を入力して Create をクリックします。
- パーソナルアクセストークンは作成時にしか表示されないため、必ずコピーして安全に保存してください。
- server:tds.cdata.com
- port:14333
- user:Connect AI ユーザー(例:[email protected])
- password:上記のユーザーのPAT
- database:SAP Netweaver Gateway 用に構成した接続(SAPGateway1)
接続が設定されたら、Node.js からSAP Netweaver Gateway のデータに接続できるようになります。
Node.js からSAP Netweaver Gateway をクエリ
以下の例は、SQL Server モジュールを使用してSAP Netweaver Gateway へのクエリを実行する方法を説明しています。以下の情報が必要です。
以下のコードで、SAP Netweaver Gateway に接続してクエリが実行できます。
var sql = require('mssql')
var config = {
server: 'tds.cdata.com',
port:14333,
user: '[email protected]', //update me
password:'CONNECT_USER_PAT', //update me
options: {
encrypt: true,
database: 'SAPGateway1'
}
}
sql.connect(config, err => {
if(err){
throw err ;
}
new sql.Request().query('SELECT * FROM SalesOrderLineItems', (err, result) => {
console.dir(result)
})
});
sql.on('error', err => {
console.log("SQL Error: " ,err);
})