こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
CData Excel Add-In for HubDB を使えば、Excel から直接HubDB のデータ取得、追加、編集が可能になります。HubDB のデータを一度Excel にエクスポートして編集・データソースの一括更新を行えるだけではなく、Excel スプレッドシートに保存されているデータを一括でHubDB にインポートすることも可能です。
この記事ではExcel Add-In の使い方を説明し、実際にHubDB データを取得、追加、編集していきます。記事の例ではNorthwindProducts テーブルを使いますが、同じことがCData Excel Add-In で取得できるすべてのHubDB データのテーブルに対して実行可能です。
HubDB への接続を設定
まずは、本記事右側のサイドバーからHubDB Excel Add-In の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
HubDB への接続には、Excel Add-in をインストールした後にExcel を起動して、「CData」タブ ->「データの取得」->「取得元:HubDB」とクリックしていきます。
接続エディタが表示されるので、接続プロパティを入力して「接続テスト」をクリックしてください。プロパティの取得方法について説明します。
HubDBデータソースへの接続には、パブリックHubSpotアプリケーションを使用したOAuth認証とプライベートアプリケーショントークンを使用した認証の2つの方法があります。
カスタムOAuthアプリを使用する
すべてのOAuthフローでAuthSchemeを"OAuth"に設定する必要があります。特定の認証ニーズ(デスクトップアプリケーション、Webアプリケーション、ヘッドレスマシン)に必要な接続プロパティについては、ヘルプドキュメントを確認してください。
アプリケーションを登録し、OAuthクライアント認証情報を取得するには、以下の手順を実行してください。
- HubSpotアプリ開発者アカウントにログインします。
- アプリ開発者アカウントである必要があります。標準のHubSpotアカウントではパブリックアプリを作成できません。
- 開発者アカウントのホームページで、アプリタブをクリックします。
- アプリを作成をクリックします。
- アプリ情報タブで、ユーザーが接続する際に表示される値を入力し、必要に応じて変更します。これらの値には、パブリックアプリケーション名、アプリケーションロゴ、アプリケーションの説明が含まれます。
- 認証タブで、「リダイレクトURL」ボックスにコールバックURLを入力します。
- デスクトップアプリケーションを作成する場合は、http://localhost:33333のようなローカルにアクセス可能なURLに設定します。
- Webアプリケーションを作成する場合は、ユーザーがアプリケーションを承認した際にリダイレクトされる信頼できるURLに設定します。
- アプリを作成をクリックします。HubSpotがアプリケーションとそれに関連する認証情報を生成します。
- 認証タブで、クライアントIDとクライアントシークレットを確認します。これらは後でドライバーを設定する際に使用します。
スコープの下で、アプリケーションの意図する機能に必要なスコープを選択します。
テーブルにアクセスするには、最低限以下のスコープが必要です:
- hubdb
- oauth
- crm.objects.owners.read
- 変更を保存をクリックします。
- 統合に必要な機能にアクセスできる本番ポータルにアプリケーションをインストールします。
- 「インストールURL(OAuth)」の下で、完全なURLをコピーをクリックして、アプリケーションのインストールURLをコピーします。
- コピーしたリンクをブラウザで開きます。アプリケーションをインストールする標準アカウントを選択します。
- アプリを接続をクリックします。結果のタブは閉じて構いません。
プライベートアプリを使用する
HubSpotプライベートアプリケーショントークンを使用して接続するには、AuthSchemeプロパティを"PrivateApp"に設定します。
以下の手順に従ってプライベートアプリケーショントークンを生成できます:
- HubDBアカウントで、メインナビゲーションバーの設定アイコン(歯車)をクリックします。
- 左サイドバーメニューで、統合 > プライベートアプリに移動します。
- プライベートアプリを作成をクリックします。
- 基本情報タブで、アプリケーションの詳細(名前、ロゴ、説明)を設定します。
- スコープタブで、プライベートアプリケーションがアクセスできるようにしたい各スコープに対して読み取りまたは書き込みを選択します。
- テーブルにアクセスするには、最低限hubdbとcrm.objects.owners.readが必要です。
- アプリケーションの設定が完了したら、右上のアプリを作成をクリックします。
- アプリケーションのアクセストークンに関する情報を確認し、作成を続行をクリックし、その後トークンを表示をクリックします。
- コピーをクリックして、プライベートアプリケーショントークンをコピーします。
接続するには、PrivateAppTokenを取得したプライベートアプリケーショントークンに設定します。
HubDB データの取得
接続設定が完了したら、いよいよHubDB のデータを取得してみましょう。
- 接続が完了すると、以下の「クエリを編集」画面が表示されます。
- 「テーブル/ビュー」項目の「選択」ボタンをクリックします。テーブル一覧が表示されるので、取得したいテーブルを選択してください。今回はNorthwindProducts を使います。
- 以下のようにテーブルのメタデータが自動で取得・表示されます。「最大行数」で取得するレコード数を調整することもできます。新規データの一括入力だけが目的の場合は、1行だけを取得するといったことも可能です。
- 「シート名」にデータを追加するExcel シートの名前を入力します。デフォルトでは、取得するテーブル名がシート名になります。準備ができたら「OK」をクリックすると、データが取得されます(以下はすべてサンプルデータです)。
HubDB へのデータの追加・更新
これで、データの取得は完了です。ここからはデータ追加をやっていきましょう。今回は、NorthwindProductsSample という別シートにあるデータをHubDB に追加していく、というシナリオで進めていきます。
- テーブルの最終行の下の行に、別シートを参照する式を入力します。例:=NorthwindProductsSample!A1。これで、別シートのデータをコピーできました。新たに追加してデータソース側に反映されていないデータは、赤文字で表示されます。注意点として、(読み取り専用)となっているカラムは空のままにしておいてください。
- 参照用のセルをドラッグドロップして、どんどんデータを追加します。CData Excel Add-In では複数行のデータを一括で追加できます。
- それでは、Excel で追加したデータを実際にHubDB に追加してみます。追加する行を選択して、CData リボン内の「行の更新」->「選択された行の更新」ボタンをクリックします。
各行の追加が完了すると、追加した値の文字が赤から黒に変わります。もしエラーなく処理が完了しても文字の色が変わらなければ、「ワークアウトのリフレッシュ」を試してみてください。
データの更新
追加と類似の方法でデータを更新できます。シートに取得したデータを編集すると赤文字になるので、あとは行の更新を実行するだけです。
HubDB からExcel へのデータ連携には、ぜひCData Excel Add-In をご利用ください
このようにCData Excel Add-In と併用することで、270を超えるSaaS、NoSQL データをExcel からコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData Excel Add-In は、日本のユーザー向けにUI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。