Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.11.15;
Скачать: CL | DM;

Вниз

Приведение типов   Найти похожие ветки 

 
GlowSolnce   (2009-09-29 11:03) [0]

Написан собственный класс
 TRdADOQuery = class(TADOQuery)
 private
   { Private declarations }
   FSQLSelect:string;
   FSQLWhere:string;
   FSQLOrder:string;
   procedure SQLAssemble;
 protected
   { Protected declarations }
 public
   { Public declarations }
   constructor Create(AOwner: TComponent); override;
   procedure SelectSQL;
   property SQLSelect:string read FSQLSelect write FSQLSelect;
   property SQLWhere:string read FSQLWhere write FSQLWhere;
   property SQLOrder:string read FSQLOrder write FSQLOrder;
 published
   { Published declarations }
 end;

constructor TRdADOQuery.Create(AOwner: TComponent);
begin
 inherited Create(AOwner);
end;

procedure TRdADOQuery.SelectSQL;
begin
  SQL.Text:=FSQLSelect+" "+FSQLWhere+" "+FSQLOrder;
 Open;
end;

На форме лежит TDBGrid

в событии у кнопки пишу так:
ADOConnection1.Open;
TRdADOQuery(DBGrid.DataSource).SQLSelect:="Select * from ...";  // Отрабатывает ОК
TRdADOQuery(DBGrid.DataSource).SQL.Text:="Select * from tSite"; // Отрабатывает ОК
TRdADOQuery(DBGrid.DataSource).SelectSQL; // Здесь ошибка.

Ошибка заключается в том, что в методе SqlSelect
в строчке
SQL.Text:=FSQLSelect+" "+FSQLWhere+" "+FSQLOrder;

Объект SQL=nil

Как корректно привести типы?
Такое ощущение, что происходит не приведение типов, а создание нового экземпляра.


 
qwer_qwer   (2009-09-29 11:15) [1]

TRdADOQuery(DBGrid.DataSource.DataSet)



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

Текущий архив: 2009.11.15;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.01 c
2-1254139608
dplz
2009-09-28 16:06
2009.11.15
Прозрачный color на label е, возможно?


2-1254472113
Nutz
2009-10-02 12:28
2009.11.15
DesignIntf, DesignEditors


1-1223917702
просто так
2008-10-13 21:08
2009.11.15
object`ы в delphi 2009


15-1252748348
Kerk
2009-09-12 13:39
2009.11.15
mod_status


15-1253478606
Юрий
2009-09-21 00:30
2009.11.15
С днем рождения ! 21 сентября 2009 понедельник