顧客関係管理 (CRM) クラウドベースのビジネス ソリューションである Salesforce にデータをリンクまたはインポートできます。 詳細については、「 Salesforce.com」を参照してください。
- データにリンクする場合、Access は、Access と Salesforce のデータに対する変更を同期する双方向接続を作成します。
- データをインポートする場合、Access は 1 回限りのデータのコピーを作成するため、Access または Salesforce のいずれかのデータに対する変更は同期されません。
へのリンクまたは Salesforce からのデータのインポート機能は、Access 2019 のボリューム ライセンスインスタンス、または次のMicrosoft 365 Enterpriseプランでのみサポートされています: Microsoft 365 Apps for enterprise、Office 365 EnterpriseE3、および E5 Office 365 Enterprise。 詳細については、「Microsoft 365 Enterprise プランの比較」を参照してください。
はじめに
もっとスムーズに進みたいですか? 次に、リンクまたはインポートする前に、次の準備を行います。
- ユーザー名、パスワード、トークンなど、必要な接続情報を特定します。 会社の信頼できる IP 範囲外のインターネット プロトコル (IP) アドレスから Salesforce にアクセスしようとすると、大文字と小文字を区別する英数字コードであるセキュリティ トークンを入力する必要があります。 詳細については、「 セキュリティ トークンをリセットする」を参照してください。
- Salesforce へのアクセスに使用する ODBC ドライバーには、Developer Edition、Professional Edition、Enterprise Edition、または Unlimited Edition に基づく Salesforce アカウントが必要です。 このドライバーを使用するには、API アクセスを有効にする必要があります。 詳細については、「 Salesforce 組織への個々の API クライアント アクセスを制御する」を参照してください。
- リンクまたはインポートするテーブルを指定します。 一度の操作で複数のテーブルをリンクまたはインポートすることができます。
- 各テーブルの列数を考慮します。 Access は 1 テーブルにつき 255 を超えるフィールドをサポートしていないため、Access は最初の 255 列のみをリンクまたはインポートします。
- インポートするデータの総量を決定します。 Access データベースの最大サイズは、2 GB からシステム オブジェクトに必要な領域を引いた大きさです。 Salesforce に大きなテーブルが含まれている場合、すべてを 1 つの Access データベースにインポートすることはできません。 この場合、インポートする代わりにデータへリンクすることを検討してください。
- 信頼できる場所と Access データベース パスワードを使用して、Access データベースとそれに含まれる接続情報を保護します。 詳細については、「データベースを信頼するかどうか決定する」と「データベース パスワードを使用してデータベースを暗号化する」を参照してください。
- 追加のリレーションシップを作成することを計画します。 Access は、Salesforce データ モデルで選択されたテーブルにリンクしたり、テーブルをインポートしたりしますが、関連するテーブルに対してはリンクもインポートも行いません。 このデータ モデルの詳細については、「データ モデルの 概要」を参照してください。
Access は、これらの関連するテーブル間にリレーションシップを自動的に作成しません。 [リレーションシップ] ウィンドウを使用して、新しいテーブルと既存のテーブル間のリレーションシップを手動で作成することはできます。 詳細については、「リレーションシップ ウィンドウとは」と「リレーションシップを作成、編集、または削除する」を参照してください。
ステージ 1:はじめに
[外部データ>新しいデータ ソース>From Online Services>From Salesforce] を選択します。
次のいずれかの操作を行います。
- インポートするには、[現在のデータベースの新しいテーブルにソース データをインポートする] を選びます。
- リンクするには、[リンク テーブルを作成してソース データにリンクする] をクリックします。
[OK] をクリックします。
ステージ 2:資格情報と接続文字列パラメーターを入力する
[ Microsoft Access – Salesforce に接続] ダイアログ ボックスで、次の操作を行います。
- [ユーザー名] と [パスワード] ボックスにユーザー名とパスワードを入力します。
- [セキュリティ トークン] ボックスにセキュリティ トークンを入力します。
- 必要に応じて、[追加の接続文字列パラメーター] ボックスに 1 つ以上の 接続パラメーターを 入力します。
詳細については、「接続パラメーター」を参照してください。
ステージ 3: リンクまたはインポートするテーブルを選ぶ
[ テーブルのリンク または オブジェクトのインポート ] ダイアログ ボックスの [ テーブル] で、リンクまたはインポートする各テーブルを選択し、[ OK] をクリックします。
リンク操作で、[パスワードを保存] を選択するかどうかを決定します。
セキュリティ このオプションを選択すると、Access を開いてデータにアクセスするたびに資格情報を入力する必要がなくなります。 これは、ソース コンテンツにアクセスできるユーザーがユーザー名とパスワードを表示できることを意味しています。 このオプションを選択する場合、信頼できる場所に Access データベースを保存し、Access データベース パスワードを作成することを強くお勧めします。 詳細については、「データベースを信頼するかどうか決定する」と「データベース パスワードを使用してデータベースを暗号化する」を参照してください。
ステージ 4: 定義およびタスクを作成する (インポートのみ)
- [外部データの取り込み - Salesforce データベース] ダイアログ ボックスで、インポート手順を定義として保存し、Outlook タスクを作成して定期的にインポート操作を実施するように自動化します。 詳細については、「インポートやエクスポートの操作の詳細を定義として保存する」を参照してください。
結果
リンクまたはインポート操作が完了すると、Salesforce テーブルまたはビューと同じ名前のテーブルがナビゲーション ウィンドウに表示されます。 インポート操作中に、その名前が既に使用されている場合、Access は新しいテーブル名に "1" を追加します。 ただし、テーブルの名前をより意味のある名前に変更できます。
インポート操作では、Access はデータベースのテーブルを上書きすることはありません。 Salesforce データを既存のテーブルに直接追加することはできませんが、同じようなテーブルからデータをインポートした後は追加クエリを作成してデータを追加することができます。
リンク操作では、Salesforce テーブルで列が読み取り専用の場合、Access でも読み取り専用になります。
ヒント 接続文字列を表示するには、Access のナビゲーション ウィンドウのテーブルの上にマウス ポインターを置きます。
リンクされたテーブルのデザインを更新する
リンク テーブル内の列の追加、削除、変更、またはデータ型の変更はできません。 デザインを変更する場合は、Salesforce で行います。 Access でデザイン変更を確認するには、リンクしたテーブルを更新します。
- [ 外部データ>リンク テーブル マネージャー] を選択します。
- 更新するリンクされた各テーブルを選択し、[OK] を選択して、[閉じる] を選択します。
接続パラメーター
次の表では、[Microsoft Access – Salesforce に接続] ダイアログ ボックスの [追加の接続文字列パラメーター] ボックスに入力できる接続パラメーターについて説明します。
複数のパラメーターがある場合はセミコロンで区切ります。 ガイドとして、次の構文例を参照してください。
UID=myaccount;BulkBatchSize=9000;UseNumeric=1;
| キーの名前 | 説明 | 既定値 | 必須 |
|---|---|---|---|
| PWD | [ユーザー名] フィールド (UID キー) に指定したユーザー名に対応するパスワード。 | なし | ○ |
| UID | Salesforce アカウントのユーザー名。 | なし | ○ |
| AutoLogout | このオプションが有効な場合 (1)、ドライバーが接続を閉じるときに Salesforce 接続はログアウトされます。 このオプションが無効な場合 (0)、ドライバーが接続を閉じるときに Salesforce 接続はログアウトされません。 |
1 | × |
| BulkBatchSize | DML を実行するときに、1 つの一括 API の呼び出しに含まれる最大行数。 最大値は 10000 です。 | 5000 | × |
| CERTSPATH | サーバーを確認するために使用される、信頼できる CA 証明書を含む PEM ファイルのフル パス。 このオプションが設定されていない場合、ドライバーの既定で、ドライバーによってインストールされた信頼できる CA 証明書の PEM ファイルが使用されます。 | ドライバーのインストール ディレクトリ内にある \lib サブフォルダーの cacerts.pem ファイル。 | × |
| METADATALEVEL | このオプションが有効な場合 (キーが 1 または LIGHT に設定されている場合)、ドライバーは、すべてのデータではなく、少数のデータのサンプリングに基づいて、メタデータを推測します。 このオプションが無効な場合 (キーが 0 または FULL に設定されている場合)、ドライバーは、すべてのデータに基づいてメタデータを推測します。 |
クリア (0 または FULL) | × |
| PARSEMETHOD | ドライバーがクエリの解析に使用するクエリ言語。 次の設定のいずれかを選ぶか、キーをかっこ内のいずれかの値に設定します。
|
Attempt to Parse Queries as SOQL First, Then SQL (2 or SOQL_ FIRST) | × |
| PROXYHOST | 接続を経由するプロキシ サーバーのホスト名または IP アドレス。 | なし | ○ (プロキシ サーバー経由で接続する場合) |
| PROXYPORT | プロキシ サーバーがクライアント接続をリッスンするときに使用するポートの番号。 | なし | ○ (プロキシ サーバー経由で接続する場合) |
| PROXYPWD | プロキシ サーバーへのアクセスに使用するパスワード。 | なし | ○ (認証が必要なプロキシ サーバーに接続する場合) |
| PROXYUID | プロキシ サーバーへのアクセスに使用するユーザー名。 | なし | ○ (認証が必要なプロキシ サーバーに接続する場合) |
| QueryAll | このオプションを有効にすると (1)、パラメーター isDeleted=true を含めることで、Salesforce ユーザーは削除されたレコードの検索を実行できるようになります。 このオプションを無効にすると (0)、ユーザーは削除されたレコードを検索できなくなります。 |
0 | × |
| SANITIZECATALOGNAME | このオプションが有効な場合 (1)、ドライバーはすべての無効な SQL-92 識別子文字を削除し、すべてのスペースをアンダースコアで置き換えることで、カタログ名を変更します。 このオプションが無効な場合 (0)、ドライバーはカタログ名を変更しません。 |
クリア (0) | × |
| URL | Salesforce サンド ボックスに接続する URL。 | なし | × |
| UseAnalyticAPI | このオプションが有効な場合 (1)、ドライバーは Analytics API を使用してレポートを実行します。 このオプションが無効な場合 (0)、ドライバーは URL 経由でレポートを実行します。 |
選択 (1) | × |
| USELABEL | このオプションが有効な場合 (1)、ドライバーは、返されるデータの名前とラベルとして、それぞれ Salesforce のフィールド名とラベルを使用します。 このオプションが無効な場合 (0)、ドライバーは、返されるデータの名前とラベルの両方として、Salesforce のフィールド名を使用します。 |
クリア (0) | × |
| UseNumeric | このオプションが有効な場合 (1)、ドライバーは SQL_DOUBLE データではなく、SQL_NUMERIC データとしてデータを返します。 このオプションが無効な場合 (0)、ドライバーは SQL_DOUBLE データとしてデータを返します。 |
クリア (0) | × |
| UseWVarChar | このオプションは、データ型を SQL にマップする方法を指定します。 このオプションが有効な場合 (1)、ドライバーは SQL_VARCHAR データではなく、SQL_WVARCHAR データとしてデータを返します。 このオプションが有効な場合 (0)、ドライバーは SQL_VARCHAR データとしてデータを返します。 |
クリア (0) | × |