FileMaker Pro とSharePoint Excel Services の連携

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
JDBC ドライバーのMySQL リモート機能を使用して、Mac またはWindows 版FileMaker Pro にSharePoint Excel Services のデータ を連携。

この記事では、CData JDBC Driver for SharePoint Excel Services を使用して、FileMaker Pro のExternal SQL Sources(ESS)機能と連携する方法を説明します。ESS を利用すると、FileMaker Pro 内のレコードを他のデータストアの関連レコードとリンクできます。

MySQL リモート機能を使用して、SharePoint Excel Services をリモートMySQL データベースとしてアクセスします。CData JDBC Driver for SharePoint Excel Services は、JDBC とMySQL の両規格を実装しており、FileMaker Pro のように従来のMySQL データベースへの接続はサポートしていても、汎用のJDBC 接続をサポートしていないアプリケーションとの連携を実現します。

FileMaker Pro 連携方式の選択

FileMaker Pro には2つのデータアクセス方式があります。

  • データインポート:SharePoint Excel Services データをFileMaker Pro データベースにコピーし、必要に応じて更新できます。この方式を簡素化するには、CData ODBC ドライバーを使用します。FileMaker Pro はODBC をネイティブサポートしていますが、JDBC はサポートしていません。この方式については、FileMaker Pro でのODBC SharePoint Excel Services 連携を参照してください。
  • ESS:データのローカルコピーを使用する代わりに、JDBC ドライバーを使用して外部SQL ソースを作成できます。リモートデータはFileMaker Pro で変更でき、テーブルは標準のFileMaker Pro テーブルと同様にリレーションシップグラフで使用できます。

ESS セットアップの概要

JDBC ドライバーはデータアクセスチェーンの一部です。ネイティブのODBC 連携と比較すると、MySQL リモートを使用するFileMaker Pro 連携には追加のコンポーネントがあります。この記事では、以下の各コンポーネントをFileMaker Pro とリンクする方法を説明します。

  1. CData JDBC ドライバー
  2. CData MySQL リモートデーモン(ドライバーに同梱)
  3. MySQL 用ODBC ドライバー

    Windows では、FileMaker Pro は公式のMySQL ドライバー、MySQL Connector\ODBC を必要とします(現時点でのベストオプションはConnector\ODBC 8.0.11 です)。

    macOS では、FileMaker Pro はActual Technologies Open Databases ODBC ドライバーを必要とします。

  4. ODBC ドライバーマネージャー

    Windows では、ドライバーマネージャーは組み込みです。macOS では、ODBC ドライバーをインストールする前にドライバーマネージャーをインストールする必要があります。iODBC ドライバーマネージャーをインストールしてください。

リモートデーモンの起動

以下の手順に従って、MySQL リモート機能を有効にします。

  1. ターミナルを開き、インストールフォルダのlib サブフォルダに移動します。

    $ cd "/Applications/CData/CData JDBC Driver for SharePoint Excel Services/lib"
    
  2. 構成ファイル(デフォルトではcdata.jdbc.excelservices.remoting.ini)を編集します。
    • [databases] セクションをSharePoint Excel Services 用のJDBC 接続URL で更新します。
      	excelservices = "URL=https://myorg.sharepoint.com;User=admin@myorg.onmicrosoft.com;Password=password;File=Book1.xlsx;"
      	

      ワークブックへの接続

      どちらのSharePoint エディションをお使いでも、File を Excel ワークブックに設定してください。このパスは以下のプロパティからの相対パスになります。

      • Library:デフォルトではShared Documents ライブラリが使用されます。このプロパティを使って、組織内の別のドキュメントライブラリを指定してみてください。例えば、OneDrive for Business に接続する場合は、このプロパティを"Documents" に設定します。
      • Folder:このプロパティを使って、ライブラリ内のサブフォルダへのパスを指定できます。パスはLibrary で指定されたライブラリ名に関連します。

      テーブルとしてのスプレッドシートデータへの接続

      CData 製品では、基底API で利用可能なオブジェクトに基づいて、使用可能なテーブルを検出していきます。

      API では異なるAPI オブジェクトを表示します。スプレッドシートの構成とSharePoint のバージョンに基づいてAPI を選択しましょう。

      • OData: OData API を使用すると、Excel で[挿入]->[テーブル]をクリックして作成されたExcel テーブルオブジェクト(範囲やスプレッドシートではありません)から定義されたテーブルにアクセスできます。OData API に接続する際、ワークブックにテーブルオブジェクトが定義されていない場合は、CData 製品がテーブルを返さないことがあります。テーブルとしてスプレッドシートまたは範囲に接続するには、UseRESTAPI をtrue に設定してください。
      • REST: REST API を使用すると、Excel テーブルオブジェクト、範囲、およびスプレッドシートから定義されたテーブルへアクセスできます。これがデフォルトの API です。範囲およびスプレッドシートから多数の行をリクエストすることは REST API によって制限されており、CData 製品では返される行数をデフォルトで 100 に制限しています。また CData 製品では、デフォルトで1行目からカラム名を検出します。これを無効にするには、Header を設定してください。

      DefineTables を追加設定すると、Excel の範囲の構文を使用して、範囲に基づいてテーブルを定義できます。大きすぎる範囲は、API によって制限されます。

      SharePoint オンプレミスへの接続

      URL をサーバー名もしくはIP アドレスに設定しましょう。さらに、SharePointVersion と認証値を設定します。

      SharePoint OnPremises を認証するには、AuthScheme を認証タイプに設定し、必要に応じてUserPassword を設定してください。

      Note:SharePoint On-Premises 2010 に接続する場合は、 UseRESTAPI をtrue に設定する必要があります。

        Windows(NTLM)

        最も一般的な認証タイプです。CData 製品では NTLM をデフォルトとして使用するよう事前設定されています。Windows のUserPassword を設定して接続してください。

        その他の認証方法については、ヘルプドキュメントの「はじめに」をご覧ください。

        利用可能な接続プロパティやその他のリモート設定オプションの詳細については、ヘルプドキュメントを参照してください。

    • コマンドラインで構成ファイルまたは設定を指定して、MySQL デーモンを起動します。以下の例では、同梱のサンプル構成ファイルを使用しています。

      $ java -jar cdata.jdbc.excelservices.jar -f "cdata.jdbc.excelservices.remoting.ini"
      

DSN の作成

SharePoint Excel Services への接続に成功しMySQL デーモンを起動したら、MySQL ODBC データソースを作成します。 ODBC データソースを使用する場合、DSN(データソース名)で接続プロパティを指定します。

ODBC ドライバーとドライバーマネージャーをまだ入手していない場合は、「ESS セットアップの概要」を参照して、お使いのプラットフォームでサポートされているコンポーネントを確認してください。

macOS

以下の手順に従って、iODBC グラフィカル管理ツールを使用します。

  1. Launchpad で検索してiODBC を開きます。
  2. システムDSN タブで、「追加」をクリックし、Actual Open Source Databases を選択します。
  3. 以下の情報を入力してウィザードを完了します。
    • 名前:DSN を入力します。
    • サーバー:127.0.0.1 またはMySQL デーモンが実行されているマシンのアドレスを入力します。
    • ポート:デーモンがリッスンしているポートを入力します。例:3306。
    • データベース:デーモンの構成ファイルで指定されたデータベース名を入力します。例:ExcelServices。
    • 「メタデータ」タブで、以下のチェックボックスをオンにします。
      • 「Ignore schema in column specifications」
      • 「Don't use INFORMATION_SCHEMA for metadata」
  4. 「接続テスト」をクリックし、ダイアログで資格情報を入力します。

Windows

組み込みのMicrosoft ODBC データソースアドミニストレータを使用してODBC DSN を作成できます。

  1. コントロールパネルから「データソース(ODBC)のセットアップ」を選択します。ODBC データソースアドミニストレータが表示されます。
  2. システムDSN タブで、「追加」をクリックし、MySQL ODBC ドライバーを選択します。
  3. 以下の情報を入力してウィザードを完了します。
    • 名前:DSN を入力します。
    • サーバー:127.0.0.1 またはMySQL デーモンが実行されているマシンのアドレスを入力します。
    • ポート:デーモンがリッスンしているポートを入力します。例:3306。
    • データベース:デーモンの構成ファイルで指定されたデータベース名を入力します。例:ExcelServices。
    • 「メタデータ」タブで、以下のチェックボックスをオンにします。
      • 「Ignore schema in column specifications」
      • 「Don't use INFORMATION_SCHEMA for metadata」
  4. 「接続テスト」をクリックし、ダイアログで資格情報を入力します。

SharePoint Excel Services シャドウテーブルの作成

シャドウテーブルは外部SQL ソースに存在しますが、FileMaker データベースの他のテーブルとほぼ同様に使用できます。リレーションシップグラフに追加したり、データを参照したり、レイアウトを作成したりできます。

  1. 「ファイル」->「管理」->「データベース」をクリックします。
  2. 表示されるダイアログの「リレーションシップ」タブで、「テーブル/リレーションシップ」セクションの「テーブルを追加」ボタンをクリックします。
  3. 「データソース」メニューで、「ODBC データソースを追加」を選択し、前のセクションで作成したDSN を選択します。

DSN のユーザー名とパスワードを指定すると、SharePoint Excel Services テーブルをリレーションシップグラフに追加できます。 「表示」->「ブラウズモード」をクリックすることで、リモートMySQL データベースと同様にSharePoint Excel Services のデータ のスクロール、ソート、集計が可能になります。

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

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

 ダウンロード

詳細:

SharePoint Excel Services Icon SharePoint Excel Services JDBC Driver お問い合わせ

SharePoint サーバーでホストされているリアルタイムなExcel スプレッドシートコンテンツを組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。