API:FireDAC.Comp.Client.TFDStoredProc.AggregatesActive
Delphi
property AggregatesActive: Boolean read FAggregatesActive write SetAggregatesActive default 0;
C++
__property AggregatesActive = {default=0};
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
property | published | FireDAC.Comp.Client.pas FireDAC.Comp.Client.hpp |
FireDAC.Comp.Client | TFDStoredProc |
Description
Contrôle le calcul automatique des valeurs d'agrégation.
FireDAC.Comp.Client.TFDStoredProc.AggregatesActive hérite de FireDAC.Comp.DataSet.TFDDataSet.AggregatesActive. Tout le contenu en-dessous de cette ligne se réfère à FireDAC.Comp.DataSet.TFDDataSet.AggregatesActive.
Contrôle le calcul automatique des valeurs d'agrégation.
Utilisez AggregatesActive pour obtenir ou définir l'indicateur qui contrôle la maintenance et le calcul automatique des valeurs d'agrégation de l'ensemble de données.
Quand AggregatesActive est défini sur False (la valeur par défaut), l'ensemble de données ne maintient pas les agrégats. Cela permet à l'ensemble de données d'effectuer de larges mises à jour sur l'ensemble de données ou de récupérer de gros volumes de données sans la surcharge du calcul des valeurs d'agrégation, qui se produit à la récupération et à l'édition des données. Quand AggregatesActive est défini sur True, l'ensemble de données calcule et maintient toutes les valeurs d'agrégation spécifiées par la propriété Aggregates qui sont compatibles avec l'index en cours.
Pour activer ou désactiver les agrégats sélectivement et non pas collectivement, utilisez la propriété Active des objets TFDAggregate individuels. Ces objets sont disponibles par le biais de la propriété Aggregates.
Si l'application a besoin d'effectuer des mises à jour groupées sur l'ensemble de données, définissez alors AggregatesActive sur False avant la mise à jour, puis revenez à la valeur d'origine après la mise à jour. Vous pouvez aussi voir les méthodes BeginBatch et EndBatch.
Exemple
var
lPrevAggsActive: Boolean;
...
lPrevAggsActive := FDQuery1.AggregatesActive;
FDQuery1.AggregatesActive := False;
try
// perform updates here, without calculating and reading client aggregates
finally
FDQuery1.AggregatesActive := lPrevAggsActive;
end;