[ファイルメーカー]スクリプトでMacとiPadのデータベースを同期する

ファイルメーカーGoアプリを使い、ファイルメーカー書類をiPadで利用します。コンピュータでもiPadでも同じ内容にしておきたい書類もあって、同期作業をどうするか考えます。

単純にiTunes経由でコピー/保存など繰り返せば “同じ” になりますけど、すぐに挫折。コンピュータでiTunesを開く機会も減りつつあって面倒です。

ファイルメーカー社のサイトでドキュメンテーション センターを参照してみると、FileMaker Go デベロップメントガイドにズバリの解説が。さっそく作業開始です。

MacとiPadで同じ内容のファイルメーカーデータベースを利用する方法

データを同じにする方法としてコンピュータとiPad、お互いのデータをスクリプトを使いインポートできるようにします。

FileMakerのデータベース (Mac) をFileMaker Go (iPad) からインポートする

コンピュータのデータをFileMaker Goからインポートします。同じフィールドを持つ “メモ.fmp12” と “モバイルメモ.fmp12” を用意しました。FileMaker Goに転送する “モバイルメモ.fmp12” にスクリプトを作成します。

スクリプトステップはレコードのインポートだけです。

スクリプト作成スクリーン

レコードのインポートスクリプトステップのオプション、”データソースを指定” では [ファイル…] から MacのIPアドレスを含むファイル名を以下のように記述。2行目は “インポート順の指定” でフィールド割り当てのために一時的に利用するためのものです。

インポートのファイル指定

次にインポート順の指定から [指定…] ボタンでフィールドデータのインポート順の画面を開きます。同じフィールド名なので割り当ても簡単です。

インポート順の指定

「インポート中、入力値の自動化オプションを実行」画面が表示されます。フィールドには自動入力されるシリアル番号があるのでチェックしてからインポートボタンをクリック。

ここまでの作業を保存して、コンピューター上でスクリプトを実行。その後、上図フィールドデータのインポート順で配置順 “最後に使用した順序” を確認します。これでフィールドの割り当てが保持されるので、データソースの指定で記述した2行目の “file:メモ.fmp12” は削除できます。

モバイルメモ.fmp12 ファイルを iPadに転送、動作を確認して完了です。Macで更新されたデータをiPadに取り込むことができるようになりました。

FileMaker Goのデータベース (iPad) を FileMaker (Mac) にインポートする

iPadで更新されたデータベースをファイルメーカー (Mac) にインポートするには、Mac側のファイルにスクリプトを作成、FileMaker Goからホストされたファイルを開き、スクリプトを実行します。

“メモ.fmp12” にスクリプトを作成します。変数を設定及びレコードのインポートスクリプトステップを追加。

Macに設定したスクリプトステップ

変数の計算式は、Get(ドキュメントパス)&”iPadに転送するファイルの名前” となります。

変数の計算式

レコードのインポートスクリプトステップでデータソースの指定は以下のようにします。$passは変数を設定のスクリプトで指定した変数の名前です。インポート順の指定をするために “file:モバイルメモ.fmp12” を2行目に追加します。

データソースの指定

次にインポート順を指定します。先に説明したインポートの手順と同じです。インポート元とインポート先が逆になるだけ。「インポート中、入力値の自動化オプションを実行」では値が自動で追加されるシリアル番号があるのでチェックします。

インポートオプションの設定

スクリプトが完成したら、[ファイル]-[共有設定]から[ファイルメーカークライアントと共有…]を選び FileMakerのネットワーク共有をオン、FileMaker Goからメモ.fmp12を開きます。

ネットワーク共有設定
 
ファイルメーカーGoの画面

歯車アイコンからスクリプトを実行して動作を確認。これでMacのファイルメーカーにiPadのデータをインポートすることができるようになりました。iPadでホストを開くためにMacでファイルを開いておかなければならないなど手間もありますが、スクリプトで同じデータにできるのはいいですね。

 

ところで、米国のファイルメーカー社とアップル社は親子関係なので、iCloudとかで同期とはならないものでしょうか。今後のバージョンアップに期待したいものです。