みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
https://fm-aid.com/bbs2/viewtopic.php?id=7221
上のURLでお教え頂いたポップオーバーに関連して質問させて頂きます。
ポップオーバーボタンを押すと、ポップオーバーが表示され、その中に削除ボタンを追加しました。
削除ボタンを押すと、レコード/検索条件削除スクリプトが走って、レコードは削除されます。
ここで下記のサイトを参考に、ポップオーバー内の閉じるボタンを押さないとポップオーバーが閉じないようにしました。
https://qiita.com/hajisan/items/30276a7f41d530bb4f86
削除ボタンを押すと、「レコード/検索条件削除」が走ります。
次に、OnObjectExitが走ります。フラグを見て、閉じるボタンが押されていなければ現在のスクリプト終了をします。
レコード/検索条件削除スクリプトが最初に走っているので、レコードの削除がされていいと思うのですが、思うような結果になりません。
ちなみに、OnObjectExitを設定しないと、正しくレコードが削除されます。原因はなんでしょうか?何か改善するような方法はあるでしょうか?
Offline
関連するスクリプトの要所要所に、
カスタムダイアログを表示[ Get(スクリプト名) ; Get(スクリプト引数)]
のようなものを入れて、実行される順番をちゃんと確認してみてはどうでしょう。
少し試してみましたが、ポップオーバーで削除ボタンを押してレコードを削除する際、OnObjectExitはレコード削除に伴う一連のトリガの一部になっているようで、Falseを返すと削除自体をキャンセルしたと見做されるようです。
なので、「レコード/検索条件削除」の前に閉じるフラグを立てておけば削除も通ると思います。
Offline
現在のレコードから表示したポップオーバーが閉じるのですから
レコードが削除される瞬間にも OnObjectExit が発火します。
その際にフラグが0ならば閉じることができないのでその時点で先に進めなくなり削除は実行されません。
削除ボタンでもフラグを1にするように変更したら如何でしょう。
Last edited by Moz (2017-11-20 19:58:37)
Offline
ありがとうございます。フラグに1をたてたら無事に解決しました!
Offline
Pages: 1
[ Generated in 0.006 seconds, 13 queries executed - Memory usage: 555.21 KiB (Peak: 569.58 KiB) ]