各製品の資料を入手。
詳細はこちら →SnapLogic でNetSuite を外部サービスに連携
CData JDBC Driver を使用して、SnapLogic と外部サービスを連携。
最終更新日:2021-11-05
この記事で実現できるNetSuite 連携のシナリオ
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
SnapLogic はintegration Platform-as-a-Service(iPaaS)であり、ユーザーはノーコードでデータ連携フローを作成できます。CData JDBC ドライバと組み合わせることで、ユーザーはSnapLogic ワークフローからNetSuite を含む250を超えるSaaS、ビッグデータ、NoSQL データソースのリアルタイムデータに接続できます。
組み込みの最適化されたデータ処理によって、CData JDBC Driver はリアルタイムNetSuite のデータを高速に扱えます。プラットフォームがNetSuite に複雑なSQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされているSQL 操作をNetSuite に直接プッシュし、サポートされていない操作(主にSQL 関数とJOIN 操作)は組み込みSQL エンジンを利用してクライアント側で処理します。組み込みの動的メタデータクエリを使用すると、ネイティブデータソース型を使用してNetSuite のデータを操作することができます。
SnapLogic からNetSuite に接続する
SnapLogic からNetSuite のデータに接続するには、CData NetSuite JDBC Driver をダウンロードしてインストールします。インストール画面に従ってください。インストールが完了すると、インストール先のディレクトリ(デフォルトでは、C:/Program Files/CData/CData JDBC Driver for NetSuite/lib)にJAR ファイルが作成されます。
NetSuite JDBC Driver をアップロードする
インストール後、JDBC JAR ファイルをSnapLogic 内のディレクトリ(例えば、projects/Jerod Johnson)にManager タブからアップロードします。

接続を設定する
JDBC Driver がアップロードされると、NetSuite への接続を作成できます。
- Designer タブに移動します。
- Snaps から「JDBC」を展開して、「Generic JDBC - Select」snap をdesigner にドラッグします。
- Add Account をクリック(または既存のものを選択)して、「Continue」をクリックします。
- 次のフォームでは、JDBC 接続プロパティを設定します。
- JDBC JARs 以下にアップロードしたJAR ファイルを追加します。
- JDBC Driver Class をcdata.jdbc.netsuite.NetSuiteDriver に設定します。
JDBC URL をNetSuite JDBC Driver 用のJDBC 接続文字列に設定します。例えば、
jdbc:netsuite:Account Id=XABC123456;Password=password;User=user;Role Id=3;Version=2013_1;RTK=XXXXXX;
です。NOTE: RTK は評価版もしくは製品版のキーです。詳しくは、CData のサポートチームにご連絡ください。
組み込みの接続文字列デザイナー
JDBC URL の作成の補助として、NetSuite JDBC Driver に組み込まれている接続文字列デザイナーが使用できます。JAR ファイルをダブルクリックするか、コマンドラインからjar ファイルを実行します。
java -jar cdata.jdbc.netsuite.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
Netsuite への接続
NetSuite は現在、2つの異なるAPI を提供しています。
- SuiteTalk はNetSuite との通信に使用する、SOAP ベースのより古いサービスです。多くのエンティティを幅広くサポートし、INSERT / UPDATE / DELETE を完全にサポートします。 しかしデータの抽出用ツールは低機能で、SELECT 時のパフォーマンスは極めて低いです。テーブルを結合するよい方法もありません。データのグループ化および集計はこのAPI からは利用できず、 そのためこれらの操作をサポートするには、すべてをクライアントサイドで実行しなければなりません。
- SuiteQL は新しいAPI です。サービスとのSQL ライクな通信方法を実現するため、JOIN の機能はより豊富になり、GROUP BY や集計機能もサポートします。 加えて、抽出したいカラムだけを取得する機能も完全にサポートします。そのため、データを抽出する際のパフォーマンスがSuiteTalk より大幅に向上しています。ただし、サポートされるのはデータの抽出のみです。
NetSuite に接続するには、以下を行う必要があります。
- Schema を設定して、接続に使用するAPI を指定。データを取得するだけの場合は、SuiteQL の使用をお勧めします。データの取得および変更が必要な場合は、SuiteTalk の使用をお勧めします。
- 使用するAPI に適した接続オプションを設定します。(それぞれのAPI で利用可能な接続オプションが異なります。ヘルプドキュメントの「許可の設定」を参照してください。)
Netsuite への認証
SuiteTalk またはSuiteQL
NetSuite は3つの形式のOAuth 認証を提供します。
- トークンベース認証(TBA)は、基本的にOAuth 1.0 で、OAuthAccessToken とOAuthAccessTokenSecret を実行時ではなくNetSuite UI 内で作成します。 TBA は、2020.2 以降のSuiteTalk およびSuiteQL の両方で利用可能です。
- OAuth 2.0 認証は、SuiteQL でのみ利用できます。OAuth 2.0 認証を強制するには、次のいずれかを実行します。
- OAuthVersion を使用するAPI に明示的に設定、または
- Schema をSuiteQL に設定
- OAuth JWT 認証は、OAuth 2.0 クライアント認証フローであり、クライアント認証情報を含むJWT を使用してNetSuite データへのアクセスを要求します。この認証方法は、Schema がSuiteQL に設定されている場合にのみ使用できます。
認証方法の詳細はヘルプドキュメントの「はじめに」を参照してください。
- 接続プロパティの入力後、「Validate」、そして「Apply」をクリックします。
NetSuite のデータを読み込む
接続を検証、適用後に開くフォームで、クエリを設定します。
- Schema name を"NetSuite" に設定します。
- Table name を、スキーマ名を使用したNetSuite 用のテーブルに設定します。例えば、"NetSuite"."SalesOrder" です(ドロップダウンを使用して利用可能なテーブルの全リストを確認できます)。
- テーブルから、使用したい項目ごとにOutput fields を追加します。

Generic JDBC - Select snap を保存します。
接続とクエリを設定したら、snap の終端部分(以下のハイライト部分)をクリックしてデータをプレビューします。

結果が期待どおりのものであることを確認したら、他のsnap を追加してNetSuite のデータを別のエンドポイントに渡すこともできます。

NetSuite のデータを外部サービスにパイプ
本記事では、データをGoogle Spreadsheet にロードします。他のあらゆるサポートされているsnap が使用でき、Generic JDBC snap を他のCData JDBC ドライバと利用してデータを外部サービスに移すこともできます。
- まず、「Worksheet Writer」snap を"Generic JDBC - Select" snap の終端部分にドロップします。
- Google Sheets に接続するアカウントを追加します。
- Worksheet Writer snap を、NetSuite のデータをGoogle Spreadsheet に書き込むよう設定します。
これで、接続済みのパイプラインを実行してNetSuite からデータを抽出し、Google Spreadsheet にプッシュできます。

外部データをNetSuite にパイプ
上述のように、JDBC Driver for NetSuite をSnapLogic から使用してデータをNetSuite に書き込むことができます。まずは、Generic JDBC - Insert またはGeneric JDBC - Update snap をダッシュボードに追加します。
- 既存の「Account」(接続)を選択するか、新しく作成します。
- クエリの設定。
- Schema name を"NetSuite" に設定します。
- Table name をスキーマ名を使用したNetSuite のテーブルに設定します。例えば、"NetSuite"."SalesOrder"(ドロップダウンを使用して利用可能な全テーブルの一覧を確認できます)。
- Generic JDBC - Insert/Update snap を保存します。
これで、NetSuite にデータを書き込んだり、新しいレコードを挿入したり、既存のレコードを更新するsnap が設定できました。
詳細情報と無償評価版
CData JDBC Driver for NetSuite を使えば、NetSuite のデータを外部サービスに連携するためのパイプラインをSnapLogic で作成できます。NetSuite への接続に関する詳細については、CData のNetSuite 連携ページを参照してください。30日の無償評価版をダウンロードして今すぐ使い始めましょう。