You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
182 lines
4.6 KiB
182 lines
4.6 KiB
unit urelBordero;
|
|
|
|
interface
|
|
|
|
uses
|
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
|
|
System.Classes, Vcl.Graphics,
|
|
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, RLReport, RLFilters, RLPDFFilter,
|
|
Data.DB, ZAbstractRODataset, ZAbstractDataset, ZDataset;
|
|
|
|
type
|
|
TrelBordero = class(TForm)
|
|
frBordero: TRLReport;
|
|
frbnd_header: TRLBand;
|
|
frbnd_footer: TRLBand;
|
|
frpnl_logo: TRLPanel;
|
|
frdbimg_logo: TRLDBImage;
|
|
frfilterpdf: TRLPDFFilter;
|
|
dtsEmpresa: TDataSource;
|
|
zqryRel: TZQuery;
|
|
dtsQry: TDataSource;
|
|
zqryRelNOME: TWideStringField;
|
|
zqryRelCODIGO: TWideStringField;
|
|
zqryRelPRODUTO: TWideStringField;
|
|
zqryRelVALOR: TFloatField;
|
|
zqryRelID_DEVEDOR: TIntegerField;
|
|
frlbl_titulorel: TRLLabel;
|
|
frbnd_dados: TRLBand;
|
|
frdblbl_data: TRLDBText;
|
|
frdblbl_titulo: TRLDBText;
|
|
frdblbl_valor: TRLDBText;
|
|
frbnd_footerrel: TRLBand;
|
|
frdbresult_sumvalor: TRLDBResult;
|
|
frdblbl_codigo: TRLDBText;
|
|
RLSystemInfo2: TRLSystemInfo;
|
|
RLSystemInfo1: TRLSystemInfo;
|
|
frlbl_empresanome: TRLLabel;
|
|
zqryRelDATA_VENCIMENTO: TDateTimeField;
|
|
RLDBText1: TRLDBText;
|
|
frbnd_columnheader: TRLBand;
|
|
RLLabel2: TRLLabel;
|
|
RLLabel3: TRLLabel;
|
|
RLLabel4: TRLLabel;
|
|
RLLabel5: TRLLabel;
|
|
RLLabel6: TRLLabel;
|
|
RLLabel7: TRLLabel;
|
|
RLDBText2: TRLDBText;
|
|
zqryRelTX_DOCUMENTO: TWideStringField;
|
|
zqryRelDATA_ENTRADA: TDateTimeField;
|
|
frdblbl_usuario: TRLDBText;
|
|
procedure frBorderoBeforePrint(Sender: TObject; var PrintIt: Boolean);
|
|
procedure frBorderoAfterPrint(Sender: TObject);
|
|
procedure frdblbl_usuarioBeforePrint(Sender: TObject; var AText: string;
|
|
var PrintIt: Boolean);
|
|
private
|
|
procedure SalvarRelPDF;
|
|
{ Private declarations }
|
|
public
|
|
{ Public declarations }
|
|
end;
|
|
|
|
var
|
|
relBordero: TrelBordero;
|
|
|
|
meses: array [1 .. 12] of string = (
|
|
'JANEIRO',
|
|
'FEVEREIRO',
|
|
'MARCO',
|
|
'ABRIL',
|
|
'MAIO',
|
|
'JUNHO',
|
|
'JULHO',
|
|
'AGOSTO',
|
|
'SETEMBRO',
|
|
'OUTUBRO',
|
|
'NOVEMBRO',
|
|
'DEZEMBRO'
|
|
);
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
uses udtmSystem;
|
|
|
|
procedure TrelBordero.frBorderoAfterPrint(Sender: TObject);
|
|
begin
|
|
SalvarRelPDF;
|
|
end;
|
|
|
|
procedure TrelBordero.frBorderoBeforePrint(Sender: TObject;
|
|
var PrintIt: Boolean);
|
|
begin
|
|
if not dtsEmpresa.DataSet.Active then
|
|
begin
|
|
dtsEmpresa.DataSet.Open;
|
|
end;
|
|
if not dtmSystem.tblCHGEmpresa.Active then
|
|
begin
|
|
dtmSystem.tblCHGEmpresa.Open;
|
|
end;
|
|
if frdbimg_logo.Picture.Height > frdbimg_logo.Picture.Width then
|
|
begin
|
|
frdbimg_logo.Height := 170;
|
|
frdbimg_logo.Width := 133;
|
|
end;
|
|
if frdbimg_logo.Picture.Height < frdbimg_logo.Picture.Width then
|
|
begin
|
|
frdbimg_logo.Height := 133;
|
|
frdbimg_logo.Width := 170;
|
|
end;
|
|
if frdbimg_logo.Picture.Height = frdbimg_logo.Picture.Width then
|
|
begin
|
|
frdbimg_logo.Height := 133;
|
|
frdbimg_logo.Width := 133;
|
|
end;
|
|
dtmSystem.tblCHGEmpresa.Locate('ID_EMPRESA', dtmSystem.id_empimport, []);
|
|
frlbl_empresanome.Caption :=
|
|
UpperCase(dtmSystem.tblCHGEmpresaTX_NOME.AsString);
|
|
end;
|
|
|
|
procedure TrelBordero.frdblbl_usuarioBeforePrint(Sender: TObject;
|
|
var AText: string; var PrintIt: Boolean);
|
|
begin
|
|
if not dtmSystem.tblUsuariosConsulta.Active then
|
|
begin
|
|
dtmSystem.tblUsuariosConsulta.Open;
|
|
end;
|
|
dtmSystem.tblUsuariosConsulta.Locate('ID_USUARIO', dtmSystem.id_usuario,[]);
|
|
frdblbl_usuario.Caption := dtmSystem.tblUsuariosConsultaTX_NOME.AsString;
|
|
end;
|
|
|
|
procedure TrelBordero.SalvarRelPDF;
|
|
var
|
|
path, file_name: string;
|
|
Fmt: TFormatSettings;
|
|
i: Integer;
|
|
begin
|
|
Fmt := TFormatSettings.Create;
|
|
for i := 0 to High(meses) do
|
|
begin
|
|
Fmt.LongMonthNames[i] := meses[i];
|
|
end;
|
|
// path := ExtractFilePath(Application.ExeName) + 'RELATORIOS';
|
|
path := dtmSystem.path_executavel + '\RELATORIOS';
|
|
if not DirectoryExists(path) then
|
|
begin
|
|
ForceDirectories(path);
|
|
end;
|
|
path := path + '\ENTRADA';
|
|
if not DirectoryExists(path) then
|
|
begin
|
|
ForceDirectories(path);
|
|
end;
|
|
path := path + '\' + dtmSystem.tblCHGEmpresaTX_NOME.AsString;
|
|
if not DirectoryExists(path) then
|
|
begin
|
|
ForceDirectories(path);
|
|
end;
|
|
path := TrimRight(path);
|
|
path := path + '\' + FormatDateTime('YYYY', Date);
|
|
if not DirectoryExists(path) then
|
|
begin
|
|
ForceDirectories(path);
|
|
end;
|
|
path := path + '\' + FormatDateTime('mmmm', Date, Fmt);
|
|
if not DirectoryExists(path) then
|
|
begin
|
|
ForceDirectories(path);
|
|
end;
|
|
path := path + '\' + FormatDateTime('dd', Date);
|
|
if not DirectoryExists(path) then
|
|
begin
|
|
ForceDirectories(path);
|
|
end;
|
|
file_name := path + '\RELATORIO_ENTRADA-' + FormatDateTime('HH-mm',
|
|
Time) + '.pdf';
|
|
frfilterpdf.FileName := file_name;
|
|
frBordero.SaveToFile(file_name);
|
|
end;
|
|
|
|
end.
|