レコード後イベントのキャンセル
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
osk
投稿数: 75
![一人前 一人前](../../uploads/rank3dbf8ea81e642.gif)
お世話になります。
色々と検討したのですが、行き詰ってしまいましたのでお知恵をお借りしたく
投稿します。
マスタ登録画面を作成したいのですが、仮登録機能を実装したいです。
そこで、画面にGridと入力コントロールを配置し
パラメータの値を判定して「更新しますか?はい/いいえ/キャンセル」メッセージを表示させる動作を実装しようとしています。
今、
・「強制レコード後」に「仮登録フラグオンの場合」と設定、
・レコード後で仮登録フラグの判定処理を実施
・「はい」が指示された場合は「仮登録フラグをオフ
「いいえ」が指示された場合は仮登録データを削除
「キャンセル」が指示された場合は何もしない
動作を実装しました。
ところが、「レコード後」イベントで何もしないと、画面表示が次のレコードへ遷移してしまうので困っています。
「キャンセル」が指示された場合にイベント実行で「前行」とすると、再度レコード後イベントが実行されてしまう(みたい)ですし・・
そこで、「キャンセル」が指示された場合、「レコード後」イベントをキャンセルするような処理が行いたいと考えておりますが
そのような処理は実装可能でしょうか
色々と検討したのですが、行き詰ってしまいましたのでお知恵をお借りしたく
投稿します。
マスタ登録画面を作成したいのですが、仮登録機能を実装したいです。
そこで、画面にGridと入力コントロールを配置し
パラメータの値を判定して「更新しますか?はい/いいえ/キャンセル」メッセージを表示させる動作を実装しようとしています。
今、
・「強制レコード後」に「仮登録フラグオンの場合」と設定、
・レコード後で仮登録フラグの判定処理を実施
・「はい」が指示された場合は「仮登録フラグをオフ
「いいえ」が指示された場合は仮登録データを削除
「キャンセル」が指示された場合は何もしない
動作を実装しました。
ところが、「レコード後」イベントで何もしないと、画面表示が次のレコードへ遷移してしまうので困っています。
「キャンセル」が指示された場合にイベント実行で「前行」とすると、再度レコード後イベントが実行されてしまう(みたい)ですし・・
そこで、「キャンセル」が指示された場合、「レコード後」イベントをキャンセルするような処理が行いたいと考えておりますが
そのような処理は実装可能でしょうか
投票数:0
平均点:0.00
nkmt
投稿数: 1668
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
オンラインタスクのレコード後処理に
エラー E=エラー 条件=○○
といった記述を追加すれば、レコード後処理は中断されます。
エラー E=エラー 条件=○○
といった記述を追加すれば、レコード後処理は中断されます。
投票数:1
平均点:10.00
fjksudou
投稿数: 180
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
oskさん
こんにちは
いろんな方法があると思いますが、
私だったら、処理をしたいテーブルをレコードメインにはせず、ワークや変数を利用して下位のタスクでデータベースへの処理をしています。
そうすることで、好きな時にデータベースに書込みや削除が行えます。
今回の場合だと、「はい」「いいえ」のイベントを作成し、それぞれのイベントで処理すればできると思います。「キャンセル」は何もしなければカーソル位置に戻ります。
オンライン系のレコード後処理は、勝手に処理が動くのでほとんど使用しておりません。
こんにちは
いろんな方法があると思いますが、
私だったら、処理をしたいテーブルをレコードメインにはせず、ワークや変数を利用して下位のタスクでデータベースへの処理をしています。
そうすることで、好きな時にデータベースに書込みや削除が行えます。
今回の場合だと、「はい」「いいえ」のイベントを作成し、それぞれのイベントで処理すればできると思います。「キャンセル」は何もしなければカーソル位置に戻ります。
オンライン系のレコード後処理は、勝手に処理が動くのでほとんど使用しておりません。
投票数:1
平均点:10.00
osk
投稿数: 75
![一人前 一人前](../../uploads/rank3dbf8ea81e642.gif)
fjksudou さん
コメントありがとうございます。
おっしゃるとおり、「処理をしたいテーブルがレコードメインになっていることで
色々やりづらいなあと苦心しているところです。
今回は新規ではなく、既存のマスタ画面に対する機能追加だったので、なるべく工数少なく実現しようと思って
このような方法をとったのですが
既に悩んでいる時間がかかりすぎているような・・
おもいきって fjksudouさんがおっしゃるやり方に変更したほうが楽だったかもしれない、と少し思い始めています。
貴重なご意見ありがとうございます、参考にさせて頂きます。
コメントありがとうございます。
おっしゃるとおり、「処理をしたいテーブルがレコードメインになっていることで
色々やりづらいなあと苦心しているところです。
今回は新規ではなく、既存のマスタ画面に対する機能追加だったので、なるべく工数少なく実現しようと思って
このような方法をとったのですが
既に悩んでいる時間がかかりすぎているような・・
おもいきって fjksudouさんがおっしゃるやり方に変更したほうが楽だったかもしれない、と少し思い始めています。
貴重なご意見ありがとうございます、参考にさせて頂きます。
投票数:0
平均点:0.00
osk
投稿数: 75
![一人前 一人前](../../uploads/rank3dbf8ea81e642.gif)
nkmtさん
コメントありがとうございます。
> エラー E=エラー 条件=○○
>といった記述を追加すれば、レコード後処理は中断されます。
今試してみました。エラーメッセージが表示されるんじゃ?と思いましたが、エラーメッセージが表示されず、確かに処理が中断できました!
自分では思いつかないテクニックだったので、大変ありがたいです。ありがとうございます!
コメントありがとうございます。
> エラー E=エラー 条件=○○
>といった記述を追加すれば、レコード後処理は中断されます。
今試してみました。エラーメッセージが表示されるんじゃ?と思いましたが、エラーメッセージが表示されず、確かに処理が中断できました!
自分では思いつかないテクニックだったので、大変ありがたいです。ありがとうございます!
投票数:0
平均点:0.00