TClientDataSet での時間のかかる操作中に、一時的にOnCalcFields
イベントを無効にしたいとします (例: を設定することにより)。cdsCalcFields := nil
メソッドを再アタッチするときに計算フィールドの再計算を実行するように TClientDataSet に指示するにはどうすればよいOnCalcFields
ですか?
手動での再計算が必要になる可能性のある別の状況としては、一部の計算フィールドが他のデータセットに依存している状況があります (たとえば、計算フィールドが他のデータセットからの集計値を一時的に保持するために使用されている場合など)。OnCalcFields
イベントは他のデータセットから正しい値を取得するのに十分な頻度で実行されるため、ほとんどの場合、これは問題なく機能します。ただし、状況によっては、他のデータセットから正しい値を取得するために再計算が必要になることがあります。
AutoCalcFields
プロパティを に設定するFalse
と、手動での再計算が必要になる場合もあります。
イベントの実行を減らす方法についていくつかの説明を見てきましたOnCalcFields
が、再計算を実行する簡単な方法が見つかりません...
助言がありますか?