FastReport - Resetar numero de pagina a cada FP3
Bom dia galera,
Consegui unir vários FP3 e converter num único PDF, porém o numero de pagina em PDF fica progressivo. Como faço para que, no momento que estou unindo os FP3 as variaveis page# e TotalPages# sejam as que de fato estão em cada FP3?
Exemplo:
Primeiro FP3 possui 3 paginas
Segundo FP3 possui 2 paginas
Preciso de um unico PDF de ambos com numero de pagina de 1 a 3 e em seguida de 1 a 2, atualmente esta de 1 a 5.
Consegui unir vários FP3 e converter num único PDF, porém o numero de pagina em PDF fica progressivo. Como faço para que, no momento que estou unindo os FP3 as variaveis page# e TotalPages# sejam as que de fato estão em cada FP3?
Exemplo:
Primeiro FP3 possui 3 paginas
Segundo FP3 possui 2 paginas
Preciso de um unico PDF de ambos com numero de pagina de 1 a 3 e em seguida de 1 a 2, atualmente esta de 1 a 5.
procedure TForm1.Button1Click(Sender: TObject);
begin
UnirLaudo;
end;
procedure TForm1.UnirLaudo;
var
intFound : Integer;
PastaArquivo : string;
MySearch : TSearchRec;
primeiroAnexo : boolean;
begin
primeiroAnexo := True;
PastaArquivo := 'C:\\AstraBPL\\LaudosArquivados\\';
//procura anexos offline em FP3
intFound := System.SysUtils.FindFirst(PastaArquivo+'*.FP3',faAnyFile, MySearch);
if intFound = 0 then begin
while intFound = 0 do begin
if primeiroAnexo then begin
frxLaudos.PrepareReport(True); //True no primeiro pedido para apagar o que tiver antes
frxTemp.PrepareReport(True);
frxLaudos.PreviewPages.LoadFromFile(PastaArquivo+MySearch.Name);
primeiroAnexo := False;
end else begin
frxLaudos.PrepareReport(False);
frxTemp.PreviewPages.LoadFromFile(PastaArquivo+MySearch.Name);
frxLaudos.PreviewPages.AddFrom(frxTemp);
end;
intFound := System.SysUtils.FindNext(MySearch);
end;
end;
FindClose(MySearch);
//Exporta para o Disco, num unico PDF, todos os anexos FP3 que foram unidos
frxPDFExport1.EmbeddedFonts:=StrToBool('True');
frxPDFExport1.PdfA:=StrToBool('True');
frxPDFExport1.DefaultPath:='C:\\AstraBPL\\LaudosArquivados';
frxPDFExport1.FileName:='Laudos.pdf';
frxLaudos.PreviewPages.Export(frxPDFExport1); //Salva laudos num unico PDF (será excluido ao fim da sessão)
end;
Astralab
Curtidas 0