SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

FileMaker Pro 実践チュートリアル(AD)

FileMaker Pro による大規模システム開発

第6回 アクセス制御/ネットワーク負荷の軽減/他システム間の連携を行う

  • X ポスト
  • このエントリーをはてなブックマークに追加

連携範囲が広いシステム

データ連携する手法

 企業規模の大きな所になると、既に基幹システムが稼働しておりマスターデータはそこから引く、あるいは複数のシステムがお互いに必要な情報を補完しあうために、FileMakerで開発したシステムのデータとの連携が必要になってくることが多々あります。

 FileMaker以外のシステムとデータを連携させる方法はいくつかありますが、代表的なものは次のとおりです。

  • A: CSVやXMLデータなどのテキストデータファイルを介し、定期的にインポート/エクスポートする。
  •  
    図7 いくつかのデータ形式でデータのインポート/エクスポートが可能
    図7 いくつかのデータ形式でデータのインポート/エクスポートが可能
     
  • B: 条件が合えば(適用できるドライバがあれば)、ODBCを経由したデータのインポート/エクスポート、あるいはスクリプト「SQLを実行」を使用して、INSERT/UPDATE/DELETEなどを行う。
  •  
    図8 ODBC経由での、外部データ取込みメニュー
    図8 ODBC経由での、外部データ取込みメニュー
    図9 データのインポートの際に発行するSQL文を設定するダイアログ
    図9 データのインポートの際に発行するSQL文を設定するダイアログ
    図10 スクリプト「SQLを実行」で指定する、SQL文を設定するダイアログ
    図10 スクリプト「SQLを実行」で指定する、SQL文を設定するダイアログ
     
     
  • C: さらに条件が合えば(動作環境を満たせば)、外部SQLデータソース(ESS)機能を利用し直接データを参照する。
  • 「外部データソース管理」は、FileMakerのメニューの[ファイル]-[管理]-[外部データソース]から開きます。
     
    図11 外部のデータテーブルを、FileMakerのテーブルとして扱うための「外部データソース管理」設定画面(MySQLの例)
    図11 外部のデータテーブルを、FileMakerのテーブルとして扱うための「外部データソース管理」設定画面(MySQLの例)

 Aは、取り込み側でそのデータを取り込むための処理と、その処理をキックするトリガーが必要となります。その性質上、汎用性はありますが即時性に欠けます。

 Bは、ODBCドライバの有無と、動作確認が条件となります。この場合は、データの送信と取得がFileMaker側のアクションで行えるので、例えば[更新]ボタンのスクリプトに「SQL実行」スクリプトをサブスクリプトで連ねておけば、一連の流れで連携がとれるので、リアルタイムに近い処理が行えます。

 Cは、適用可能範囲が狭くなりますが、他システムのテーブルを直接参照していることになるので、連携の中では一番、即時性が高いでしょう。

データ連携する際の留意点

 まず連携手段にかかわらず注意が必要なのは、「FileMakerにおけるテーブル定義では、桁数という考え方がない(に等しい)」という点です。FileMakerでは、各データタイプごとに保持できる最大データ量の仕様が存在するものの、テーブル定義の際に、各フィールドに桁数を指定することができません。

 従って「テキスト」タイプのフィールドには、データサイズを特に意識しなくても良いくらいの文字数が入力できてしまいます。しかし、他システムとの連携を考えるときには、この「桁数」が大きく影響してきます。

 そのため、それらの桁数を考慮した別の連携用フィールドを必要としたり、書き出したデータを成型し直したりする必要があります。

 また、同様の理由からFileMakerは基本的に「可変長」です。よくホストデータから提供される形式に「固定長」のものがありますが、これらをFileMakerに取り込む時や他システムに提供する時も、この辺りを念頭に置いておく必要があります。

 他システムとの連携を行う場合は、それぞれのシステムのデータの持ち方の特性について、相互理解を深める必要があります。データベースという同じ世界の中でも、それぞれで「常識」というものが存在し、それを外すと担当者同士の会話も通じません。ましてや、システム間の連携がさらに困難なことは言うまでもないでしょう。

 以上のように、FileMakerはシステム開発のプロセスにおいて、「技術やデジタル」な部分よりも「対話やアナログ」な部分に関わる時間を多く取ることができる、大きな特長があります。

まとめ

 冒頭で述べたようにソリューションがシステムの集合体であるとすると、すべてを一貫して同一環境で構築していく懐石やフレンチのフルコースのようなものより、洋食屋のアラカルト的な需要が増えてきていることが最近特に感じられます。

 また得てして、そういう方が「ライス大盛り」にするような融通が効き、好まれたりするものです。また、出張シェフとして、フルコースの一品を供し得ることも忘れてはいけません。

 これらを意識するために今回は、ちょっとだけ俯瞰したところから話を進めてきました。

 まだまだ整理していきたい情報もありますが、また別の機会に場を移して皆さんと一緒に組み上げていきたいと思っています。

 さて、次回よりまた少し新たな皿(展開)へと移っていきます。

 最後になりましたが、この連載が終わる頃には「(お客様からの)注文の多い料理店」を志す人が少しでも増えていることを切に願って、次回にバトンを渡したいと思います。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
FileMaker Pro 実践チュートリアル連載記事一覧

もっと読む

この記事の著者

永井 求 (ナガイ モトム)

株式会社ジュッポーワークス IT solution ディレクター。1995年に入社。当時、自身の制作データ管理のために、事務所の傍らに置いてあったソフトに手を伸ばす。それがきっかけとなり、この10数年の間にそのソフトを活用しての開発実績を数多く積む。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/2116 2008/09/04 18:47

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング