FileMaker Pro 15の新機能「テーブルデータを削除」①機能編
2016年05月13日 11:00 AM
FileMaker 16以前
FileMaker Pro 15の新機能として「テーブルデータを削除」スクリプトステップが
追加されましたので、【機能】と【速度】について2回に分けてご紹介いたします。
今回はまずどのような機能なのか確認してみましょう。
始めに基本となる「テーブルデータを削除」ステップのオプションを確認しましょう。
オプションは2種類あります。
ダイアログあり[オン/オフ]
テーブル[<現在のテーブル>/<指定したテーブル>]
ダイアログありに関しては、
オンの場合には下記の確認ダイアログが表示されます。
オフの場合にはステップが実行されるタイミングで時に
確認のダイアログが出現することなく削除が実行されます。
テーブルの指定に関しては、
「現在のテーブル」の場合には現在表示している
レイアウトのTOのテーブルに対してステップが実行されます。
また、テーブルを指定する場合には
現在のファイルにあるテーブルを選択することが可能で、
現在表示しているレイアウトのTOに関わらず
テーブルを指定して削除を実行できます。
別ファイルの関連データソースに対して
「テーブルデータを削除」ステップを実行したい場合には
現在のレイアウトに紐付いているTOを
削除したいテーブルのものにしておくことで可能です。
該当のレイアウトを表示させている状態で
「現在のテーブル」オプションを指定してください。
この新機能「テーブルデータを削除」ステップでは
名称の通りテーブルに対して処理が行われます。
そのため、対象レコードを絞っている状態で
現在のテーブルに対して実行を行ったとしても
テーブルのレコードが全て削除されます。
また、TOではなくテーブルに対して処理を行っているため
リレーションシップを作成し、関連レコードに対して
「他方のテーブルでレコードが削除されたときにこのテーブルの関連レコードを削除する」
オプションを設定している場合でも、関連レコードが削除されることはなく
現在または指定したテーブルのレコードのみが削除されます。
「対象レコード削除」ステップとの違いとして
TOに対する処理なのか、テーブルに対する処理なのかという点が特徴的です。
また、セキュリティに関しても削除権限を保持していないユーザーでの実行や
他のユーザーが編集中のレコードが含まれるテーブルに対しての実行では
エラーが表示されて処理が実行されることはありません。
この「テーブルデータを削除」ステップの実行すると
とても高速で瞬く間に処理が完了するのに驚きます。
速度の検証については「②速度編」のブログで詳しくご紹介しますので
お楽しみに!
■まとめ
「テーブルデータを削除」ステップはテーブルに対して
全レコード削除の処理を高速で実行できます。
ダイアログのオン/オフ、現在のテーブル/テーブルの指定のオプションがあります。
また、セキュリティやレコードのロックに関しても対応しています。
テーブルに対してのスクリプトステップは
今までのFileMakerには存在していなかった珍しいステップですが
注意して使用していくことで高速な削除を実現できそうです。