Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.29;
Скачать: CL | DM;

Вниз

ADO   Найти похожие ветки 

 
Barman ©   (2003-05-09 14:45) [0]

Господа программисты, помогите советом!

Использую компоненты ADO. При компиляции никаких ошибок не выскакивает (Ctrl+F9), код без ошибок компилируется,приложение нормально запускается. При попытке отладки программы (F9) выскакивает ошибка "could not convert variant of type(Null) into type (String)"
Что это за ошибка и как от нее избавиться?


 
WarLord ©   (2003-05-09 15:34) [1]

ошибка приведения типов - без кода не разберешься


 
sniknik ©   (2003-05-09 15:50) [2]

почему не разберешся? точно знаю ошибка в 17 строке.


 
Barman ©   (2003-05-09 15:55) [3]

А поподробнее можно?


 
Tolik1   (2003-05-09 16:04) [4]

По своему опыту могу посоветовать использовать Try .. except .. end.
И делать явное присваивание "" строковым полям при добавлении (изиенении). А при запуске из оболочке D будет материться все равно, т.к. возникает исключительная ситуация.


 
sniknik ©   (2003-05-09 16:05) [5]

очень подробно
http://podgoretsky.com/ftp/Language/nps/idioms.html


 
Barman ©   (2003-05-09 16:25) [6]

2 sniknik

ADOTable.Active:= True; - вот и весь код.



 
sniknik ©   (2003-05-09 16:35) [7]

ну это же явно не все, что у тебя в компонентах стоит, в редакторах свойств обьявлено, может в гриде столбцы определены а поля а таблице поменялись. вариантов много.

могу совет дать. включи в опциях проэкта Use Debug DSUs и пройдись по коду ADOTable.Active:= True по F7, увидиш что не все так просто а заодно и поточнее локализуеш ошибку.


 
Лесник ©   (2003-05-09 23:11) [8]

А по моему эта ошибка выскакивает только тогда когда в НД нет НИОДНОЙ записи, т.е. таблица пустая. Ставишь обработку If(EmplQuery.FieldValues[EmployeeName]=null)then Edit1.Text:="";
Или вставь в таблицу какие нибудь данные, чтобы не было пустых полей и тогда проверь.
Надеюсь помогло.


 
sniknik ©   (2003-05-10 01:06) [9]

Лесник © (09.05.03 23:11)
у него же нет никаких присваиваний
> ADOTable.Active:= True; - вот и весь код.
весьма надо сказать краткий и лаконичный. :о))

а когда нет ни одной записи это ошибка EOF & BOF, весьма распространенная в пятом дельфи без апгрейда но тут седьмой.
не, для диагноза данных явно недостаточно.


 
Лесник ©   (2003-05-10 20:08) [10]

sniknik ©
У меня на 6 дельфи именно такая ошибка выскакивала, когда была пустая таблица. НО только в том случае когда ОДНО или несколько полей связаны с EDIT"AMI (не DBEdit а именно Edit) поэтому он и ругается что не может переконвертировать пустое значение (null) в строку


 
Anatoly Podgoretsky ©   (2003-05-10 21:46) [11]

Если ошибка только при отладке, то это проблема отладчика, а иначе ошибка в 17 строке.


 
WarLord ©   (2003-05-10 22:47) [12]

17 строка - это шо? Application.Run ? :)))



Страницы: 1 вся ветка

Текущий архив: 2003.05.29;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.014 c
4-95157
Mali
2003-03-28 16:10
2003.05.29
Убрать иконку из трея


3-94758
Nikos
2003-05-11 17:29
2003.05.29
Помогите разобраться с методом Lookup


3-94675
_Narayan_
2003-05-11 10:04
2003.05.29
BEFORE insert


14-95102
Домарощинер
2003-05-11 19:31
2003.05.29
Просмотр и редактирование файлов *.dbf


9-94657
orion_st
2002-12-18 15:22
2003.05.29
Создание объекта при заданной верооятности его создания