12-25-2013, 11:39 AM
RecordSet に対して RecordModified イベントをハンドリングして、
あるレコードの変更に付随した処理が流れるようにしています。
しかし、この処理は、画面の初期処理では流したくないので、
ユーザーがグリッド内を操作したときと、プログラム内でレコードの値を修正したときとで、
その変更に付随する処理を行うかどうかを切り替えるために、
RecordSet.batch-event?=true を設定して、RecordModified が発行されないようにしています。
しかし、下記のコードでは、RecordModified が発行されてしまっており、
画面の初期処理の中でも付随処理が走ってしまっています。
これはなぜでしょうか。
他の batch-events? では、正常にRecordModifiedが抑止されていおり、
なぜここだけうまくいかないのかがわかりません。
あるレコードの変更に付随した処理が流れるようにしています。
しかし、この処理は、画面の初期処理では流したくないので、
ユーザーがグリッド内を操作したときと、プログラム内でレコードの値を修正したときとで、
その変更に付随する処理を行うかどうかを切り替えるために、
RecordSet.batch-event?=true を設定して、RecordModified が発行されないようにしています。
しかし、下記のコードでは、RecordModified が発行されてしまっており、
画面の初期処理の中でも付随処理が走ってしまっています。
これはなぜでしょうか。
Code:
def r = {rs.select-one}
{with rs.batch-events?= true do
set r["select"] = true
}
他の batch-events? では、正常にRecordModifiedが抑止されていおり、
なぜここだけうまくいかないのかがわかりません。