Meu caro já fiz isso porém o projeto de exemplo trabalha com o Rave e não tenho ele instalado no meu Delphi.
Preciso utilizar com o Fast Report ou com o Fortes Report.
Obrigado.
unit fXMLtoPDF;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, ACBrNFeDANFEClass, ACBrNFeDANFEFR,
ACBrNFe, Vcl.ExtCtrls, Vcl.StdCtrls, Vcl.Buttons, ACBrBase, ACBrEnterTab,
ACBrCTeDACTEClass, ACBrCTeDACTEFR, ACBrCTe;
type
TfrmXMLtoPDF = class(TForm)
OpenDialog1: TOpenDialog;
ACBrNFe1: TACBrNFe;
ACBrNFeDANFEFR1: TACBrNFeDANFEFR;
Label1: TLabel;
Edit1: TEdit;
SpeedButton1: TSpeedButton;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Panel1: TPanel;
GroupBox1: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
ACBrEnterTab1: TACBrEnterTab;
ACBrCTe1: TACBrCTe;
ACBrCTeDACTEFR1: TACBrCTeDACTEFR;
procedure SpeedButton1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmXMLtoPDF: TfrmXMLtoPDF;
implementation
{$R *.dfm}
procedure TfrmXMLtoPDF.BitBtn1Click(Sender: TObject);
begin
ACBrNFe1.NotasFiscais.ImprimirPDF;
end;
procedure TfrmXMLtoPDF.BitBtn2Click(Sender: TObject);
begin
Application.Terminate;
end;
procedure TfrmXMLtoPDF.FormCreate(Sender: TObject);
begin
OpenDialog1.Title := 'Selecione a NFE';
OpenDialog1.DefaultExt := '*-nfe.XML';
OpenDialog1.Filter := 'Arquivos NFE (*.XML)|*.XML|Arquivos XML (*.XML)|*.XML|Todos os Arquivos (*.*)|*.*';
OpenDialog1.InitialDir := 'C:\';
end;
procedure TfrmXMLtoPDF.SpeedButton1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
Edit1.Text := OpenDialog1.FileName;
ACBrNFe1.NotasFiscais.Clear;
ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName);
end;
end;
end.