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

Вниз

ошибка при активации TQuery   Найти похожие ветки 

 
чайник   (2003-11-06 10:22) [0]

Уважаемые мастера помогите чайнику, бьюсь 2 день. У меня в проекте на первой форме выводится диалог с именем пользователя и пароля и компонент TDataBase.
AliasName:=MSSQL;
Connected:=true;
DatabaseName:=lising;
Exclusive:=false;
HandleShared:=true;
KeepConnection:=false;
Loginprompt:=false;
по кнопочке OK анализирую соединение через try...except.При удачном соединении загружаю основное меню.На этой форме у меня несколько Query и DataSource. в событии FormCreate запускаю Query.execsql и делаю Query.Active:=true; в uses второй формы прописан модуль первой формы. Выдается сообщение, что не может совершить операцию по открытию базы. В чем дело, спасибо.


 
vovchik   (2003-11-06 10:24) [1]

Надеюсь что прежде чем запустить Query.execsql ты запрос то написал, а то вроде как из текста не понятно сам запрос есть или нет


 
Плохиш_   (2003-11-06 10:25) [2]

Как всегда ошибка в 17й строке


 
DenK_vrtz   (2003-11-06 10:25) [3]

запускаю Query.execsql и делаю Query.Active:=true
а зачем и то и то делать?


 
stone   (2003-11-06 10:25) [4]


> запускаю Query.execsql и делаю Query.Active:=true;

Query.execsql - только для выполнения команд (insert, update, delete ...)

Query.Active:=true; - для получения набора данных (SQL = select * ...)

и то и другое вместе не допустимо


 
bushmen   (2003-11-06 10:27) [5]

>запускаю Query.execsql и делаю Query.Active:=true;

Query.execsql применяется для запросов, которые не возвращают НД, так что Query.Active:= true - будет ругаться


 
Vlad   (2003-11-06 10:29) [6]


> в событии FormCreate запускаю Query.execsql и делаю

Ты уверен что в момент FormCreate экземпляр Query уже создан ?


 
чайник   (2003-11-06 10:30) [7]

запрос естественно написан, если просто делаю execsql ошибки нет. но стоит изменить свойство Active ошибка и вылетает в тексте запроса стоит select. может не передаются параметры базы. Когда на офрме делаешь Active:=true, то все нормально.


 
Плохиш_   (2003-11-06 10:32) [8]

Предлагаю ветку в потрепаться:
Кода нет, текста ощибки нет, телепаты в отпуске.


 
Term   (2003-11-06 10:33) [9]

ну тогда хоть приведи текст запроса


 
чайник   (2003-11-06 10:38) [10]

запрос вообще простой
select kod,name from klient
я затем строки из Query пытаюсь заносить в combobox для выбора клиента вот таким образом.
Q_kl.Active:=True;
with D_kl.DataSet do begin
D_kl.DataSet.First;
while not D_kl.DataSet.Eof do begin
ComboBox1.Items.Add(D_kl.DataSet.FieldValues["name"]);
D_kl.DataSet.Next;
end;
end;


 
Жук   (2003-11-06 10:40) [11]

Странно всё это...


 
чайник   (2003-11-06 10:43) [12]

что странного, что не открывается..


 
bushmen   (2003-11-06 10:44) [13]

В FormCreate это работать не будет - в момент создания формы компоненты ещё не созданы. Перенеси это в FormActivate


 
Vlad   (2003-11-06 10:45) [14]


> чайник (06.11.03 10:43) [12]

Ты можешь нормально код своей программы привести, а именно ту процедуру, в которой происходит ошибка ?


 
чайник   (2003-11-06 10:48) [15]

bushmen © спасибо, все получилось..


 
Johnmen   (2003-11-06 10:49) [16]

Вот этого делать не надо >bushmen © (06.11.03 10:44) !


 
Term   (2003-11-06 10:50) [17]


> Перенеси это в FormActivate

и при каждом получении формой фокуса, будет выполняться запрос, по 100 раз на дню, а так как ComboBox1.Items.Clear нету, то список клиентов будет длинной с километр в конце дня, нужно структуру программы ему переосмыслить, чтобы одни и теже действия без надобности не выполнялись по много раз


 
Плохиш_   (2003-11-06 10:53) [18]


> bushmen © (06.11.03 10:44) [13]
> В FormCreate это работать не будет - в момент создания формы
> компоненты ещё не созданы. Перенеси это в FormActivate


Это в какой книжке такое пищут?


 
bushmen   (2003-11-06 10:57) [19]

>Term ©

Я это для проверки предложил. С такой информацией не понятно, в каком месте у него ошибка. Причина ошибки нашлась, а дальше пусть сам переосмысливает куда ему что тыкать. Кстати, раз пошла така пьянка, то я бы на его месте все компоненты доступа к данным перенес в DataModule.


 
Term   (2003-11-06 10:57) [20]


> Это в какой книжке такое пищут?

это может в книжке не пишут, но так оно и есть, я тоже с этим сталкивался, на OnCreate главной формы, не сработает, но OnActivate главной формы тоже не выход


 
bushmen   (2003-11-06 10:58) [21]

>Плохиш_

Что именно - про созданные компоненты или про перенос в FormeActivate? :)))


 
bushmen   (2003-11-06 10:59) [22]

Ошибочка, FormActivate


 
Плохиш_   (2003-11-06 11:00) [23]

>Term © (06.11.03 10:57) [20]

Где только такую траву берёте

>bushmen © (06.11.03 10:58) [21]

про оба


 
Жук   (2003-11-06 11:01) [24]


> Term © (06.11.03 10:50) [17]

Не всё так просто. Если остальные формы модальные, то этого не будет.


 
Плохиш_   (2003-11-06 11:02) [25]

>bushmen © (06.11.03 10:58) [21]

Хотя... Неплохо было бы уточнить какие компоненты имеются ввиду


 
Vlad   (2003-11-06 11:06) [26]

TQuery в момент FormCreate еще не создан. Он nil.
А вот перенос в FormActivate, чревато дурными последствиями, такими как многократное выполнение данного запроса при каждой активации формы. Хорошо что там не INSERT, а то бы происходили удивительные вещи у Вас в базе :)


 
bushmen   (2003-11-06 11:07) [27]

>Плохиш_

Визуальные


 
Term   (2003-11-06 11:10) [28]


> Не всё так просто. Если остальные формы модальные, то этого
> не будет.

интересно... поясни тогда что значит "модальные" такого свойства то у формы нет...
а Form.ShowModal это функция...
или я не прав тогда поправьте


 
bushmen   (2003-11-06 11:13) [29]

>Vlad ©
>Хорошо что там не INSERT, а то бы происходили удивительные вещи >у Вас в базе :)

Что касается выбора процедур, куда вставлять код - дело самого человека. Я указал только на причину ошибки, а дальше - сам пусть разбирается.


 
Term   (2003-11-06 11:14) [30]


> Плохиш_ (06.11.03 11:00) [23]
> >Term © (06.11.03 10:57) [20]
>
> Где только такую траву берёте

хе...

> Vlad © (06.11.03 11:06) [26]
> TQuery в момент FormCreate еще не создан. Он nil.

помоему я тоже самое имел ввиду, просто говорил обо всём в общих фразах, так как спросил совсем новичёк.
а траву я как то не очень чаще пиво и девочки :)))


 
Плохиш_   (2003-11-06 11:26) [31]

Объясняю на пальцах: В FormCreate уже созданы все компоненты, которые были кинуты на форму в дезайнере.
У кого это не так сожетую сменить траву, сорт пива, девочек.


 
Term   (2003-11-06 11:32) [32]


> У кого это не так сожетую сменить траву, сорт пива, девочек.

всё больще не пью и прогоню всех баб
ты прав........
а почему тогда у него глючило?


 
Собаколов   (2003-11-06 11:34) [33]

Кто знает что это за собачье поганяло Плохиш_ у него справка от доктора есть


 
Term   (2003-11-06 11:38) [34]


> Кто знает что это за собачье поганяло Плохиш_ у него справка
> от доктора есть

я не знаю что у него есть, но баб уже прогнал,
т.к. проверил и Query1.active:=true на OnActivate формы на которой лежит компонент сработал без глюков...



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

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

Наверх




Память: 0.51 MB
Время: 0.009 c
1-89819
Prof
2003-11-18 10:49
2003.11.27
Глючный таймер.


1-89980
Developerr
2003-11-16 19:58
2003.11.27
Как округлить дробное число с 3-х занков до 2-х после запятой?


6-90024
Oleg_
2003-09-29 18:25
2003.11.27
Нажатия клавиш на webbroser


3-89735
DDespot
2003-11-09 04:27
2003.11.27
Access, импорт данных. Update.


7-90149
Dev
2003-09-18 00:10
2003.11.27
Загоузка CPU





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский