【ノーコード】NetSuiteのデータをExcelで取得する方法
CData Excel Add-In for NetSuite を使えば、Excel から直接NetSuite のデータ取得、追加、編集が可能になります。NetSuite のデータを一度Excel にエクスポートして編集・データソースの一括更新を行えるだけではなく、Excel スプレッドシートに保存されているデータを一括でNetSuite にインポートすることも可能です。
この記事ではExcel Add-In の使い方を説明し、実際にNetSuite のデータを取得、追加、編集していきます。記事の例ではSalesOrder テーブルを使いますが、同じことがCData Excel Add-In で取得できるすべてのNetSuite のデータのテーブルに対して実行可能です。
NetSuite への接続を設定
まずは、本記事右側のサイドバーからNetSuite Excel Add-In の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
NetSuite への接続には、Excel Add-in をインストールした後にExcel を起動して、「CData」タブ ->「データの取得」->「取得元:NetSuite」とクリックしていきます。
接続エディタが表示されるので、接続プロパティを入力して「接続テスト」をクリックしてください。プロパティの取得方法について説明します。
NetSuiteへの接続
NetSuite では、2種類のAPI でデータにアクセスできます。どちらのAPI を使用するかは、Schema 接続プロパティで以下のいずれかを選択して指定してください。
- SuiteTalk は、NetSuite との通信に使用されるSOAP ベースの従来から提供されているサービスです。幅広いエンティティをサポートし、INSERT / UPDATE / DELETE の操作も対応しています。ただし、SuiteQL API と比べるとデータの取得速度が劣ります。また、サーバーサイドでのJOIN に対応していないため、これらの処理はCData 製品がクライアントサイドで実行します。
- SuiteQL は、より新しいAPI です。JOIN、GROUP BY、集計、カラムフィルタリングをサーバーサイドで処理できるため、SuiteTalk よりもはるかに高速にデータを取得できます。ただし、NetSuite データへのアクセスは読み取り専用となります。
データの取得のみが目的でしたらSuiteQL をお勧めします。データの取得と変更の両方が必要な場合は、SuiteTalk をお選びください。
NetSuite への認証
CData 製品では、以下の認証方式がご利用いただけます。
- トークンベース認証(TBA)はOAuth1.0に似た仕組みです。2020.2以降のSuiteTalk とSuiteQL の両方で利用できます。
- OAuth 2.0 認証(OAuth 2.0 認可コードグラントフロー)は、SuiteQL でのみご利用いただけます。
- OAuth JWT 認証は、OAuth2.0 クライアント認証フローの一つで、クライアント認証情報を含むJWT を使用してNetSuite データへのアクセスを要求します。
トークンベース認証(OAuth1.0)
トークンベース認証(TBA)は、基本的にOAuth 1.0 の仕組みです。この認証方式はSuiteTalk とSuiteQL の両方でサポートされています。管理者権限をお持ちの方がNetSuite UI 内でOAuthClientId、OAuthClientSecret、OAuthAccessToken、OAuthAccessTokenSecret を直接作成することで設定できます。 NetSuite UI でのトークン作成手順については、ヘルプドキュメントの「はじめに」セクションをご参照ください。
アクセストークンを作成したら、以下の接続プロパティを設定して接続してみましょう。
- AuthScheme = Token
- AccountId = 接続先のアカウント
- OAuthClientId = アプリケーション作成時に表示されるコンシューマーキー
- OAuthClientSecret = アプリケーション作成時に表示されるコンシューマーシークレット
- OAuthAccessToken = アクセストークン作成時のトークンID
- OAuthAccessTokenSecret = アクセストークン作成時のトークンシークレット
その他の認証方法については、ヘルプドキュメントの「はじめに」をご確認ください。
NetSuite のデータの取得
接続設定が完了したら、いよいよNetSuite のデータを取得してみましょう。
- 接続が完了すると、以下の「クエリを編集」画面が表示されます。
- 「テーブル/ビュー」項目の「選択」ボタンをクリックします。テーブル一覧が表示されるので、取得したいテーブルを選択してください。今回はSalesOrder を使います。
- 以下のようにテーブルのメタデータが自動で取得・表示されます。「最大行数」で取得するレコード数を調整することもできます。新規データの一括入力だけが目的の場合は、1行だけを取得するといったことも可能です。
- 「シート名」にデータを追加するExcel シートの名前を入力します。デフォルトでは、取得するテーブル名がシート名になります。準備ができたら「OK」をクリックすると、データが取得されます(以下はすべてサンプルデータです)。
NetSuite へのデータの追加・更新
これで、データの取得は完了です。ここからはデータ追加をやっていきましょう。今回は、SalesOrderSample という別シートにあるデータをNetSuite に追加していく、というシナリオで進めていきます。
- テーブルの最終行の下の行に、別シートを参照する式を入力します。例:=SalesOrderSample!A1。これで、別シートのデータをコピーできました。新たに追加してデータソース側に反映されていないデータは、赤文字で表示されます。注意点として、(読み取り専用)となっているカラムは空のままにしておいてください。
- 参照用のセルをドラッグドロップして、どんどんデータを追加します。CData Excel Add-In では複数行のデータを一括で追加できます。
- それでは、Excel で追加したデータを実際にNetSuite に追加してみます。追加する行を選択して、CData リボン内の「行の更新」->「選択された行の更新」ボタンをクリックします。
各行の追加が完了すると、追加した値の文字が赤から黒に変わります。もしエラーなく処理が完了しても文字の色が変わらなければ、「ワークアウトのリフレッシュ」を試してみてください。
データの更新
追加と類似の方法でデータを更新できます。シートに取得したデータを編集すると赤文字になるので、あとは行の更新を実行するだけです。
NetSuite からExcel へのデータ連携には、ぜひCData Excel Add-In をご利用ください
このようにCData Excel Add-In と併用することで、270を超えるSaaS、NoSQL データをExcel からコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData Excel Add-In は、日本のユーザー向けにUI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。