Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2011, 07:42   #1
cr1me
Пользователь
 
Регистрация: 04.01.2011
Сообщений: 10
По умолчанию Процедура не видит компонент

Добрый день, прошу не выливать море говна что неуч и читать не умею, а просто помочь с ответом.
Работаю с БД ACCESS через АDO. хочу все уложить в процедуры.
по нажатию на кнопку данный код работает:
Код:
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT * FROM cal');
ADOQuery1.Active:=True;
Но если пытаюсь сделать процедуру аля конект к базе
Код:
procedure logindb();
begin
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT * FROM cal');
ADOQuery1.Active:=True
end;
начинает ругаться что не слышал ничего о ADOQuerty1. Каким образом рассказать процедуре о его существовании.
я думаю тут вопрос сугубо в грамматике и правильной подаче данных.
заранее спасибо
Криворукий Самоучка
cr1me вне форума Ответить с цитированием
Старый 21.10.2011, 07:56   #2
rdama
Форумчанин
 
Аватар для rdama
 
Регистрация: 25.07.2009
Сообщений: 533
По умолчанию

Ну тут уж объявляем процедуру в секции public у формы или дата модуля.
Пока не понятно с чем вы работаете.
И тогда тело вашей процедуры приобретает вид
Код:
procedure TForm1.logindb();
begin
...
Или
Код:
procedure TDataModule1.logindb();
begin
...
Либо пишем полный путь так сказать до компонента.
Код:
Form1.ADOQuery1.SQL.Clear;
или
Код:
DataModule1.ADOQuery1.SQL.Clear;
Ну можете использовать конструкцию with do.
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA)
rdama вне форума Ответить с цитированием
Старый 21.10.2011, 07:58   #3
cr1me
Пользователь
 
Регистрация: 04.01.2011
Сообщений: 10
По умолчанию

Спасибо большое.
Криворукий Самоучка
cr1me вне форума Ответить с цитированием
Старый 21.10.2011, 09:23   #4
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
Либо пишем полный путь так сказать до компонента.
Код:


Form1.ADOQuery1.SQL.Clear;
если не хотим проблем в дальнейшем, то делаем процедуру с параметром
Код:
procedure ogindb(myADO: TADOQuery);
begin
  MyAODQuery.SQL.Text:=....;
end;
какие проблемы? читаем здесь про глобальные переменные
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi. Компонент-предок, компонент-родитель amico Помощь студентам 1 23.09.2015 21:20
[Поиск] Компонент локализации строковых ресурсов и сторонних компонент delphi Человек_Борща Компоненты Delphi 3 23.08.2011 10:44
Монитор не видит Deaddady Компьютерное железо 6 14.03.2011 15:02
Процедура в процедура в C++ Builder Ecosasha C++ Builder 2 06.06.2009 17:17