各製品の資料を入手。
詳細はこちら →Delphi のPipedrive のデータへのデータバインドコントロール
標準のデータアクセスコンポーネントとコントロールを備えたDelphi のPipedrive にデータバインドします。
最終更新日:2022-10-02
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
CData ODBC Driver for Pipedrive は、ODBC 標準をサポートし、リアルタイムPipedrive のデータとビジュアルフォームデザイナおよびDelphi の他のラピッド開発ツールとの統合を可能にします。ODBC ドライバーは、データベース開発用のシングルAPI を提供することにより、Delphi のような単一のコードベースを共有するアプリケーションのデータアクセス戦略を簡素化します。この記事では、Pipedrive に接続してシンプルなVisual Component Library (VCL) アプリケーションおよびDelphi コードからデータをクエリする方法を説明します。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- Pipedrive をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにPipedrive のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてPipedrive の接続を設定、2.Delphi 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとPipedrive への接続設定
まずは、本記事右側のサイドバーからPipedrive ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
未指定の場合は、初めにODBC DSN (data source name) で接続プロパティを指定します。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC Data Source Administrator を使用して、ODBC DSN を作成および構成できます。
Pipedrive 接続プロパティの取得・設定方法
Pipedrive には、接続および認証する2つの方法があります。Basic およびOAuth です。
Basic 認証
Basic 認証で認証するには:- API トークンを取得します。
- Pipedrive ポータルを開きます。
- ページ右上のアカウント名をクリックします。Pipedrive はドロップダウンリストを表示します。
- 会社設定 -> Personal Preferences -> API -> Generate Token に移動します。
- 生成されたAPI トークンの値を記録します。また、CompanyDomain を控えておきます。これは、PipeDrive ホームページのURL に表示されます。(これは会社の開発者用サンドボックスのURL です。)
- 次の接続プロパティを設定します。
- APIToken:取得したAPI トークンの値。
- CompanyDomain:開発者サンドボックスURL のCompanyDomain。
- AuthScheme:Basic。
- 承認されたユーザー名とパスワードでログインします。
API トークンはPipedrive ポータルに保存されます。これを取得するには、会社名をクリックし、ドロップダウンリストを使用して会社設定 -> Personal Preferences -> API に移動します。
OAuth 認証
ユーザー名やパスワードへのアクセスを保有していない場合や、それらを使いたくない場合にはOAuth ユーザー同意フローを使用します。認証方法については、ヘルプドキュメントの「OAuth 認証」セクションを参照してください。
以下のステップに従ってData Explorer を使用し、Pipedrive へのFireDAC 接続を作成できます。
- 新しいVCL Forms アプリケーションの[Data Explorer]で[FireDAC]ノードを展開します。
- [Data Explorer]で[ODBC Data Source]ノードを右クリックします。
- [Add New Connection]をクリックします。
- 接続の名前を入力します。
- 表示される[FireDAC Connection Editor]で、[DataSource]プロパティをODBC DSN for Pipedrive の名前に設定します。

Pipedrive のデータに接続できるVCL アプリケーションの作成
以下のステップに従って、クエリの結果をグリッドに表示するシンプルなVCL アプリケーションからPipedrive のクエリの実行を開始します。
-
TFDConnection コンポーネントフォームにドロップし、以下のプロパティを設定します。
- ConnectionDefName:Pipedrive へのFireDAC 接続を選択します。
- Connected:メニューから[True]を選択し、表示されるダイアログで資格情報を入力します。
-
TFDQuery コンポーネントをフォームにドロップし、以下のプロパティを設定します。
- Connection:コンポーネントがまだ指定されていない場合は、このプロパティを[TFDConnection]コンポーネントに設定します。
SQL:[SQL]プロパティ内のボタンをクリックし、クエリを入力します。例:
SELECT PersonName, UserEmail FROM Deals WHERE Value > 50000
- Active:このプロパティをtrue に設定します。
TDataSource コンポーネントをフォームにドロップし、以下のプロパティを設定します。
- DataSet:このプロパティのメニューで、TFDQuery コンポーネントの名前を選択します。
-
TDBGrid コントロールをフォームにドロップし、以下のプロパティを設定します。
- DataSource:TDataSource の名前を選択します。
- 実行時エラーを回避するために、TFDGUIxWaitCursor をフォームにドロップします。

FireDAC コンポーネントを使用してPipedrive へのコマンドを実行
TFDConnection およびTFQuery コンポーネントを使用してPipedrive へのクエリを実行できます。このセクションでは、TFQuery コンポーネントを使用してクエリを実行するPipedrive 固有の例を示します。
Pipedrive のデータに接続
データソースに接続するには、TFDConnection コンポーネントの[Connected]プロパティをtrue に設定します。コードでも同じプロパティを設定できます。
FDConnection1.ConnectionDefName := 'mypipedrive';
FDConnection1.Connected := true;
パラメータクエリの作成
パラメータ化されたリソースはパフォーマンスを向上させることができます。ステートメントの準備は、システムリソースと時間の面でコストがかかります。ステートメントの準備中、接続がアクティブで開いている必要があるためです。FireDACはデフォルトで、同じクエリが何度もリコンパイルされないようにクエリを準備します。ステートメントの準備を無効にするには、ResourceOptions.DirectExecute を[True]に設定します。クエリを一回だけ実行する必要がある場合などに設定します。
クエリの実行
select クエリなど、結果セットを返すクエリを実行するには、Open メソッドを使用します。Open メソッドは、クエリを実行して結果セットを返し、それを開きます。クエリが結果セットを生成しない場合、Open メソッドはエラーを返します。
FDQuery1.Open('select * from Deals where Value = :Value',['50000']);
delete のような結果セットを返さないクエリを実行するには、ExecSQL メソッドを使用します。クエリが結果セットを返す場合、ExecSQL メソッドはエラーを返します。影響を受ける行の数を取得するには、[TFD.RowsAffected]プロパティを使用します。
FDQuery1.ExecSQL('delete from Deals where Id= :myId',['x12345']);
i := FDQuery1.RowsAffected;
おわりに
このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。