ADO + SQL Server 2000, подстановочные поля
От: SergSV Россия  
Дата: 31.07.02 04:01
Оценка:
День добрый !

Есть Windows NT Server 4.0 EE с установленной на нем БД SQL Server 2000 EE.
Клиент пишется на Delphi 6 и для доступа к БД используется ADO.
Есть четыре таблицы:
Detail — основная
Detail_Type, Liter, Format_Chert — справочные
В таблице Detail есть три числовых поля, информация в которые заносится из
справочных таблиц:
Detail['Nom_Type'] <- Detail_Type['Nom_Type']
Detail['Id_Litera'] <- Liter['Id']
Detail['Id_Format_Chert'] <- Format_Chert['Id']
В редакторе полей таблицы Detail создаю три новых подстановочных поля типа
Lookup для отображения в DbGrid символьной информации из справочных таблиц.
Добавляю новую запись:
ADOConnection1.BeginTrans;
Detail.Append;
Detail_Type.First;
Detail['Nom_Type'] := Detail_Type['Nom_Type'];
Liter.First;
Detail['Id_Litera'] := Liter['Id'];
Format_Chert.First;
Detail['Id_Format_Chert'] := Format_Chert['Id'];
При операциях присваивания выдается следующее сообщение: "Ошибка
неизвестного типа".
Если в редакторе полей оставить только одно подстановочное поле и изменить
приведенный выше код на:
ADOConnection1.BeginTrans;
Detail.Append;
Detail_Type.First;
Detail['Nom_Type'] := Detail_Type['Nom_Type'];
то все проходит без ошибок. То есть проблема возникает при наличии вычисляемых
полей больше одного.
Подскажите как можно обойти эту проблему. Заранее благодарен за ответ.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.