自由なメモ
FileMakerPro19にて、テーブルAとテーブルBを比較して差分を表示したい!
前準備(テーブル構成)
ID2とID4が無い状態のテーブルAと、ID1~ID5までのテーブルBを準備しました。
この2つのテーブルを比較して、Bテーブルから見て、Aテーブルに存在しないデータを抽出したいと思います。
まずは、リレーションを組みます。
差分を抽出するスクリプト
このスクリプトを実行すると下記のように抽出できるようになりました。
差分レコードを色で判別
抽出することはできたので、その抽出したレコードだけを色で判別したいという時もあると思います。
判別するためのフィールドを追加する事になりますが、何とか下記の方法で可能になりました。
スクリプトは下記のようになります。
まずは、Bテーブルの差分フラグを全て「0」を全置換して、差分抽出したレコードには、差分フラグを「1」に全置換します。
それを実行すると下記のようになりました。
そして、ID2とID4には、「1」が立っていますので、レイアウトモードにして、フィールド「ID」と「果物」を下記のように条件付き書式を設定しました。
テーブルBを見て見ると下図のように色で判別できるようになっていました。
ブラウズモードで「差分フラグ」が出ているのかカッコ悪いので、オブジェクトを隠すなどを設定してみたりしましたが、中々消えません。
ココがポイント
レイアウトから「差分フラグ」を消してみました
レイアウトからフィールドを消しても、ちゃんと動作していました。
「差分フラグ」は、判別だけにしか使わないので人的には見えている必要がないので、ちゃんと動作するなら消してしまうというのも手段です。