[FileMaker] 別テーブルのフィールドへ値を入力するスクリプト

FileMaker で、テーブル「Table_A」のフィールド「field_a」の値を、別テーブル「Table_B」のフィールド「field_b」へコピーしたいことがある。それをスクリプトで実行する方法がややこしかったのでまとめておく。

(1)Table_A と Table_B をリレーションするために繋ぎとなるフィールド「field_number_A」「field_number_B」をそれぞれのテーブルに作る。

(2)Table_A 用のレイアウトを「Layout_A」、Table_B 用のレイアウトを「Layout_B」とし、それぞれ field_a 、field_b 、field_number_A 、field_number_B を配置する。

(3)field_number_A と field_number_B をリレーション「=」でつなぐ。

(4)2の「=」をダブルクリック。一番下の Table_B 内にある「Allow creation of records in this table via this relationship」にチェック、OK。

(5)以下のスクリプトを作成。

Set Field [ Table_B::field_b ; Table_A:: field_a ]
Go to Layout [ “Layout_B” ( Table B) ]
Go to Layout [ original layout ]

(6)Table_A で新規レコードを作成し、field_number_A と field_a に適当な値を入れる。

5を見て分かるとおり、なぜ一旦相手先のレイアウトへ行かなければいけないのかが分からないけど、この手順を入れないとうまくいかない。

参考:
[解決] 別テーブルに自動で入力する方法 (ページ 1) / 初心者のFileMaker pro Q&A / 初心者のFileMaker pro Q&A
http://joy-h.com/bbs2/viewtopic.php?id=445