Active Query Builder を使用してTalkdesk 駆動型アプリを素早く開発

古川えりか
古川えりか
コンテンツスペシャリスト
Active Query Builder の SQL インターフェースと .NET データアクセスを活用して、Talkdesk と連携するデータ駆動型の WinForms・ASP.NET アプリを作成できます。

SQL インターフェースを介してTalkdesk を公開する標準.NET を記述します。Active Query Builder は、開発者がSQL インターフェースを作成するのに役立ちます。CData ODBC Driver for Talkdesk は、Talkdesk への標準ベースのアクセスを可能にします。この統合では、ODBC ドライバーとActive Query Builder オブジェクト間のブリッジとして、Microsoft ADO.NET Provider for ODBC を使用してビジュアルSQL コンポーザーを構築します。

CData ODBC ドライバとは?

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

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

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

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

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

未指定の場合は、初めに ODBC DSN(データソース名)で接続プロパティを指定します。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC データソースアドミニストレーターを使用して、ODBC DSN を作成および設定できます。

Talkdesk では OAuth 2.0 の Client Credentials グラントを使用します。ブラウザでの認可ステップやコールバック URL は必要ありません。

以下の接続プロパティを設定します。

  • AccountName:Talkdesk アカウントの名前。
  • Region:Talkdesk インスタンスがデプロイされているリージョン。指定できる値は US(デフォルト)、EU、CA、AU、UK、FedRamp です。
  • OAuthClientId:カスタム OAuth アプリケーションの登録時に割り当てられた Client Id。
  • OAuthClientSecret:カスタム OAuth アプリケーションに割り当てられた Client Secret。

カスタム OAuth アプリケーションの作成

  1. Talkdesk アカウントにログインし、ナビゲーションメニューから OAuth Clients を選択します。
  2. Create OAuth Client をクリックし、クライアントにわかりやすい名前を付けます。
  3. Grant Type を Client Credentials に設定します。
  4. Add scopes をクリックし、アクセスしたいデータに応じたスコープを選択します。
  5. Create をクリックし、Client Id と Client Secret をコピーします。

接続時、ドライバーは Talkdesk にアクセストークンを自動でリクエストしてキャッシュし、有効期限が切れると更新します。アプリケーションで選択したスコープが、クエリ予定のビューに対応していることを確認してください。対応していない場合、トークンのリクエストが失敗することがあります。

SQL を使用してTalkdesk と対話

以下のステップに従ってWinForms ビジュアルクエリビルダーを作成します。

  1. 新しいWindows Forms プロジェクトで、QueryBuilder を[Toolbox]からフォームにドラッグします。
  2. ActiveQueryBuilder.ODBCMetadataProvider への参照を追加します。
  3. OdbcConnection を追加し、最初のセクションで作成したDSN に接続文字列を設定します。
    
    OdbcConnection connection = new OdbcConnection();
    connection.ConnectionString = "DSN=Talkdesk"
    
  4. ODBCMetadataProvider インスタンスとGeneralSyntaxProvider インスタンスを初期化し、ODBCMetadataProvider オブジェクトのConnection プロパティをOdbcConnection に設定します。
    
    GenericSyntaxProvider syntaxProvider = new GenericSyntaxProvider();
    ODBCMetadataProvider metadataProvider = new ODBCMetadataProvider();
    metadataProvider.Connection = connection;
    
  5. QueryBuilder オブジェクトの、対応するMetadataProvider プロパティとSyntaxProvider プロパティを設定します。
    
      queryBuilder1.MetadataProvider = metadataProvider;
      queryBuilder1.SyntaxProvider = syntaxProvider;
    
  6. QueryBuilder クラスのInitiatelizeDatabaseSchemaTree メソッドを呼び出してTalkdesk メタデータを取得し、Talkdesk テーブルのツリーデビューを生成します。
    queryBuilder1.InitializeDatabaseSchemaTree();
  7. QueryBuilder を作成したら、それをTextBox に接続するか、使用する場合は、ActiveQueryBuilder SQLTextEditor に接続しますSQLTextEditor をデザイナにドラッグし、ドロップします。

  8. 以下のコードをSQLTextEditor のValidating イベントに追加します。
    
    private void sqlTextEditor1_Validating(object sender, CancelEventArgs e) {
      try {
    
        // Update the query builder with manually edited query text:
        queryBuilder1.SQL = sqlTextEditor1.Text;
      }
      catch (SQLParsingException ex) {
        e.Cancel = true;
    
        // Set caret to error position
        sqlTextEditor1.SelectionStart = ex.ErrorPos.pos;
    
        // Report error
        MessageBox.Show(ex.Message, "Parsing error");
      }
    }
    
  9. SQLUpdated イベントに以下を追加します。
    
    private void queryBuilder1_SQLUpdated(object sender, EventArgs e) {
      sqlTextEditor1.Text = queryBuilder1.FormattedSQL;
    }
    
  10. これで、クエリをビジュアルに作成できます。[Columns Pane Area]のテーブルをダブルクリックすると、[entity/relationship]ダイアグラムが[Query Building Area]に表示されます。ダイアグラムで選択したカラムがクエリに追加されます。

Active Query Builder でクエリをインタラクティブに作成

はじめる準備はできましたか?

Talkdesk ODBC Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Talkdesk Icon Talkdesk ODBC Driver

Talkdesk ODBC Driver は、ODBC 接続をサポートするさまざまなアプリケーションからTalkdesk のリアルタイムデータ連携を実現するパワフルなツールです。

データベースにアクセスするときと同感覚でTalkdesk データにアクセスし、標準ODBC Driver インターフェースを通じてTalkdesk データを読み出せます。