Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];

Вниз

с ума схожу...   Найти похожие ветки 

 
Olivka   (2003-01-10 22:06) [0]

Дорогие!
При запуске программы, а конкретно на месте, где таблице я Active Open возникает ошибка:

project1.exe raized exception class EVariantError
with message "Invalid variant type conversion".
Process stopped. Use Step or Run to continue.

Я использую компонент tADOtable ДЛя доступа к таблице *.dbf.

не знаю, относится это к делу, или нет, но при установке MDAC все время на одном и том же месте (надпись я не успеваю прочитать - что-то типа windows устанавливает компоненты, необходимые для ... (все по-русски)) rundll32 совершает недопустимую операцию и закрыта будет. Я закрываю и установка проходит дальше вполне нормально (при этом в другом окне мелькают многочисленные устанавливающиеся компоненты). После установки поверх этого дела MDAC 2.7 ошибка в программе выдается на том же месте, но в уточняющей интерпретации -

project1.exe raized exception class EVariantTypeCastError with message
"Could not convert variant of type (Null) into type (String)"
Process stopped. Use Step or Run to continue.

Надо сказать, что я работаю над этой программой с неделю и успела перекачать с помощью этого отладочного варианта день назад на сервер 2 таблицы dbf, эта ошибка не возникала.
Если сделать проект начисто и добавить на форму tDBGrid, tDataSource и tADBtable то ошибка возникает на table.active:=true, а потом, при продолжении в гриде нормально показывается таблица dbf.
Что с этим делать-то мне?


 
TTCustomDelphiMaster   (2003-01-10 22:25) [1]

Если в программе используется свойство FieldValues попробуй его заменить на FieldByName(..).AsString или делай проверку на null перед присвоением Variant"a строке.


 
Olivka   (2003-01-11 11:21) [2]

Все дело в том, что эта ошибка возникает еще до всяких присвоений и вообще в самом начале программы, при присвоении .Active:=true. (если это стоит в дизайнтайме, то ошибка возникает при создании модуля данных, или формы, содержащей эти компоненты) т.о. вся обработка уже после этого происходит.


 
Olivka   (2003-01-11 11:24) [3]

ХОтела добавить, при использовании вместо АДО БДЕ, при открытии тех же данных ошибка не возникает. Не возникала она и с АДо до сего дня :(


 
Big_Rom   (2003-01-11 14:49) [4]

Да можно сойти с ума :))
жаль немогу помочь с через Адо неработал. Но если исходить
из последнего собщения очевидно дело в АДО там надо и копать.



 
Olivka   (2003-01-11 21:48) [5]

Я покопалась в конфах, говорят, это указано в сервиспаке, что эта проблема решена. Я установила второй сервиспак, ничего не помогло. Что ж теперь, опять бде использовать... Сегодня дома проверила на машине. ТА же штука. Как же другие работают?


 
sniknik   (2003-01-11 23:33) [6]

к таблице *.dbf. а провайдера какого используеш? если к примеру jet то в MDAC 2.7 его нет, и сколько не переставляй ошибку возникшую в jet не исправиш. (если она там возникла).

попробуй еще и jet переустановить. MDAC 2.5 не поможет если уже более поздняя версия стоит. (а jet в нем включон)

(это на случай если вы его не ставите, в вопросе и после ни слова об этом)


 
Olivka   (2003-01-12 13:46) [7]

Провайдер обычно для dbf - микрософт OLE DB для ODBC. Вчера попробовала поставить вместо него jet, ошибка исчезла. А почему в 2.7 jet-a нет? А как переустановить отдельно jet?


 
sniknik   (2003-01-12 18:19) [8]

> почему в 2.7 jet-a нет
вопрос к микрософту, считают наверное лутше так устанавливать только то что тебе нужно.
> А как переустановить отдельно jet
скачать оттуда же откуда mdac брали с микрософта. ищи там файл Jet40SP6_9xNT.exe. (это под 95/98-е и NT, под 2000/XP другие но этот тоже ставится) с языком тоже различия (другие файлы, смотри что тебе надо)

кстати ODBC-шный драйвер при установке jet перекрывается возможно после переустановки ошибка исчезнет.



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

Форум: "Базы";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
3-96628
Kurt_
2003-01-14 09:40
2003.01.30
Обьясните плиз что значит значение для CursorType (АДО) - OpenFor


1-96794
Igit
2003-01-22 20:35
2003.01.30
Low_dword & High_dword


1-96681
harismatik
2003-01-21 20:42
2003.01.30
Как запретить ресайз


1-96736
soware
2003-01-22 10:10
2003.01.30
Чтение текста голосом


1-96740
Andrey V.
2003-01-22 10:30
2003.01.30
FreeReport & мышинное колесо





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский