Seit ein paar Versionen erlaubt ein TDataSet einen Mischbetrieb mit statischen und dynamischen Feldern. Das würde aber das Typ-Problem vermutlich gar nicht lösen.
Allerdings unterstützt auch UniDAC so ein Mapping:
https://docs.devart.com/unidac/data_type_mapping.htm - zumindest in der aktuellen Version.