stasz13 0 / 0 / 0 Регистрация: 10.03.2011 Сообщений: 21 |
||||
1 |
||||
13.03.2011, 17:25. Показов 28336. Ответов 8 Метки нет (Все метки)
У меня вопрос по моему проекту…!)
У меня две формы, выдат ошибку когда я пытаюсь на первой форме нажать Button
__________________
0 |
2832 / 1641 / 254 Регистрация: 03.12.2007 Сообщений: 4,222 |
|
13.03.2011, 17:59 |
2 |
‘Could not convert variant of type (Null) into type (String)’ В LoadFromFile нужен string. А ему в ADOTable1[‘фотография’] передаётся Null. Значит ошибка в другом месте — почему это равно Null?
0 |
0 / 0 / 0 Регистрация: 10.03.2011 Сообщений: 21 |
|
13.03.2011, 23:27 [ТС] |
3 |
В LoadFromFile нужен string. А ему в ADOTable1[‘фотография’] передаётся Null. Значит ошибка в другом месте — почему это равно Null? И что нужно сделать, Я ведь и спрашивая, где указать тип ?????
0 |
SAMZ 1263 / 706 / 62 Регистрация: 21.12.2009 Сообщений: 2,255 |
||||||||
14.03.2011, 08:58 |
4 |
|||||||
Сообщение было отмечено Joey как решение Решение
Если «фотография» — это имя поля, то я бы предложил немного по другому
1 |
stasz13 0 / 0 / 0 Регистрация: 10.03.2011 Сообщений: 21 |
||||||||
14.03.2011, 09:20 [ТС] |
5 |
|||||||
Если «фотография» — это имя поля, то я бы предложил немного по другому
СПАСИБО второй Вариант помог , а FilbByName -это команда что значит?
0 |
SAMZ 1263 / 706 / 62 Регистрация: 21.12.2009 Сообщений: 2,255 |
||||||||
14.03.2011, 11:14 |
6 |
|||||||
stasz13, а FilbByName -это команда что значит? Только не
а
Это значит, что Вы обращаетесь к полю с именем, указанным в качестве аргумента функции FielbByName для текущей записи набора ADOTable1
0 |
72 / 64 / 3 Регистрация: 13.05.2010 Сообщений: 349 |
|
14.03.2011, 17:25 |
7 |
FieldByName
0 |
smus 1 / 1 / 0 Регистрация: 06.02.2015 Сообщений: 7 |
||||||||
14.09.2017, 16:26 |
8 |
|||||||
Как я понял, один из вариантов решения это вставка этой строки:
Только не понятно, куда вставлять. У меня связь с базой SQL Server, в ней поля типа VarChar. Ошибка выводится только при компиляции, программа отдельно работает нормально.
Объясните, как убрать эти сообщения об ошибках
1 |
Модератор 8254 / 5477 / 2248 Регистрация: 21.01.2014 Сообщений: 23,578 Записей в блоге: 3 |
|
15.09.2017, 06:24 |
9 |
Объясните, как убрать эти сообщения об ошибках какие
0 |
Форум программистов Vingrad
Поиск: |
|
Ошибка преобразования типов EVariantTypeCastError |
Опции темы |
Vorona |
|
||
Бывалый Профиль
Репутация: нет
|
Мне не везет с запуском программы.. На этот раз выдает ошибку такого содержания: project … raised exception class EVariantTypeCastError with message ‘Could not convert variant of type (null) into type (string)’. process stopped. use step or run to continue. Почему может возникать такая ошибка? Еще и ошибка выводится в самом начале запуска проги…. Это сообщение отредактировал(а) Alexeis — 27.4.2007, 10:56 |
||
|
|||
Pakshin A. S. |
|
||
Эксперт Профиль Репутация: 2
|
может через F8 определить поточнее место вылета ошибки… |
||
|
|||
ДЫМ |
|
||
Бывалый Профиль Репутация: нет
|
А как именно ты «вытираешь все»? Посмотри, внимательно что ты присваиваешь переменной типа string. А лучше покажи код. |
||
|
|||
Pakshin A. S. |
|
||
Эксперт Профиль Репутация: 2
|
Как мне понимается ошибка лезет из-за работы с variant’ами… Трассировкой можно всё найти… |
||
|
|||
Полудненко Олег |
|
||
Українець Профиль Репутация: нет
|
Pakshin A. S. тогда, по-моему, уже лучше через F7 |
||
|
|||
Vorona |
|
||
Бывалый Профиль
Репутация: нет
|
Все ошибки уже поправлены!! Спасибо за беспокойство |
||
|
|||
Pakshin A. S. |
|
||
Эксперт Профиль Репутация: 2
|
Попробуй… мне лично не интересен код содния формы, к примеру, или выхов из памяти чего-либо… |
||
|
|||
Saya |
|
||
Новичок Профиль Репутация: нет
|
можно подробнее объяснить,как вы справились с ошибкой? Программа до этого момента работала около года нормально. |
||
|
|||
Akella |
|
||
Творец Профиль
Репутация: 29
|
Перевёл бы…. Дело в том что ты пытаешься присвоить строковой переменной пустое значение (null). |
||
|
|||
uaWebDeveloperYandex |
|
||
Новичок Профиль Репутация: нет
|
у меня это ошибка вылетает когда активирую компонент ADOTable (DM.HotelTab.Active := True;) |
||
|
|||
Данкинг |
|
||
Yersinia pestis Профиль
Репутация: 35
|
Никто, пока не поведаешь о проблеме более подробно. ——————— There’s nothing left but silent epitaphs. |
||
|
|||
uaWebDeveloperYandex |
|
||
Новичок Профиль Репутация: нет
|
к БД подключаюсь через компонент ADOConnection, а к нему ADOTable. Программа при запуске ругается на свойство action компонента ADOTable, т.е. если ADOTable.active:=false все работает, а если ADOTable.active:=true выдает ошибку Это сообщение отредактировал(а) uaWebDeveloperYandex — 4.9.2011, 03:20 |
||
|
|||
Данкинг |
|
||
Yersinia pestis Профиль
Репутация: 35
|
Ошибка преобразования данных может возникать только при обработке этих данных. Видимо, при запуске программы в коде прописано что-то ещё кроме просто «ADOTable.active:=true» ? ——————— There’s nothing left but silent epitaphs. |
||
|
|||
uaWebDeveloperYandex |
|
||
Новичок Профиль Репутация: нет
|
Ошибка была исправлена! |
||
|
|||
Rodman |
|
||
CIO Профиль
Репутация: 22
|
——————— CRM с функцией АвтоОбзвона Лотереи мира |
||
|
|||
|
Правила форума «Delphi: Базы данных и репортинг» | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) |
0 Пользователей: |
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
Помогите!
Есть форма, на ней ADOTable она подключена к базе Access, но при компиляции выскакивает ошибка
First chance exception at $7C81EB33. Exception class EVariantTypeCastError with message ‘Could not convert variant of type (Null) into type (String)’. Process Project1.exe (3912)
и указывает на строку в файле Forms.hpp
/* TCustomForm.Create */ inline __fastcall virtual TForm(Classes::TComponent* AOwner) : TCustomForm(AOwner) { }
хотя при простом запуске проги она не выскакивает и когда Table была тоже не выскакивала но Table медлено работает поэтому оставить немогу, хочу разобратся что за ошибка и как устранить, при чем выскакивает когда в ADOTable Enable = true.
8 ответов
547
26 июня 2006 года
Hydra
488 / / 20.06.2006
попробуй сменить ппорядок подключения хедеров — иногда в подобных случаях помогает.
1
26 июня 2006 года
kot_
7.3K / / 20.01.2000
Используй поиск по форуму.
У тебя в коде происходит считывание данных (явно или не явно) без проверки на NULL. Возможно это какой либо из компонентов типа TDBEdit в котором допущена эта ошибка — может быть ты сам что либо читаешь типа:
Код:
//Здесь обязательно должно быть:
if(!ADOTable1->FieldByName(«somefiels»)->IsNull)
… ADOTable1->FieldByName(«somefiels»)->AsString;
З.Ы. Разницы принципиальной межу просто TTable и TADOTable практически нет лучше использовать TADOQuery
1
26 июня 2006 года
kot_
7.3K / / 20.01.2000
И ставь ADOTable1-Active = false перед компиляцией
10K
26 июня 2006 года
nut
13 / / 03.11.2005
у меня на форме 2 DBEdit, 2 Memo, DBRichViewEdit, DBNavigator, ADOTable и DataSource,
все навигация и работа через DBNavigator как применить твой код к данной ситуации и чем лучше TADOQuery и как с ним работать
1
27 июня 2006 года
kot_
7.3K / / 20.01.2000
TADOQuery лучше тем, что в твоем случае позволяет более гибко подойти к формированию набора данных. Но это рекомендация, а не обязательное требование. Более подробно — RTFM.
Первое, что необходимо сделать — проверь, что генерирует исключение — я предполагаю что возможно это DBRichViewEdit (по крайней мере со стандартными компонентами вроде бы я подобных ошибок не помню — впрочем я c ними нечасто работаю). Если это действительно так — то используй компонент из стандартного набора — или же загружай данные самостоятельно.
Если же проблема с DBEdit то используя TADOQuery ты легко сможешь решить данную проблему при помощи конструкции iif
10K
27 июня 2006 года
nut
13 / / 03.11.2005
нет, проблема именно в ADOTable, щас выкинул все компоненты оставил его одного и всеравно при активации хоть как выскакивает ошибка, ADOQuery настроить несмог пишет что ошибка с SQL связанная
1
28 июня 2006 года
kot_
7.3K / / 20.01.2000
[QUOTE=nut]ADOQuery настроить несмог пишет что ошибка с SQL связанная[/QUOTE]
ну так исправь ошибку и работай.
10K
28 июня 2006 года
nut
13 / / 03.11.2005
оказалось надо было просто кликнуть правой клавишей и добавить в ADOTable все поля
На чтение 3 мин. Просмотров 23 Опубликовано 15.12.2019
При фильтрации появляется Ошибка
«Project Project1.exe raised exception class EVariantTypeCastError with message ‘Could not convert variant of type (Null) into type (String)’. Process stopped. Use Step or Run to continue.»
procedure TfDM.SharedFilterRecord(DataSet: TDataSet; var Accept: Boolean);
c:=Copy(DataSet[‘Ôàìèëèÿ’], 1, Length(edt1)); Лучший ответ
Do you know why the block of code bellow will negate the «Could not convert variant of type (Null) into type (OleStr)» on some computers, not all of them but 3 out of ten computers generate the error message.
The function is then executed at FormCreate:
Thank you so much for your help.
4 Answers 4
You code fails when the value of a WMI property returns null. You can fix this, checking if the property has a null value before to cast or convert to an string. For this task you can use the VarIsNull function or just use the VarToStr method to safely convert variants to strings like so.
To avoid the error message do
NullStrictConvert := false; // avoid NULL OLE conversion error
Sometimes, the FWbemObject is not NULL but an exception is raise : «Can’nt convert an Array of Variant in OleStr «
As exemple : the BiosVersion (is an array) To solve it, try this :
How can I handle this type of error, Could not convert variant of type (string) to type (double)?
Are there other method that can be used to access data? Earlier version had a strings[] method
LineItems.Add(‘User Count: ‘+ Values[ARowInfo.RecordIndex, tvProductsNumberOfUsers.Index]);
Hi Ron!
The information provided is not enough to diagnose your problem for certain, sorry. Please specify the Grid and Delphi IDE versions you are using. Please also describe your task in detail or attach a small sample project which demonstrates your problem. For now, I assume that you try to convert the value obtained via the DataController.Values method into a string. If so, the problem is that DataController.Values returns variant type. Try to correct your code as follows:
.
LineItems.Add(‘User Count: ‘+ VarToStr(Values[ARowInfo.RecordIndex, tvProductsNumberOfUsers.Index]));
I hope this will help you.
Thanks,
Nicolas.
Your solution worked fine. But I asked another question also. Is there other methods to access the data associated with a grid cell other than values there use to be a strings property.
AZCOMP Support Video: Print Claims Error – Medisoft Version 19
Sometimes after the initial installation of Medisoft, you might get an error that says “Could not convert variant of type (Null) into type (String)”. This error most often occurs when you are printing paper or electronic claims. The thing that is most likely happening here is that you don’t have a facility entered into the system. You need to always have at least one facility in order to send out or print your claims.
If you like this video or if you thought it was helpful, be sure to click the “like” or “thumbs up” button in YouTube. If you want to see more videos like this you can subscribe to our channel to get the new videos when they come out. Leave us a comment or ask us a question below in the comments section if you need help with anything else.
Did you know that when you are watching these videos you can make the video the same size as your entire screen? If you want to watch this video using your whole screen, then click where the red arrow is pointing to in the little picture just below this sentence while watching the video.
Or in other words, click the button in the lower right hand corner of the YouTube viewing screen while watching the video. By clicking on that icon the video will be larger.
Well what are you waiting for? Go ahead and watch the video already…
Версия драйвера 1.4.192 Подключаю фискальный регистратор через обработку обслуживания 1С:Совместимо (драйвер Штрих-М) — подобных ошибок не возникает. Единственное в АРМК при подключении через данный драйвер невозможно напечатать копию чека. |
|
Добрый день. Сообщите номер релиза решения |
|
Здравствуйте Надежда Драйвер устанавливался из конфигурации!!! Версию драйвера от Штрих-М, на которой работает — 4.10 (точный релиз смогу написать только завтра), на версии 4.9 драйвера от Штрих-М появлялась подобная ошибка, описанная в первом сообщении. Возможно драйвер по технологии Рарус использует как раз версию 4,9 |
|
Хотя нет, извиняюсь. Изменено: Владимир Пшеничников — 17.06.2014 16:10:39 |
|
Владимир, я не поняла, на версии 4.10 есть ошибка? |
|
Владимир Пшеничников Заглянувший Сообщений: 55 |
#6
17.06.2014 17:20:43
Нет. Данная ошибка возникает при использовании вашего пакета драйверов по технологии Рарус. Но хотелось бы подключить через драйвера по технологии Рарус. |
||
Добрый день. При установке пакета драйверов по технологии Рарус из релиза 2.1.2.8 устанавливается драйвер Штрих версии 4.10. Возможно, у вас уже стояли драйвера Штрих версии 4.9 В любом случае, для работы необходимо поставить и пакет драйверов по технологии Рарус и драйвер Штрих версии 4.10. |
|
Владимир Пшеничников Заглянувший Сообщений: 55 |
#8
18.06.2014 13:27:31 Как раз стоит драйвер версии 4.10. Через 1С:Совместимо работает. Завтра на одной из касс попытаюсь подключить через ваши драйвера |