Data.DB.TDataSet.OnCalcFields
Delphi
property OnCalcFields: TDataSetNotifyEvent read FOnCalcFields write FOnCalcFields;
C++
__property TDataSetNotifyEvent OnCalcFields = {read=FOnCalcFields, write=FOnCalcFields};
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
event | public | Data.DB.pas Data.DB.hpp |
Data.DB | TDataSet |
Description
Se produit quand une application recalcule les champs calculés.
Ecrivez un gestionnaire d'événements OnCalcFields pour effectuer une action spécifique quand une application recalcule les champs calculés. La valeur d'un champ calculé est obtenue à partir des valeurs de un ou plusieurs champs de l'ensemble de données, avec éventuellement des traitements supplémentaires.
OnCalcFields est déclenchée quand :
Un ensemble de données est ouvert.
Un ensemble de données est placé dans le mode dsEdit.
Un enregistrement est lu depuis la base de données.
Si la propriété AutoCalcFields a la valeur true, OnCalcFields est aussi déclenché quand :
La focalisation passe d'un contrôle visuel à un autre, ou d'une colonne à une autre dans un contrôle grille orienté données alors que des modifications ont été faites à l'enregistrement.
Remarque : Si la propriété AutoCalcFields a la valeur true, un gestionnaire d'événements OnCalcFields ne doit pas modifier l'ensemble de données (ou un ensemble de données lié s'il fait partie d'une relation maître-détail). En effet, une telle modification relance l'événement OnCalcField, ce qui produit une récursivité illimitée.
Si une application permet aux utilisateurs de modifier des données, OnCalcFields est déclenché fréquemment. Pour réduire la fréquence des appels de OnCalcFields, affectez la valeur false à AutoCalcFields.
Avertissement : Quand l'ensemble de données est la table maître d'une relation maître-détail, OnCalcFieldsse produit avant que les ensembles détail n'aient été synchronisés avec la table maître.
OnCalcFields est un gestionnaire d'événements du type Data.DB.TDataSetNotifyEvent.