Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вставка переменных в dbf, Ошибка 
:(
    Опции темы
Berliner
Дата 19.8.2006, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 803
Регистрация: 18.5.2005

Репутация: нет
Всего: 2



Здраствуйте хочу вставить занчения переменных в dbf вываливается ошибка  invalid variant type conversion

Код

                 ADOTable1.Active:=true;
                   //invalid variant type conversion
                  ADOTable1.Insert;
                  ADOTable1.Fields[0].AsString:=d1;
                  ADOTable1.Fields[1].AsString:=d2;
                  ADOTable1.Post;



Посдкажите в чем проблемма в роде и структура совпадает d1 -Sting поле в dbf Charecter
PM   Вверх
Akella
Дата 19.8.2006, 11:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



попробуй
ADOTable1.Fields[0].AsVariant := d1;
PM MAIL   Вверх
Berliner
Дата 27.8.2006, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 803
Регистрация: 18.5.2005

Репутация: нет
Всего: 2



неидет такая же самая ошибка 
PM   Вверх
Fedia
Дата 27.8.2006, 23:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Цитата(Berliner @  19.8.2006,  10:57 Найти цитируемый пост)
Посдкажите в чем проблемма в роде и структура совпадает d1 -Sting поле в dbf Charecter

Если возникает ошибка 
Цитата(Berliner @  19.8.2006,  10:57 Найти цитируемый пост)
invalid variant type conversion

то налицо несовпадение типов поля и переменной.
Перечень полей в компоненте ADOTable1 задан явно ?. Это можно проверить двойным кликом по компоненту ADOTable1. Если да, то не изменен ли там порядок следования полей по сравнению с тем, который был задан при создании таблицы ? Это я к тому, что возможно ты думаешь, что поле Fields[0] поле у тебя строковое, а на самом деле на его месте стоит поле другого типа, например TDateTime.


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
Zero
Дата 28.8.2006, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: нет
Всего: 24



Цитата(Berliner @  19.8.2006,  11:57 Найти цитируемый пост)
Здраствуйте хочу вставить занчения переменных в dbf вываливается ошибка  invalid variant type conversion

Berliner, а чё за dbf??? Если ты в базу 1С хочешь чёто отправить, то пиши мне на мыло, разберёмся.
PM MAIL ICQ   Вверх
Berliner
Дата 28.8.2006, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 803
Регистрация: 18.5.2005

Репутация: нет
Всего: 2



Цитата

то налицо несовпадение типов поля и переменной.
Перечень полей в компоненте ADOTable1 задан явно ?. Это можно проверить двойным кликом по компоненту ADOTable1. Если да, то не изменен ли там порядок следования полей по сравнению с тем, который был задан при создании таблицы ? Это я к тому, что возможно ты думаешь, что поле Fields[0] поле у тебя строковое, а на самом деле на его месте стоит поле другого типа, например TDateTime.


я так и подумал - дело в том что у меня все поля в этом dbf Charecter. Скаите а может ли играть роль то что я вставляю 2 поля а в dbf их штук 5-6. 
PM   Вверх
Fedia
Дата 28.8.2006, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Berliner, попробуем разобраться.
1. Замени TADOTable на TADODataSet, т.к. TADOTable не рекомендуется использовать !
2. 
Цитата(Berliner @  28.8.2006,  16:11 Найти цитируемый пост)
я так и подумал - дело в том что у меня все поля в этом dbf Charecter. Скаите а может ли играть роль то что я вставляю 2 поля а в dbf их штук 5-6. 

На указанную тобой ошибку это не должно влиять, но для чистоты эксперимента создай например другую таблицу с 2-мя полями и протестируй на ней.
3. В пошаговом режиме, с помощью точки останова, пройди по следующему коду:
Код

var
  s: string;
begin
   s:='122143';
   ADODataSet1.Active:=true;
   ADODataSet1.Insert;
   if ADODataSet1.Fields[0].DataType = ftString then
   ADODataSet1.Fields[0].AsString:=s;
   if ADODataSet1.Fields[1].DataType = ftString then
   ADODataSet1.Fields[1].AsString:=s;
   ADODataSet1.Post;
end;

Попадает ли во время работы отладчик на строчки: 
Код

ADODataSet1.Fields[0].AsString:=s;
 и 
Код

ADODataSet1.Fields[1].AsString:=s;

Если нет, то посмотри в пошаговом режиме значение свойств DataType у полей Fields[0] и Fields[1].


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
Berliner
Дата 30.8.2006, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 803
Регистрация: 18.5.2005

Репутация: нет
Всего: 2





ПРоверил пошагам ошибка вылазит на строке 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;
PM   Вверх
Fedia
Дата 31.8.2006, 02:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Цитата(Berliner @  30.8.2006,  15:52 Найти цитируемый пост)
ПРоверил пошагам ошибка вылазит на строке ADOTable1.Active:=true

Это уже немного конкретнее. Без обид, но если бы ты сразу об этом сказал, то больше недели, для этой ветки,  не пропало бы зря.
Свойство TableName у ADOTable1 задано ?
На события OnBeforeOpen и OnAfterOpen компонента ADOTable1 ничего не прописано ?



--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
SergeBS
Дата 31.8.2006, 07:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



Berliner
Если у тебя dbf - читай
 Доступ к БД-1. Локальные БД
и бросай ADO. Не для того оно.
PM MAIL   Вверх
Berliner
Дата 4.9.2006, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 803
Регистрация: 18.5.2005

Репутация: нет
Всего: 2



Цитата

Свойство TableName у ADOTable1 задано ?
На события OnBeforeOpen и OnAfterOpen компонента ADOTable1 ничего не прописано ?

Свойство TableName- прописано.
 на события OnBeforeOpen и OnAfterOpen ничего не прописано. В чем может быть проблема? Вроде кннект к таблице есть. А че не вставляет?

PM   Вверх
Fedia
Дата 4.9.2006, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Цитата(Berliner @  30.8.2006,  15:52 Найти цитируемый пост)
ПРоверил пошагам ошибка вылазит на строке ADOTable1.Active:=true

Ошибку приведи...


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
Berliner
Дата 4.9.2006, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 803
Регистрация: 18.5.2005

Репутация: нет
Всего: 2



Invalid variant type conversion
PM   Вверх
Fedia
Дата 5.9.2006, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Цитата(Berliner @  4.9.2006,  16:13 Найти цитируемый пост)
Invalid variant type conversion

А, ты ж уже приводил. Сорри.

В общем, что бы долго не гадать, я сделал небольшой пример, в этом примере добавь твою процедуру добавления записи. Если заработает, то проблема была в строке подключения к таблице.

Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  ADO___dbf.zip 5,92 Kb


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
Berliner
Дата 5.10.2006, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 803
Регистрация: 18.5.2005

Репутация: нет
Всего: 2



Спасиб за файл. Но после строчки rAddo.Conntection:=true; вываливается ошибка Не найден драйвер......
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.1217 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.