Использование TRvProject + TRvNDRWriter + TRvRenderPreview + TMemoryStream + TScrollBox
procedure TForm1.FormCreate(Sender: TObject);
begin
FNdrStream := TMemoryStream.Create;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
FNdrStream.Free;
end;
procedure TForm1.btnPreviewClick(Sender: TObject);
begin
//load report project file. You can use stored RAV instead
rvProject.ProjectFile := 'C:\ExecutaveisGerados\Exemplos\sampleRave\sampleRave.rav';
rvProject.Open;
//tells rave we will write the report result to a NDR
rvProject.Engine := rvNdrWriter;
//ensure empty memory stream
FNdrStream.Clear;
//tells NDRWriter where to store ndr file (memory stream)
rvNdrWriter.StreamMode := smUser;
rvNdrWriter.Stream := FNdrStream;
//execute the report using the NDRWriter. Now the Stream holds the NDR file
rvProject.Execute;
//tells RenderPreview where to display
rvRenderPreview.ScrollBox := sbReportPreview;
//display NDR file from memory stream
rvRenderPreview.Render(FNdrStream);
end;