Claris FileMaker Pro のスクリプト機能を使ってOutlook のデータに接続

Dibyendu Datta
Dibyendu Datta
Lead Technology Evangelist
CData API Driver for ODBC と FileMaker Pro のスクリプト機能を使用して、Outlook に接続し、FileMaker アプリケーションでOutlook のデータを操作する方法を解説します。



Claris FileMaker は、データの管理や整理のためのカスタムアプリを作成できるローコードデータベースアプリケーション開発ツールです。強力なリレーショナルデータベースエンジンと直感的なインターフェースを組み合わせており、技術者でも非技術者でも、デスクトップ、Web、モバイルプラットフォーム向けのアプリケーションを設計・デプロイできます。

この記事では、CData API Driver for ODBC と FileMaker のスクリプト機能を使ってOutlook のデータに接続する方法を解説します。

Outlook 用の ODBC データソースを作成

まだ設定していない場合は、最初に ODBC DSN(データソース名)で接続プロパティを指定します。これはドライバーインストールの最終ステップでもあります。Microsoft ODBC データソースアドミニストレーターを使用して ODBC DSN を作成・設定できます。

OAuth 認証の設定

Microsoft Graph API は認証に OAuth 2.0 を使用します。OAuth 認証情報(Client ID と Client Secret)を取得するには、Microsoft Azure Portal でアプリケーションを登録する必要があります。

OAuth 認証情報の取得

  1. Azure Portal にログインします。
  2. Azure Active Directory > App registrations に移動します。
  3. New registration をクリックして新しいアプリケーションを作成します。
  4. アプリケーション名を入力し、適切なアカウントの種類を選択します。
  5. Redirect URI をアプリケーションのコールバック URL に設定します(デスクトップアプリの場合は http://localhost:33333 など)。
  6. Register をクリックしてアプリケーションを作成します。
  7. アプリケーションの概要ページで Application (client) ID をコピーします。これが OAuthClientId になります。
  8. Certificates & secrets に移動して、新しいクライアントシークレットを作成します。
  9. クライアントシークレットの値をコピーします。これが OAuthClientSecret になります。
  10. API permissions に移動して、必要な Microsoft Graph API の権限を追加します:
    • Mail.Read - メールメッセージへのアクセス用
    • Contacts.Read - 連絡先へのアクセス用
    • Calendars.Read - カレンダーイベントへのアクセス用
    • Tasks.Read - To Do タスクへのアクセス用
    • offline_access - リフレッシュトークンの取得用
  11. Grant admin consent をクリックして、これらの権限を付与します。

OAuth での接続

以下の接続プロパティを設定して接続を確立してください:

  • AuthScheme:OAuth に設定します。
  • InitiateOAuthGETANDREFRESH に設定します。CData API Profile for Outlook が OAuth プロセスを自動的に進め、アクセストークンを取得します。
  • OAuthClientId:Azure Portal の Application (client) ID に設定します。
  • OAuthClientSecret:Azure Portal のクライアントシークレットの値に設定します。
  • TenantId:Azure AD のテナント識別子(GUID または 'contoso.onmicrosoft.com' のようなドメイン名)に設定します。
  • CallbackURL:アプリ登録で指定したリダイレクト URI に設定します(デスクトップアプリの場合は http://localhost:33333 など)。

接続文字列の例

Profile=C:\profiles\Outlook.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;TenantId=your_tenant_id;CallbackUrl=http://localhost:33333;

DSN を設定する際には、Max Rows 接続プロパティも設定することをお勧めします。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させるのに役立ちます。

スクリプトを使用して FileMaker でOutlook のデータを接続・同期

このセクションでは、CData API Driver for ODBC とスクリプト機能を使用して、FileMaker にリアルタイムのOutlook データを接続する手順を説明します。初回インポート時には、FileMaker は外部データソースからすべてのデータを取り込みます。2回目以降のインポートでは、外部ソースで変更されたデータのみが更新されます(差分更新)。また、現在のレコード順序でデータを置換したり、これらの差分更新を自動同期のためにスケジュール設定することもできます。

Mac/Windows/Linux システム向けの最新版 FileMaker Pro は、こちらのリンクからダウンロード・インストールできます。

スクリプトを使った FileMaker との接続と同期

FileMaker のスクリプト機能を使用すると、単一のコマンドで一連のアクションを実行し、複雑なタスクやワークフローを自動化できます。スクリプトを使ってOutlook と連携することで、FileMaker アプリケーション内でOutlook のデータへの接続、インポート、更新、置換を自動化し、データ管理を効率化できます。

スクリプトを使った初回インポートとデータの追加

このセクションでは、以下の手順でスクリプトを使ってOutlook のデータを FileMaker にインポートします:

  1. FileMaker Pro を開きます。左パネルから Create に移動し、Blank > Create を選択します。
  2. 任意のファイル名を入力して Save をクリックします。
  3. Manage Database ウィンドウで Tables タブに移動し、Outlook のデータを表示するテーブルを作成または名前変更します。
  4. Fields タブで、テーブルで使用するフィールドを作成・追加します。
  5. Relationships タブで、複数のテーブルがある場合はテーブルのリレーションシップを追加し、OK をクリックします。
  6. テーブル構造を再度開いて変更するには、File > Manage > Database に移動します。
  7. Scripts > Script Workspace に移動します。
  8. New Script を選択して新しいスクリプトワークスペースを開きます。
  9. 右側の Steps パネルから Records > Import Records > Insert into Script を選択します。
  10. Specify Data Source ドロップダウンで ODBC Data を選択します。
  11. Select ODBC Data Source ウィンドウから CData API Sys を選択し、Continue をクリックします。Outlook の資格情報を入力して OK をクリックします。
  12. Specify ODBC SQL Query ダイアログで、SQL text エディタに SQL クエリを入力して、インポートしたいOutlook のデータを指定します。
  13. あるいは、Query Builder を選択して SQL Query Builder ウィンドウを開きます。Tables セクションから対象テーブルを選択し、Columns セクションから関連するカラムを選択します。各選択後に Insert into SQL Query をクリックしてクエリを自動生成します。WHEREORDER BY 句、または専用のタブを使用してクエリを手動で編集することもできます。OK をクリックしてクエリを確定します。
  14. OK をクリックします。
  15. Specify import order オプションで Specify をクリックし、Outlook の資格情報を入力します。
  16. Specify Import Order ウィンドウで、先ほど追加したターゲットフィールドのインポート順序を定義します。ソースフィールドとターゲットフィールドの間で Add を選択して、Outlook のデータを新しいレコードとしてテーブルに挿入します。Import をクリックします。
  17. これでスクリプトがワークスペースに表示されます。Run をクリックしてスクリプトを実行し、インポートを処理します。
  18. FileMaker がOutlook のデータをテーブルとしてインポートします。

スクリプトを使ったインポート済みデータの更新または置換

Outlook のデータを FileMaker にインポートした後、以下の手順でスクリプトを使ってOutlook で行われた変更を更新または置換できます:

  1. 前のセクションで説明した手順に従って Script Workspace に戻ります。
  2. 既存のスクリプトを選択し、設定ボタンをクリックして Specify Import Order の下の Specify を選択し、認証のためにOutlook の資格情報を再入力します。
  3. Specify Import Order ウィンドウで、ソースとターゲットの間で Update を選択して、インポート済みのOutlook データを更新します。これにより、マッチフィールドの値が同じ場合に、選択したフィールドのOutlook データ値でターゲットの検索セットが更新されます。マッピングで少なくとも1つのマッチフィールドを定義し、Add remaining data as new records チェックボックスを選択する必要があります。Import をクリックします。
  4. あるいは、ユースケースに応じて Update の代わりに Replace オプションを選択します。これにより、ターゲットの検索セット内の選択したフィールドが、現在のレコード順序でOutlook のデータに置換されます。Import をクリックします。
  5. FileMaker がスクリプトをワークスペースに追加します。Run をクリックしてスクリプトを実行し、インポートクエリを処理します。
  6. FileMaker が更新または置換されたOutlook のデータをテーブルとしてインポートします。

今すぐ始めましょう

CData API Driver for ODBC の30日間無償トライアルをダウンロードして、Outlook のデータを Claris FileMaker に統合し、FileMaker アプリケーションでOutlook のデータを活用してみてください。

ご質問がある場合は、サポートチームまでお問い合わせください。

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

API Driver で Outlook のライブデータに接続

Outlook に接続