FastReportPrinter
v1.0.0
FastrePortPrinter是用于多线程和非GUI(图形用户界面)环境的快速报告打印库。
它以Delphi语言实现,使用Fluent界面概念来指导库的使用,该库的使用旨在使用Print Spooler在图形用户界面中打印报告。
环境
要使用FastrePortPrinter ,您需要安装快速报告组件。
使用Boss (Delphi的依赖项管理器)可以自动安装库。
boss install github.com/antoniojmsjr/FastReportPrinter
如果选择手动安装,只需在项目>选项>选项> delphi编译器>目标>所有配置>搜索路径中添加以下文件夹。
..FastReportPrinterSource
数据集是图书馆使用的接口,用于通过组件与数据库进行通信:
| 班级 | 成分 |
|---|---|
| 碎片 | 本国的 |
| TFRXDBDATASET | 快速报告 |
为了举例说明库的使用,IBGE的API数据用于报告和打印报告。
打印示例文件:locationsibge.pdf
示例在项目文件夹中可用:
..FastReportPrinterSamples
示例数据库
..FastReportPrinterSamplesDB
示例报告
..FastReportPrinterSamplesReport
例子
uses FRPrinter, FRPrinter.Types; var
lPrinted: Boolean;
begin
// CLASSE DE IMPRESSÃO
try
lPrinted := TFRPrinter.New.
DataSets.
SetDataSet(qryEstadosBrasil, ' EstadosBrasil ' ).
SetDataSet(frxdbMunicipioEstado).
SetDataSet(frxdbMunicipioRegiao).
SetDataSet(qryEstadoRegiao, ' EstadoRegiao ' ).
SetDataSet(qryMunicipios, ' Municipios ' ).
& End .
Print.
SetPrinter( ' Microsoft Print to PDF ' ). // QUANDO NÃO INFORMADO UTILIZA A IMPRESSORA CONFIGURADA NO RELATÓRIO *.fr3
SetFileReport(TUtils.PathAppFileReport). // LOCAL DO RELATÓRIO *.fr3
Report(procedure(pfrxReport: TfrxReport) // CONFIGURAÇÃO DO COMPONENTE DE RELATÓRIO DO FAST REPORT
var
lfrxComponent: TfrxComponent;
lfrxMemoView: TfrxMemoView absolute lfrxComponent;
begin
// CONFIGURAÇÃO DO COMPONENTE
pfrxReport.ReportOptions. Name := ' API de localidades IBGE ' ; // NOME PARA IDENTIFICAÇÃO NA IMPRESSÃO DO RELATÓRIO
pfrxReport.ReportOptions.Author := ' Antônio José Medeiros Schneider ' ;
// PASSAGEM DE PARÂMETRO PARA O RELATÓRIO
lfrxComponent := pfrxReport.FindObject( ' mmoProcess ' );
if Assigned(lfrxComponent) then
begin
lfrxMemoView.Memo.Clear;
lfrxMemoView.Memo.Text := Format( ' Aplicativo de Exemplo: %s ' , [ ' VCL ' ]);
end ;
end ).
Execute; // PROCESSAMENTO DO RELATÓRIO/IMPRESSÃO
except
on E: Exception do
begin
if E is EFRPrinter then
ShowMessage( ' Erro de impressão: ' + E.ToString)
else
ShowMessage( ' Erro de impressão: ' + E.Message);
Exit;
end ;
end ;
if lPrinted then
ShowMessage( ' Impresso ' )
else
ShowMessage( ' Falha de impressão ' );
end ;观察
编译的示例
下载:demo.zip
使用Jmeter对Web应用程序的性能测试:
..FastReportPrinterSamplesJMeter
FastReportPrinter是免费的,开源软件