Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Базы данных и репортинг > Вставка переменных в dbf |
Автор: Berliner 19.8.2006, 10:57 | ||
Здраствуйте хочу вставить занчения переменных в dbf вываливается ошибка invalid variant type conversion
Посдкажите в чем проблемма в роде и структура совпадает d1 -Sting поле в dbf Charecter |
Автор: Akella 19.8.2006, 11:12 |
попробуй ADOTable1.Fields[0].AsVariant := d1; |
Автор: Berliner 27.8.2006, 14:03 |
неидет такая же самая ошибка |
Автор: Zero 28.8.2006, 14:37 | ||
Berliner, а чё за dbf??? Если ты в базу 1С хочешь чёто отправить, то пиши мне на мыло, разберёмся. |
Автор: Berliner 28.8.2006, 16:11 | ||
я так и подумал - дело в том что у меня все поля в этом dbf Charecter. Скаите а может ли играть роль то что я вставляю 2 поля а в dbf их штук 5-6. |
Автор: Fedia 28.8.2006, 23:26 | ||||||||
Berliner, попробуем разобраться. 1. Замени TADOTable на TADODataSet, т.к. TADOTable http://forum.vingrad.ru/index.php?showtopic=93287 ! 2.
На указанную тобой ошибку это не должно влиять, но для чистоты эксперимента создай например другую таблицу с 2-мя полями и протестируй на ней. 3. В пошаговом режиме, с помощью точки останова, пройди по следующему коду:
Попадает ли во время работы отладчик на строчки:
Если нет, то посмотри в пошаговом режиме значение свойств DataType у полей Fields[0] и Fields[1]. |
Автор: Berliner 30.8.2006, 15:52 |
ПРоверил пошагам ошибка вылазит на строке ADOTable1.Active:=true. Взде потестил ADO коннекшин-работает [code=delphi] var s: string; begin s:='122143'; ADOTable1.Active:=true; ADOTable1.Insert; if ADOTable1.Fields[0].DataType = ftString then ADOTable.Fields[0].AsString:=s; if ADOTable1.Fields[1].DataType = ftString then ADOTable11.Fields[1].AsString:=s; ADOTable1.Post; end; |
Автор: Fedia 31.8.2006, 02:56 | ||
Это уже немного конкретнее. Без обид, но если бы ты сразу об этом сказал, то больше недели, для этой ветки, не пропало бы зря. Свойство TableName у ADOTable1 задано ? На события OnBeforeOpen и OnAfterOpen компонента ADOTable1 ничего не прописано ? |
Автор: SergeBS 31.8.2006, 07:27 |
Berliner, Если у тебя dbf - читай http://forum.vingrad.ru/index.php?showtopic=92925 и бросай ADO. Не для того оно. |
Автор: Berliner 4.9.2006, 10:54 | ||
Свойство TableName- прописано. на события OnBeforeOpen и OnAfterOpen ничего не прописано. В чем может быть проблема? Вроде кннект к таблице есть. А че не вставляет? |
Автор: Fedia 4.9.2006, 12:19 | ||
Ошибку приведи... |
Автор: Berliner 4.9.2006, 16:13 |
Invalid variant type conversion |
Автор: Fedia 5.9.2006, 00:29 |
А, ты ж уже приводил. Сорри. В общем, что бы долго не гадать, я сделал небольшой пример, в этом примере добавь твою процедуру добавления записи. Если заработает, то проблема была в строке подключения к таблице. |
Автор: Berliner 5.10.2006, 11:59 |
Спасиб за файл. Но после строчки rAddo.Conntection:=true; вываливается ошибка Не найден драйвер...... |
Автор: Fedia 9.10.2006, 09:54 |
Не ожидал. Тогда приведи значение твоей строки ConnectionString у TADOConnection. |
Автор: Guest 9.10.2006, 15:29 | ||
у меня такая строка подключения. а Fedia написал процедуру подключения так я ее подключаю и она не работает. А на моей строке подключения пишет подключение ок, а вставить не может в дбф
|