ODBC を介してNode.js からProcore のデータをクエリ
Node.js はブラウザ上以外でJavaScript コードを使用できるJavaScript ランタイム環境です。CData ODBC Driver for API を使用すれば、Node.js アプリとスクリプトから、リアルタイムProcore のデータにアクセスできます。この記事ではnode-odbc のインストールと、リアルタイムProcore のデータへのアクセスが可能な、シンプルなNode.js アプリケーションを作成するために必要なツールについて説明します。
ビルトインの最適化されたデータ処理により、CData ODBC Driver は比類のないパフォーマンスで、Node.js のリアルタイムProcore のデータとやりとりできます。Node.js からProcore に複雑なSQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされているSQL 操作をProcore に直接プッシュし、組み込まれたSQL エンジンを利用してサポートされていない操作(主にSQL 関数とJOIN 操作)をクライアント側で処理します。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- Procore をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにProcore のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてProcore の接続を設定、2.Node.js 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとProcore への接続設定
まずは、本記事右側のサイドバーからAPI ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
必要な接続プロパティの値が未入力の場合には、データソース名(DSN)で入力します。組み込みのMicrosoft ODBC Data Source Administrator を使用し、DSN を構成できます。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC データソースアドミニストレーターを使ってDSN を作成および設定する方法は、ヘルプドキュメントの「はじめに」を参照してください。
まず、Profile 接続プロパティにProcore プロファイルのディスク上の場所を設定します(例:C:\profiles\Procore.apip)。次に、ProfileSettings 接続プロパティにProcore の接続文字列を設定します(以下を参照)。
Procore API プロファイル設定
Procore に認証し、自分のデータに接続したり、他のユーザーが自分のデータに接続できるようにするには、OAuth 標準を使用できます。
まず、Procore にOAuth アプリケーションを登録します。Developer Account にログインし、Create New App に移動することで登録できます。アプリを登録するために必要なすべてのステップに従います。まずSandbox Manifest の新しいバージョンを作成し、Production に昇格させてProduction Credentials を取得します。OAuth アプリケーションにはclient id とclient secret が割り当てられます。
以下の接続プロパティを設定すると、接続の準備が整います:
- AuthScheme:OAuth に設定します。
- InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使用してOAuthAccessToken を取得するプロセスを管理できます。
- OAuthClientId:アプリ設定で指定されているclient_id を設定します。
- OAuthClientSecret:アプリ設定で指定されているclient_secret を設定します。
- CallbackURL:アプリ設定で指定されているRedirect URI を設定します。
node-odbc を構築する
CData ODBC Driver を介してProcore に接続するには、必要なツールをインストールした後に、node-odbc を手動で構築する必要があります。
必要なツールをインストールする
以下のコマンドでは、node-odbc の構築に必要なツールをインストールします。(ツールをグローバルにインストールする-g パラメータに注意してください。)
npm i -g windows-build-tools npm i -g node-gyp
node-odbc を構築する
必要なツールをインストールしたらNode.js アプリケーションのディレクトリを作成し、Node.js スクリプトで使用するバイナリを構築するodbc をインストールします。
mkdir nodeodbc cd nodeodbc npm i -g node
Node.js からProcore をクエリ
ODBC Driver がインストールされ、DSN が構成されて、node-odbc が構築されたら、Node.js アプリケーションからリアルタイムProcore のデータをクエリすることができるようになります。以下のサンプルコードは、特定のDSN に接続してCompanies テーブルをクエリします。
myscript.js
const odbc = require('odbc');
async function queryAPI() {
const connection = await odbc.connect(`DSN=CData API Source`);
const data = await connection.query('SELECT Id, Name FROM Companies');
console.log(data);
}
queryAPI();
アプリケーションを作成したら、node を使用してスクリプトを実行します。
node myscript.js
おわりに
CData ODBC Driver for API の30日の無償評価版 をダウンロードすればNode.js でリアルタイムProcore のデータを使用できます。ご不明な点があれば、サポートチームにお問い合わせください。