Создание отчета, в котором вначале его выполнения появляется диалоговое окно

Question: Создание отчета, в котором вначале его выполнения появляется диалоговое окно

Answer:

Создал отчет в котором вначале его выполнения появляется диалоговое окно. В диалоге я выбираю одно из двух значений: продолжить выполнение текущего отчета или вызать из него новый отчет. При вызове нового отчета мне нужно закрыть форму предварительного просмотра первого отчета. Иначе получается так: Вызываю из первого отчета второй, он отрабатывает, показывает данные, я закрываю окно пр.просмотра второго отчета дальше вижу пустое окно пр. просмотра первого отчета. Используйте пользовательскую функцию В Delphi: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
procedure TForm1.FormCreate(Sender: TObject); 
begin 
frxReport1.AddFunction('function CloseReport'); 
frxReport1.LoadFromFile('testReport1.fr3'); 
frxReport1.ShowReport(); 
end; 
function TForm1.frxReport1UserFunction(const MethodName: String; var Params: Variant): Variant; 
begin 
if MethodName='CLOSEREPORT' then 
frxReport1.PreviewForm.Close; 
end; 
//в скрипте: 
procedure Button1OnClick(Sender: TfrxComponent); 
var rep: TfrxReport; 
begin 
rep := TfrxReport.Create(Report); 
rep.EngineOptions := Report.EngineOptions; 
rep.LoadFromFile('TestReport2.fr3'); 
rep.ShowReport; 
CloseReport; 
end;