powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi 6 +MDI + MSSQL7
13 сообщений из 13, страница 1 из 1
Delphi 6 +MDI + MSSQL7
    #32020202
Фотография Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MDI Приложение. Из разных дочерних форм просматривается одна таблица через Grid-DataSource-Query. На Query.Close в любом окне все падает.
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32022169
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык на каждой форме должен быть свой query, тогда все будет хорошо
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32024617
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По-моему ответ Tygra не решает проблемы с MDI. Попробуйте для каждого окна открывать свою сессию
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32024635
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А причем тут сессии.

Если Query лежит где-то в одном месте, а все остальные смотрят на нее, то чего же еще может получиться при ее закрытии. Все и погаснет

Или уж не закрывайте вообще, или в каждом окне все свое (так по уму лучше будет, делай чего хочешь, никому не мешает)
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Delphi 6 +MDI + MSSQL7
    #32262542
Тут можно вполне обойтись без Query, я обычно создаю один Connection на главной форме и программно в DataSet загоняю нужные данные:
DataSet.RecordSet:= Connection.Execute('Запрос') а потом этим датасетом пользуюсь сколько душе угодно, устанавливая у DataSource всех таблиц этот датасет. И никаких проблем.
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32263399
Mik Prokoshin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Небесная канцелярия:
Никаких проблем. Кроме невозможности визуальной разработки.
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32263455
pavelf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кое что есть в Кулибе версии 1.4.6 от 1.4.2001
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
unit Childwin;
interface
uses Windows, Classes, Graphics, Forms, Controls,
ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids,
DataM; {!} // Модуль TDataModule1
type
TMDIChild = class(TForm)
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBNavigator1: TDBNavigator;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
{!} DM:TDataModule1;
{!} constructor Create(AOwner:TComponent); override;
end;
implementation

{$IFDEF XOXOXOX}  // DataM должен находиться в секции interface. Необходимо для среды

uses DataM;      // времени проектирования. Определение  "XOXOXOX"  подразумевает,
{$ENDIF}         // что это никогда не будет определено, но чтобы компилятор видел это.

{$R *.DFM}

{!} constructor TMDIChild.Create;
{!} begin
{!}   DM := TDataModule1.Create(Application);
{!}   inherited Create(AOwner);
{!}   DM.Name := '';
{!} end;

procedure TMDIChild.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;

end.
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32263745
Mik Prokoshin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это - дилемма с разными подходами : должны ли мы иметь один документ и несколько view или каждый view включает в себя свой документ.
Если документ один - он должен закрываться при закрытии, скажем, последнего view, ссылающегося на него.
Если же к каждой форме есть свой datamodule, то ведь хотелось бы еще иметь к нему доступ в design-time.
В design-time же видны либо глобальные переменные, либо automated члены класса. Я не нашел достойного ответа на вопрос - как сделать datamodule, привязанный к форме, но иметь доступ к нему в design-time. Единственный вариант, пришедший в голову - оставлять объявление глобальной var DataModule1:TDataModule1, и как-то перенаправлять ссылки с него на нужный компонент.
Может в Кулибе еще в DataM чего интересного написано ?
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32263786
pavelf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"Когда во время разработки вы устанавливаете "DataSource"-свойство в БД-компонентах для указания на модуль данных, VCL во время выполнения приложения будет пытаться создать связь с существующим TDataModule, основываясь на его свойтсве Name. Так, если вы добавите модуль данных к вашему проекту и переместите его в свойстве проекта из колонки автоматически создаваемых форм в колонку доступных, вы сможете разработать форму, содержащую элементы управления для работы с базами данных, после чего несколькими строчками кода можете создать экземпляр формы, имеющий экземпляр собственного модуля данных.

С помощью Репозитория создайте "standard MDI application" (стандартное MDI-приложение), в котором модуль TMDICHild будет похож на приведенный ниже. Добавленные строки имеют комментарий {!}. Хитрости спрятаны в конструкторе create и задании другого порядка следования операторов."

(С) Кулиба
:)
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32263791
pavelf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Согласен что это дилема, я в своем приложении сделал один документ и несколько View's. Хотя было бы интересно послушать мнения посетителей форума по этому вопросу...
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32263970
Фотография Белов Владимир
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть лучше использовать TClientDataSet
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32264217
Ray Adams
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
НУ незнаю как кто, а я если пишу MDI то на DataModule имею только Database и скажем один квери qCMD , котрый юзаю только для создания динамических простых запросов. Все остально сидит в самих формах MDIChild. Проблем никога не бывает, сама форма открывает свой query и она же его закрывает. Зачем городить огород? И в чем проблемма с дезайн режимом?
...
Рейтинг: 0 / 0
Delphi 6 +MDI + MSSQL7
    #32264483
Mik Prokoshin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема - например, если для одного документа надо несколько view сделать, т.е. не запихивать данные прямо в форму, а в динамически создающийся datamodule, скажем, и иметь возможность из нескольких форм сослаться на эти данные в designtime.
Надо будет Кулиб глянуть...
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi 6 +MDI + MSSQL7
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]