Пустой отчёт при динамическом создании страницы
Добрый день.
Подскажите, пожалуйста, что я делаю не так.
Есть отчёт, на который я динамически добавляю страницы с помощью своей процедуры CreatePage.
Если я вызываю процедуру в 1 варианте, то у меня пустая страница, показывается только ReportTitle, во 2 варианте всё отлично.
Если я вызываю процедуру в 1 варианте и присваиваю mdName.Parent := Page, то в memo вижу некоторые данные, ясное дело, не все, ну, т.е. с датасетом все ок, проблема с MasterData, только вот какая?
Версия FR 4.15
Заранее спасибо за ответ.
Подскажите, пожалуйста, что я делаю не так.
Есть отчёт, на который я динамически добавляю страницы с помощью своей процедуры CreatePage.
Если я вызываю процедуру в 1 варианте, то у меня пустая страница, показывается только ReportTitle, во 2 варианте всё отлично.
Если я вызываю процедуру в 1 варианте и присваиваю mdName.Parent := Page, то в memo вижу некоторые данные, ясное дело, не все, ну, т.е. с датасетом все ок, проблема с MasterData, только вот какая?
Версия FR 4.15
Заранее спасибо за ответ.
var
Page: TfrxReportPage;
ReportTitle:TfrxReportTitle;
mHead: TfrxMemoView;
MasterData:TfrxMasterData;
mdName:TfrxMemoView;
procedure CreatePage;
begin
Page := TfrxReportPage.Create(Report);
Page.Name := 'Page21';
Page.Parent := Report;
ReportTitle:= TfrxReportTitle.Create(Page);
ReportTitle.Name := 'ReportTitle11';
ReportTitle.SetBounds(0,20,100,20);
mHead :=TfrxMemoView.Create(ReportTitle);
mHead.Name := 'mHead11';
mHead.Text:= 'Статистический отчет ПЦР - лаборатории';
mHead.SetBounds(0,20,100,20);
MasterData:=TfrxMasterData.Create(Page);
MasterData.Name := 'MasterData4';
MasterData.dataset:=frxDBDataset1;
MasterData.Visible := True;
MasterData.SetBounds(20,20,100,20);
mdName:=TfrxMemoView.Create(MasterData);
mdName.Name := 'mdName4';
mdName.Parent := MasterData; //!!!вот тут меняю на mdName.Parent := Page
mdName.dataset:=frxDBDataset1;
mdName.datafield:= 'Name';
mdName.SetBounds(40,20,100,20);
frxDBDataset1.open;
end;
procedure Button1OnClick(Sender: TfrxComponent);
begin
CreatePage //1 вариант
end;
begin
CreatePage //2 вариант
end.
Комментарии
Для объектов на бэндах Top, Left задаётся относительно бэнда
но для memo, пока не прописала все полностью, данные не отображались
По-прежнему при вызове функции в Button1OnClick MasterData таинственно исчезает, оставляя ReportTitle, а если вызывать из основного кода - все отлично отображается.
Несколько неудобно, если количество создаваемых страниц будет известно только после того, как пользователь в диалоговом окне выберет какие-то параметры. Но хотя бы ясно куда двигаться. Спасибо)