レコードが失われていました、の表示について
皆さんこんにちは。
例えば一覧画面にて表示されているデータをバッチ処理にて削除または更新後に
再表示を行うと「レコードは失われていました」と表示されると思います。
この表示のみを消すことは可能でしょうか? イベントのエラーにはこの内容は無いように思います。
そもそもこの表示はエラーなのでしょうか?
心当たりがある方がいらしたら教えてください。
-
「再表示」には、「ビュー再表示」と「画面再表示」と「ウィンドウ再表示」とがありますが、どの再表示を利用しているかによって、その後の表示が変わりますよ。そのあたりをまずチェックされるとよろしいかと思います。
詳細は、そのプログラムの構造を見てみないと何とも言えませんが。。。
よろしければ、弊社連載コーナーの下記の記事も参考になるかと思いますので、環境があればご参照ください。
第157回 「画面再表示とビュー再表示の違い(2021年3月31日)」
-
あれ・・消したいですよね・・
更新前の内容を参照していて、トランザクションを抜ける際に
今見てたデータ元々の内容と変わっていましたけど?っていうエラーメッセージなので
トランザクションなしにするとかトランザクションのタイミングを見直すが正解なのではと思います
お話の内容的に一覧からのデータ加工ってことは、
ビュー再表示(引数0)や子タスクコールするタイミングでレコードを抜けるようにしてタスク終了→一覧を再表示する
Magicの遅延トランザクションとコールコマンドの同期プロパティを使う
あたりで解消できるかと思います。
また、ちゃんとしたエラーなのでお薦めしませんが、
エラーイベントをフックして、エラー発生時:復旧にしてとりあえず消すことはできるかと思います。 -
ご連絡ありがとうございます。
プログラムを大きく変えてしまうことはあまりしたくないので
エラーイベントをフックしてみようと思います。このときエラーのフックの方法ですが
イベント⇒エラー の中のどれを使用すればよいでしょうか?
お願いいたします。
-
ごめんなさい、エラーのフック場所は「タスク特性」⇒管理 ⇒エラー発生時:
ですよね
-
イベント:レコードが更新されていたを作ってフックして、
エラー発生時の方はアボートのままだと終わっちゃうので復旧にしないとってことですね -
ご連絡ありがとうございます。 教えて頂いた設定を試してみました。
やはりメッセージは残ってしまします。他に設定が必要なのでしょうか?
ご連絡させていただきます。
-
タスク構造がよくわかりませんが、
エラーが出ているタスクが違うのではないでしょうか
一番上のタスクでスコープ:サブツリーでイベントを作っても止まらないでしょうか
サインインしてコメントを残してください。
コメント
7件のコメント