12-25-2013, 11:39 AM,
|
|||||
|
|||||
RecordSet.batch-events?=true 時でもRecordModifiedイベントが発行されてしまう
RecordSet に対して RecordModified イベントをハンドリングして、
あるレコードの変更に付随した処理が流れるようにしています。 しかし、この処理は、画面の初期処理では流したくないので、 ユーザーがグリッド内を操作したときと、プログラム内でレコードの値を修正したときとで、 その変更に付随する処理を行うかどうかを切り替えるために、 RecordSet.batch-event?=true を設定して、RecordModified が発行されないようにしています。 しかし、下記のコードでは、RecordModified が発行されてしまっており、 画面の初期処理の中でも付随処理が走ってしまっています。 これはなぜでしょうか。 Code: def r = {rs.select-one} 他の batch-events? では、正常にRecordModifiedが抑止されていおり、 なぜここだけうまくいかないのかがわかりません。 |
|||||
12-25-2013, 11:44 AM,
|
|||||
|
|||||
RE: RecordSet.batch-events?=true 時でもRecordModifiedイベントが発行されてしまう
batch-event?=true を指定していてもRecordModifiedが発生する原因は、
batch-events?=true の間に変更された項目が、1つだけだったから、ということのようです。 batch-events? がfalse に戻った際に、それまでにたまったイベントがひとつだけであれば、 RecordsBulkChanges ではなく、RecordModified が発行される、ということのようですね。 ヘルプにも、下記のように記載されていました。 このフラグが true の間は、RecordSet 自体で RecordSetEvent を発生できなくなります。 このフラグが false に戻されると、 この期間にレコードセットの状態に起こった変化を表す 1 つの RecordsChanged が発生します。 これは通常 (常時ではありません)、RecordsBulkChanges です。 初期処理の後にイベントを追加するか、 業務画面のフィールドにフラグをもって、そちらを参照して、 付随処理を流すかどうかを判断するようにしてみます。 |
|||||
« Next Oldest | Next Newest »
|
Possibly Related Threads... | |||||
Thread | Author | Replies | Views | Last Post | |
RecordView.batch-events? の効果がない | umemura | 1 | 2,666 |
12-10-2013, 03:28 PM Last Post: umemura |
|
RecordSet に groupby したい? | umemura | 1 | 4,649 |
09-25-2013, 05:14 PM Last Post: umemura |
|
RecordSet DE RecordDataとRecord | nasuB | 6 | 8,328 |
08-22-2011, 11:34 AM Last Post: nasuB |
|
RecordSet DE 複数の主キー | nasuB | 2 | 4,831 |
08-16-2011, 09:01 AM Last Post: nasuB |
|
{RecordSet.commit}について | thiguchi | 1 | 4,733 |
08-15-2011, 01:04 PM Last Post: fukuta |
Users browsing this thread:
1 Guest(s)
1 Guest(s)