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

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

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

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

SharePoint Excel Services 用の ODBC データソースを作成

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

ワークブックへの接続

どちらの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 を設定して接続してください。

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

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

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

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

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

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

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

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

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

    1. FileMaker Pro を開きます。左パネルから Create に移動し、Blank > Create を選択します。
    2. 任意のファイル名を入力して Save をクリックします。
    3. Manage Database ウィンドウで Tables タブに移動し、SharePoint Excel Services のデータを表示するテーブルを作成または名前変更します。
    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 ExcelServices Sys を選択し、Continue をクリックします。SharePoint Excel Services の資格情報を入力して OK をクリックします。
    12. Specify ODBC SQL Query ダイアログで、SQL text エディタに SQL クエリを入力して、インポートしたいSharePoint Excel Services のデータを指定します。
    13. あるいは、Query Builder を選択して SQL Query Builder ウィンドウを開きます。Tables セクションから対象テーブルを選択し、Columns セクションから関連するカラムを選択します。各選択後に Insert into SQL Query をクリックしてクエリを自動生成します。WHEREORDER BY 句、または専用のタブを使用してクエリを手動で編集することもできます。OK をクリックしてクエリを確定します。
    14. OK をクリックします。
    15. Specify import order オプションで Specify をクリックし、SharePoint Excel Services の資格情報を入力します。
    16. Specify Import Order ウィンドウで、先ほど追加したターゲットフィールドのインポート順序を定義します。ソースフィールドとターゲットフィールドの間で Add を選択して、SharePoint Excel Services のデータを新しいレコードとしてテーブルに挿入します。Import をクリックします。
    17. これでスクリプトがワークスペースに表示されます。Run をクリックしてスクリプトを実行し、インポートを処理します。
    18. FileMaker がSharePoint Excel Services のデータをテーブルとしてインポートします。

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

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

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

    今すぐ始めましょう

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

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

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

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

 ダウンロード

詳細:

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

Excel Services ODBC ドライバーは、ODBC 接続をサポートする任意のアプリケーションからリアルタイムなExcel Services データに接続できるパワフルなツールです。標準のODBC ドライバーインターフェースを使用して、データベースのようにSharePoint サーバーでホストされているExcel スプレッドシートデータにアクセスし、データ連携を実行できます。