今回は、
「他のfmp12(FileMaker)にあるスクリプトを動かしたい」
というお題です。
これはどういう時に使えるかというと、
・総務部の人が経理部の情報をもらいたい
・サンプルファイル(テンプレートファイル)にあるスクリプトを別のファイルにコピペせずに使いたい
・トップページは会社ポータル画面で、各部署のfmp12をその部署の人だけに見せて仕事をさせたい
などという事例の時に使えます。
FileMaker バージョン
どのバージョンから外部接続が可能なのかは、わかりませんが、こちらで仕事で関わったバージョン11以降では外部接続が使えていました。
ご利用のFileMakerのメニューに外部データソースの扱いがあれば、可能と思います。
事例
よく社内であるのは、
・総務部の人が経理部の情報をもらいたい
・トップページは会社ポータル画面で、各部署のfmp12をその部署の人だけに見せて仕事をさせたい
という部分ではないでしょうか?
FileMaker開発の中級クラスにもなると、こういうこともできる?と降って湧いてくるかもしれませんね。
上記を自分の環境に置き換えて読んでみましょう。
sample1→総務部fmp12
sample2→経理部fmp12
この例の場合、各部署にはそれぞれの部署でしか扱わない情報があるので、アクセス権などの設定もしておく必要があります。
sample1→運用アプリfmp12
sample2→サンプルアプリfmp12
この場合は、サンプルアプリにある機能を単純に運用アプリでも使いたい(組み込みたい)という意図なので、厳密なアクセス権の設定はしなくてもいい場合もあります。
設定
fmp12に限らず、今現在使用しているfmp12よりも外部のファイルやデータベースを使用する(連携する)場合は、外部接続の設定をします。
1.メニューから、「ファイル」→「管理」→「外部データソース...」を選択します。
最初のアクセスの場合は、以下のようなメッセージが出ます。
2.次に、使いたい外部ファイルを選択します。
今回は、FileMakerの外部ファイルを使用したいので、FileMakerを選択し、ファイルを選択します。
設定は、これだけです。
ここで設定する以外に、データベース管理で、リレーションシップを構築する際、他のfmp12からのテーブルを使用するのにこの外部データソース設定をしている場合もあります。
どちらで外部接続を設定しても、OKです。
スクリプトを選択する
sample1からsample2のスクリプトを実行する場合、sample1にsample2のスクリプトを呼び出すスクリプトを作成します。
1.スクリプト内で、「スクリプトの実行」ステップの設定を出します。
この時、スクリプトを選択する対象は、現在扱っているfmp12ファイル内のものが表示されます。
2.この、ファイル名の部分をクリックすると、外部接続で設定したファイル名が表示されます
先にやった設定以外のfmp12などのファイルを使いたいけど設定に戻るのが面倒、、、というときは、設定画面に戻らず、sample2の下に表示されているデータソースの追加等からも直接追加できます。
3.sample2を選択すると、sample2で管理されているスクリプトの一覧が出てきます。
使いたいスクリプトを選択します。
4.sample1で、sample2のスクリプトを指定できました。
動き
では、sample1で作ったスクリプトを動かしてみましょう。
sample2のスクリプトが実行され、カスタムダイアログが表示されました!
外部接続と聞くと「なんか設定とか作りとか難しそう、、、」と感じますが、fmp12同士でも外部接続(外部データソース)と呼びますので、敷居が低くなったのではないでしょうか?
また、サンプルを使う時に、「試しに動かしてみたいけど、コピペすると動かない、、、」ともどかしく思っている場合も、この方法で試しに実行してみて、本格的にファイルに組み込む、などできますので、様々な場面で活用してみてください。