6
Czy istnieje możliwość dodania pola zbiorczego nad polem obliczonym?Agregacja pola obliczeniowego w TClientDataset
Załóżmy, że istnieje płyty z następujących dziedzin:
- ID (autoincrement)
- Nazwa (string)
- Cena (float)
- Ilość (całkowita)
- całkowita (Integer) - pole obliczeniowe - Cena * Ilość
i chcę dodać agregate, aby uzyskać sumę kolumny Total. Czy to możliwe?
Co z ['polami zbiorczymi'] (http://edn.embarcadero.com/article/29272)? Wydaje się, że są lepsze w tym celu. – TLama
@ TLama, oczywiście możesz utworzyć pole agregatów z SUM (Cena * Ilość), ale pytanie było jak zrobić agregację ponad polem obliczeniowym. To zadziała tylko wtedy, gdy pole obliczeniowe ma FieldKind = fkInternalCalc. –
Jest to głównie kolejność oceny: pola InternalCalc są pobierane przed agregacją i sortowaniem, aby mogły być używane w agregatach i jako indeks. Obliczone pola są następnie oceniane. Pola InternalCalc są obsługiwane tylko w TClientDataSets. –