Witam.
W Delphi 2009 mam dataset, w którym dane pochodzą z dość skomplikowanego zapytania, z pivotem, tworzonego dynamicznie w procedurze. Przed wykonaniem zapytania nie znam więc zestawu pól w datasecie. W procedurze chcę wyświetlić dataseta w DBGridzie, ustawiając w pętli różne właściwości, między innymi format wyświetlanych danych przez polecenie:

dsPivot.Fields.FieldByNumber(i) as
   TFloatField).DisplayFormat := '# ### ##0.0000'

Niestety, pojawia się błąd "Invalid Class Typecast"
Gdy próbuję sprawdzić typ pola (if dsPivot.Fields.FieldByNumber(i).datatype = ftfloat ....), okazuje się że nie jest to żaden ze zdefiniowanych typów (ftString, ftSmallInt, ftWord, ftfloat, ftCurrency, ftBCD, ftDate, fttime, ftDateTime, ftBytes, ftBlob, ftMemo)

Jak mam w takiej sytuacji wyświetlić w DbGridzie sformatowane dane (liczby float)?
Będę wdzięczna za wskazówki, bo siedzę już nad tym kolejny dzień!