In the current implementation it is not supported. If you follow the showReport code you will see that it first prepares the report and the calles the showPreparedReport which has the following code (in lazarus 1.2.4 fpc 2.6.4)
procedure TfrReport.ShowPreparedReport;
var
s: String;
p: TfrPreviewForm;
begin
{$IFDEF DebugLR}
DebugLnEnter('TfrReport.ShowPreparedReport INIT');
{$ENDIF}
CurReport := Self;
MasterReport := Self;
DocMode := dmPrinting;
if EMFPages.Count = 0 then Exit;
s := sPreview;
if Title <> '' then
s := s + ' - ' + Title;
if not (csDesigning in ComponentState) and Assigned(Preview) then
begin
Preview.Connect(Self);
end
else
begin
p := TfrPreviewForm.Create(nil);
p.BorderIcons:=p.BorderIcons - [biMinimize];
{$IFDEF DebugLR}
DebugLn('1 TfrPreviewForm.visible=%s',[BooLToStr(p.Visible)]);
{$ENDIF}
p.Caption := s;
{$IFDEF DebugLR}
DebugLn('2 TfrPreviewForm.visible=%s',[BooLToStr(p.Visible)]);
{$ENDIF}
if ExportFilename<>'' then
p.SaveDialog.FileName := ExportFilename;
p.Show_Modal(Self);
end;
{$IFDEF DebugLR}
DebugLnExit('TfrReport.ShowPreparedReport DONE');
{$ENDIF}
end;
as you can see your self there 2 main problems on the above code
1) The preview you set does not give you access to the underline preview form or its save dialog.
2) if you leave the preview empty the form create is not accesible outside the ShowPreparedReport method.
having said that I'd like to inform you that you can set the exportfilename public variable, which sets the savedialog.filename which might have the effect you are after and might not.
Two bonus problems when no preview is assigned by the end user, in my code that is always.
1) it seems that the ShowPreparedReport has a memory leak as it never frees the created preview form.
2) regardless of the value of ModalPreview report's property the preview window will always be modal.
I need to download the latest development version to take a closer look when I get some free time.