debi12345 писал(а):Если создавать поля через "CREATЕ TABLE" - то их типы легко вытаскиваются через API DLL. Но тип определяется именно типом поля при создании таблицы, а не результатом выборки.
Это так, да, но, как минимум, кроме полей, полученных с помощью агрегатных функций. Соответственно, универсального решения не получится.
debi12345 писал(а):Чтобы это работало прозрачно с БД-компонентами, MSEgui делает следующее:
1) использует соглашения о точных названиях типов для "create table", чтобы потом, узнав типы через API, назначить им корректный "ft*" в FieldDefs; тип "boolean" также прекрасно работает;
2) имеет возможность явно переназначить тип поля в FiedDefs- что для табличного поля, что для произвольного выражения.
Я понимаю, что это единственный выход, но мне такая работа не нравится.
debi12345 писал(а):Это врядли скоро исправится. Потому что затык пошел на повальном использовыании Variant-типа и Variant-массивов из-за привязки к Дельфям. Lookup-поддержка - вообще необозримое будущее.
Возможно, но и без этого глюков хватает.
debi12345 писал(а):О, это повод для шуток Мартина.
Джуст упорствует в пресловутой Дельфи-совместимости до последней закорючки, причем и 20% не сделано по части копирования БД-фичей Дельфей. Мечтатель !
А серьезные баги для него Мартин находил и фиксил - но потом надоело патчей месяцами ждать, и форкнул.
Да, Мартин их там здорово расшевелил, но, похоже, весь пар ушел в свисток (в разборки с Мартином). Джуст, ИМХО, вообще тормоз тот ещё. Хотя, может быть, он просто занят и ему не до этих игрушек.