Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

"Could not convert variant of type (null) into type (Olestr)" [D7]


Mamed ©   (2007-06-29 15:12:00) 

U menya problema s ADOQuery. est connection v bazu MSacces. pisu sql kak nachinaetysa vipolnyatsya ADOQuery.Active:=true
to daet osibki "Could not convert variant of type (null) into type (Olestr)" i samoe ploxoene vesgda osibku daet. 50 na 50
Kod Takoy
 Dm.QactionAcces.Active:=False;
 DM.DBConnAcc.Connected:=false;
 DM.QactionAcces.Connection:=DM.DBConnAcc;
 DM.DBConnAcc.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\K&K Production Data Base.mdb;Persist Security Info=False';
 Try
   DM.DBConnAcc.Connected:=true;
   DM.QactionAcces.SQL.Clear;
   DM.QactionAcces.SQL.Append('SELECT  PRODDATE,OIL,GAS,WATER FROM [KRB Monthly Production for Klaus] WHERE WELLNAME="K0001" ');
   if p_proddatefilter1>0 Then
   Begin
     DecodeDate(p_proddatefilter1,y,m,d);
     str(y,ys);
     str(m,ms);
     str(d,ds);
     Ys:='Dateserial('+ys+','+ms+','+ds+')';
     DM.QactionAcces.SQL.Append(' AND PRODDATE>='+ys);
   end;
   if p_proddatefilter2>0 Then
   Begin
     DecodeDate(p_proddatefilter2,y,m,d);
     str(y,ys);
     str(m,ms);
     str(d,ds);
     Ys:='Dateserial('+ys+','+ms+','+ds+')';
     DM.QactionAcces.SQL.Append(' AND PRODDATE


Mamed   (2007-07-02 12:57:00) [1]

никака не помагло.


Anatoly Podgoretsky   (2007-07-02 12:02:00) [2]

> Mamed  (02.07.2007 11:30:14)  [14]

Удали на форме QactionAcces и жобавь овый и ничего не делай кроме изменения имени


Mamed   (2007-07-02 11:30:00) [3]

есть object DBConnAcc(AdoConnection) который соединяется в базу MS Acces.
есть object QactionAcces(AdoQuery) который выполняут SQL через  DBConnAcc.Вес код такой:

  QactionAcces.Active:=False;
  DBConnAcc.Connected:=false;
  QactionAcces.Connection:=DBConnAcc;
  DBConnAcc.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data    Source=D:\K&K Production Data Base.mdb;Persist Security Info=False';
DBConnAcc.Connected:=true;
QactionAcces.SQL.Clear;
QactionAcces.SQL.Append('SELECT  PRODDATE,OIL,GAS,WATER FROM [KRB Monthly Production for Klaus] WHERE WELLNAME="K0001" ');
QactionAcces.Actıve:=true
при выполнения кода QactionAcces.Actıve программа выдет ощибку
"Could not convert variant of type (null) into type (Olestr)"


sniknik   (2007-07-02 11:01:00) [4]

> Pomagite kto smojet...
могут то многие, но вот читать транслит... больше 3 слов "нэ понэмау".
напиши по человечески (и не говори что не можеш/нет раскладки/т.д. т.к. есть различные виртуальные клавиатуры на любой язык).


Mamed   (2007-07-02 10:44:00) [5]

Pomagite kto smojet...


Mamed   (2007-06-30 07:40:00) [6]

izvinite ya po russkuyu gramatiku ne tak uj xoroso znayu. nauchilsya tolko razgovornomu rechu)
Dannie est.verxniy kod napisan v odnoy procedure. Objecti Dm.QactionAcces i DM.DBConnAcc ispolzovani tolko v etoy procedure. kak vidno v nachale procedure
u objecta Dm.QactionAcces delaetysa SQL.Clear SQl.Append a   DM.DBConnAcc delaetsya disconnect pisu conenction string coedinyayu i t d... no v stroke
Dm.QactionAcces.Active:=True programma inogda daet osibku. prichem eto ne na vsex kompyuterax. u moego vse normalno no u clienta osibka.


Плохиш   (2007-06-29 20:55:00) [7]


> to daet to ne daet osibku

То есть данные, то нет. Прикольная такая база...

PS. Офигенно приятно читать самодельный транслит, да ещё с грамматическимо ошибками...


Mamed   (2007-06-29 16:45:00) [8]

i samoe ploxot to chot najimayu knopku poluchayu osibku esho raz najimayu osibka ne vixodit vse normalno. to daet to ne daet osibku


pavel_guzhanov   (2007-06-29 16:14:00) [9]

Значение какого-то поля ты помещаешь в переменную типа olestr. Иногда это поле пустое, пустое значение невозможно преобразовать в olestr. Об этом и говорит ошибка. Только вот где у тебя такое преобразование происходит, из приведенного кода не видно


Mamed   (2007-06-29 15:44:00) [10]

v Acces databese PRODDATE datetime,OIL i WATER single a WELLNAME Text ovogo tipa


Mamed   (2007-06-29 15:43:00) [11]

Nikakie. tolko chitayu s Adoquery i vse dannie perepisivayu v Memarytable

   DM.QactionAcces.Active:=true;
   if DM.QactionAcces.RecordCount>0 Then
   Begin
     Mdata.Active:=False;
     Mdata.Active:=True;
     While Not DM.QactionAcces.Eof do
     Begin
       Mdata.Append;
       Mdata.FieldByName('DATE_').asdatetime:=DM.QactionAcces.Fieldbyname('PRODDATE').a sdatetime;
       Mdata.Fieldbyname('X').AsFloat:=DM.QactionAcces.Fieldbyname('OIL').asfloat;
       Mdata.Fieldbyname('Y').AsFloat:=DM.QactionAcces.Fieldbyname('WATER').asfloat;
       Mdata.Post;
       DM.QactionAcces.Next;
     End;
     if not p_showdata Then
     Begin
       ImportFRomAcces:=ImportData(p_wellno,pworkshop,Mdata);
       Mdata.Active:=False;
     end
     else
       ImportFRomAcces:=0
   end
   Else
     ImportFRomAcces:=2;


Ega23   (2007-06-29 15:36:00) [12]

RfКакие визуальные компоненты связаны с DataSet?


Mamed   (2007-06-29 15:25:00) [13]

Nikakix sobitiy net. prosto AdoQuery i Adoconnection.


Плохиш   (2007-06-29 15:22:00) [14]

События OnAfterOpen, OnBeforeScroll, OnAfterScroll...


Mamed   (2007-06-29 15:19:00) [15]

Problema v tom chto DM.QactionAcces nichevo ne dalyu
osibka vixodit pryama posle DM.QactionAcces.Active:=true;


Плохиш   (2007-06-29 15:17:00) [16]

Отвратительное оформление поста :@ Отвечающих желательно хоть немного уважать. Весь, приведённый код для решения проблемы бесполезен. Проверяй, что делаешь в обработчиках событий у своей QactionAcces.


Наверх

Титульная страница Поиск, карта сайта Написать письмо