業務アプリ構築ツールコンテキサーで、NetSuite と連携したアプリを作成する方法

コンテキサーでNetSuite と連携したアプリを作成する方法を紹介します。

杉本和也
リードエンジニア

最終更新日:2023-03-17

この記事で実現できるNetSuite 連携のシナリオ

こんにちは!リードエンジニアの杉本です。

コンテキサーとは、株式会社アプストウェブが提供する業務アプリケーションを構築のための純国産ノンプログラミング開発ツールです。CSVファイルやクラウドデータベース、ODBC 経由でのRDBのデータをもとに、ノンプログラミングで様々な業務アプリケーションを短時間で開発できるのが特徴です。

コンテキサーではRDBと連携する仕組みが標準提供されており、この機能を介してSQL ServerやMySQLなどにアクセスできるようになっています。そして、この機能とCData ODBC Driver for NetSuite を組み合わせることで、各種クラウドサービスのAPIにアクセスすることができるようになります。

コンテキサー連携アプリ

CData ODBC ドライバとは?

CData ODBC ドライバは、以下のような特徴を持った製品です。

  1. NetSuite をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレデータソースに対応
  2. 多様なアプリケーション、ツールにNetSuite のデータを連携
  3. ノーコードでの手軽な接続設定
  4. 標準SQL での柔軟なデータ読み込み・書き込み

CData ODBC ドライバでは、1.データソースとしてNetSuite の接続を設定、2.Active Query Builder 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

CData ODBC ドライバのインストールとNetSuite への接続設定

まずは、本記事右側のサイドバーからNetSuite ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

インストール後、ODBC DSN(データソース名)で接続プロパティを設定します。これはドライバーのインストールの最後の手順にあたります。Microsoft ODBC Data Source Administrator を使用して、ODBC DSN を作成および設定できます。

Netsuite への接続

NetSuite は現在、2つの異なるAPI を提供しています。

  • SuiteTalk はNetSuite との通信に使用する、SOAP ベースのより古いサービスです。多くのエンティティを幅広くサポートし、INSERT / UPDATE / DELETE を完全にサポートします。 しかしデータの抽出用ツールは低機能で、SELECT 時のパフォーマンスは極めて低いです。テーブルを結合するよい方法もありません。データのグループ化および集計はこのAPI からは利用できず、 そのためこれらの操作をサポートするには、すべてをクライアントサイドで実行しなければなりません。
  • SuiteQL は新しいAPI です。サービスとのSQL ライクな通信方法を実現するため、JOIN の機能はより豊富になり、GROUP BY や集計機能もサポートします。 加えて、抽出したいカラムだけを取得する機能も完全にサポートします。そのため、データを抽出する際のパフォーマンスがSuiteTalk より大幅に向上しています。ただし、サポートされるのはデータの抽出のみです。

NetSuite に接続するには、以下を行う必要があります。

  1. Schema を設定して、接続に使用するAPI を指定。データを取得するだけの場合は、SuiteQL の使用をお勧めします。データの取得および変更が必要な場合は、SuiteTalk の使用をお勧めします。
  2. 使用するAPI に適した接続オプションを設定します。(それぞれのAPI で利用可能な接続オプションが異なります。ヘルプドキュメントの「許可の設定」を参照してください。)

Netsuite への認証

SuiteTalk またはSuiteQL

NetSuite は3つの形式のOAuth 認証を提供します。

  • トークンベース認証(TBA)は、基本的にOAuth 1.0 で、OAuthAccessTokenOAuthAccessTokenSecret を実行時ではなくNetSuite UI 内で作成します。 TBA は、2020.2 以降のSuiteTalk およびSuiteQL の両方で利用可能です。
  • OAuth 2.0 認証は、SuiteQL でのみ利用できます。OAuth 2.0 認証を強制するには、次のいずれかを実行します。
    • OAuthVersion を使用するAPI に明示的に設定、または
    • SchemaSuiteQL に設定
  • OAuth JWT 認証は、OAuth 2.0 クライアント認証フローであり、クライアント認証情報を含むJWT を使用してNetSuite データへのアクセスを要求します。この認証方法は、SchemaSuiteQL に設定されている場合にのみ使用できます。

認証方法の詳細はヘルプドキュメントの「はじめに」を参照してください。

NetSuite のデータをコンテキサーに連携

以下の手順で、コンテキサーでのアプリ作成を進めます。

  1. アプリを作る前に、データベースへの接続情報を追加します。「データ」タブから「データベース」をクリックします。 データベースをコンテキサーに追加(1)
  2. 以下のようにデータベース接続設定を追加する画面が表示されるので、「新規」ボタンをクリックし、先程作成したODBC 接続のDSN 名を入力します。 データベースをコンテキサーに追加(2)
  3. エンジンはCData Driver と相性の良いMySQL ベースで指定します。それ以外のサーバやデータベースなどの情報は指定不要です。 接続情報を指定
  4. 接続確認を行い、「接続に成功しました」というメッセージが表示されればOKです。「登録」をクリックしてデータベース接続情報を保存しましょう。

パネルの追加

データベース接続情報の追加が完了したら、アプリを作成していきます。今回はシンプルにNetSuite の一覧を表示するアプリを作成します。

  1. 「定義」→「パネル追加」で「データベースから」を選択し、先程のDSN名でテーブルを一覧から選択します。今回はNetSuite のSalesOrder を指定しました。 取得したいテーブルを指定
  2. 「読み込みする」ボタンをクリックします。
  3. パネルのフォーマットは任意ですが、今回は新しいシートに表形式で追加しました。
  4. これで以下のようにパネルが展開され、ODBC を経由してNetSuite のデータがシームレスに読み込まれました! 取得したテーブルからパネルを作成

おわりに

このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコンテキサーからコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。

CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。