ODBC 経由で PowerBuilder から Outlook のデータ に接続

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
CData ODBC Driver for Outlook を使用して PowerBuilder からOutlook のデータに接続し、クエリを実行する方法を説明します。



CData ODBC Driver for Outlook は、ODBC をサポートするあらゆるプラットフォームや開発技術から使用できます。PowerBuilder もその一つです。この記事では、Outlook のデータ に接続し、Database Painter や DataWindow などのコントロールからクエリを実行する方法を説明します。

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;

Outlook 用 ODBC ドライバ のプロファイルを作成

以下の手順に従って、Database Painter ツールを使用し、Outlook の ODBC DSN(データソース名)に基づいてデータベースプロファイルを作成します。Database Painter では、ウィザードや UI を使用してOutlook のデータを操作できます。

  1. PowerBuilder で、[ツール] -> [Database Painter]をクリックします。
  2. Database Painter の [オブジェクト] ウィンドウで、ODBC ノードを右クリックし、[新しいプロファイル] をクリックします。
  3. [接続] タブで、プロファイル名を入力し、[データソース] メニューで Outlook DSN を選択します。
  4. テーブルを表示・編集するには、テーブルを右クリックして [データの編集] -> [グリッド] をクリックします。

PowerBuilder コントロールで Outlook のデータ を使用

標準の PowerBuilder オブジェクトを使用して ODBC データソースに接続し、クエリを実行できます。以下の例では、Outlook のデータ を DataWindow に取得する方法を示します。次のコードを open メソッドに追加してください。

SQLCA.DBMS = "ODBC"
SQLCA.DBParm = "ConnectString='DSN=CData API Source'"
CONNECT USING SQLCA;
dw_calendargroupcalendars.SetTransObject(SQLCA);
dw_calendargroupcalendars.Retrieve();

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

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

Outlook に接続