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

Вниз

Проблемы с DataSet и MDI формой   Найти похожие ветки 

 
dim-   (2002-08-05 22:28) [0]

У меня проект MDI Application. из MDI формы на которой лежит Sprav:TAdoQuery открываю модально диалог в котором надо работать с Sprav:TAdoQuery, но напрямую с ним работать не могу (выдает ошибку что нет такой формы)
Как сделать что-бы можно было работать с Sprav:TAdoQuery из MDI формы в модальном окне.


 
VAleksey   (2002-08-06 06:42) [1]

либо ты эту форму не создал, либо ее св-во типа FormStyle = fsMDIChaild. Посмотри.


 
roottim   (2002-08-06 08:23) [2]

а DataModule не пробовал пользоваться :)


 
ЮЮ   (2002-08-06 08:54) [3]

А, может быть, ему для каждой формы нужен свой запрос? :-))
Перед вызовом модальной формы передавать ей Sprav


 
dim-   (2002-08-06 09:55) [4]

to: ЮЮ
обьявить переменную типа Sp:TSprav и присвоить ей Sp:=Sprav?


 
ЮЮ   (2002-08-06 10:00) [5]

Только типа TAdoQuery :-)


 
dim-   (2002-08-07 10:00) [6]

пробовал я так :-(
ругается что ошибка в строке подключения


 
dim-   (2002-08-08 09:48) [7]

Народ!!!
как можно выкрутится?
Если передаю переменную типа TAdoQuery при попытке обратится к ней, выдается ошибка "Missing Connection or ConnectionString"
Что еще можно попробовать???????


 
3JIA9I CyKA   (2002-08-08 09:51) [8]

Задавай Connection явно/насильно.


 
ЮЮ   (2002-08-08 10:57) [9]

Я не поленился и сделал такое приложение и всё работает.

>но напрямую с ним работать не могу (выдает ошибку что нет такой формы)
Надо не из модальной формы обращаться к MDI, а перед вызовом модальной определить ей параметры, например,

1) на ModalForm есть DataSourсe, к кторорому привязаны DBAware компоненты, тогда перед вызовом определяем DataSet, который лежит на MDI forme:
FormModal.DataSource1.DataSet:=ADOQuery1;
FormModal.ShowModal;

2) на ModalForm нет DataSourсe, а надо просто передать ADOQuery1
В unite ModalForm заводим переменную в интерфес-секции (или добавляем Property, что более элегантно) и перед вызовом присваеваем ей значение:
// из юнита MDI
uses main, Modal;
procedure TMDIChild.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TMDIChild.Button1Click(Sender: TObject);
begin
ModalADOQuery:=ADOQuery1;
FormModal.ShowModal;
end;
// из юнита Modal
var
FormModal: TFormModal;
ModalADOQuery:TADOQuery;
implementation
{$R *.dfm}
procedure TFormModal.FormShow(Sender: TObject);
begin //используем присвоенное значение ModalADOQuery
DataSource1.DataSet:=ModalADOQuery;
end;

>Если передаю переменную типа TAdoQuery при попытке обратится к ней, выдается ошибка "Missing Connection or ConnectionString"


ADOQuery1, лежащая на ЬВШ, естественно должна быть настоена и работать :-)






 
dim-   (2002-08-08 10:59) [10]

Все нашел ошибку. спасибо



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

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

Наверх





Память: 0.46 MB
Время: 0.005 c
3-95666
Gurban
2002-08-07 17:18
2002.08.29
Аналог NVL


3-95645
perov
2002-08-07 14:19
2002.08.29
Блокировка


1-95857
lensky
2002-08-17 20:02
2002.08.29
Algoritm proverki povtorov


3-95650
-=CrazyFish=-
2002-08-07 17:28
2002.08.29
UDF


1-95899
CCCatch
2002-08-18 19:38
2002.08.29
Удаление всех символов кроме цифр.





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