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.
 

131 lines
3.4 KiB

unit uconfrelBordero;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.DBCtrls, Vcl.StdCtrls, Vcl.ComCtrls,
Data.DB, DateUtils;
type
TconfrelBordero = class(TForm)
dtsBeneficiario: TDataSource;
btn_viewreport: TButton;
gb_data: TGroupBox;
dtp_inicio: TDateTimePicker;
dtp_fim: TDateTimePicker;
Label1: TLabel;
gb_beneficiario: TGroupBox;
dblucb_beneficiario: TDBLookupComboBox;
procedure btn_viewreportClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
private
procedure WMMoving(var Msg: TWMMoving); message WM_MOVING;
{ Private declarations }
public
{ Public declarations }
end;
var
confrelBordero: TconfrelBordero;
implementation
{$R *.dfm}
uses udtmSystem, urelBordero;
// relatório de entrada
procedure TconfrelBordero.btn_viewreportClick(Sender: TObject);
begin
dtmSystem.id_empimport := dblucb_beneficiario.KeyValue;
relBordero := TrelBordero.Create(self);
with relBordero do
begin
with zqryRel.sql do
begin
Clear;
Add('select');
Add('A.id_devedor,');
Add('A.tx_nome as NOME,');
Add('case');
Add('when A.TP_CLIENTE = ''F'' then A.CD_CPF');
Add('when A.TP_CLIENTE = ''J'' then A.CD_CNPJ');
Add('end as TX_DOCUMENTO,');
//Add('A.cd_cpf as CPF,');
Add('A.cd_devedor AS CODIGO,');
Add('B.dt_ENTRADA AS DATA_ENTRADA,');
Add('B.tx_produto AS PRODUTO,');
Add('B.vl_titulo AS VALOR,');
Add('B.dt_vencimento as DATA_VENCIMENTO');
Add('from chg_devedores A');
Add('inner join chg_titulos B');
Add('on (A.id_devedor = B.id_devedor)');
Add('where (B.id_empresa = ' + inttostr(dblucb_beneficiario.KeyValue)
+ ') and');
Add('(CAST(B.dt_entrada AS DATE) >= ' + QuotedStr(FormatDateTime('mm/dd/YYYY',
dtp_inicio.Date)) + ') and');
Add('(CAST(B.dt_entrada AS DATE) <= ' + QuotedStr(FormatDateTime('mm/dd/YYYY',
dtp_fim.Date)) + ')');
Add('order by A.tx_nome');
end;
zqryRel.Open;
frBordero.PreviewModal;
end;
end;
procedure TconfrelBordero.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
confrelBordero := nil;
end;
procedure TconfrelBordero.FormCreate(Sender: TObject);
begin
dtp_inicio.Date := Date;
dtp_fim.Date := Date;
if not dtsBeneficiario.DataSet.Active then
begin
dtsBeneficiario.DataSet.Open;
end;
dblucb_beneficiario.KeyValue := dtsBeneficiario.DataSet.RecNo;
end;
procedure TconfrelBordero.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_ESCAPE then
begin
Key := 0;
Close;
end;
end;
procedure TconfrelBordero.WMMoving(var Msg: TWMMoving);
var
workArea: TRect;
begin
workArea := Screen.WorkareaRect;
with Msg.DragRect^ do
begin
if left < workArea.left then
OffsetRect(Msg.DragRect^, workArea.left - left, 0);
if top < workArea.top then
OffsetRect(Msg.DragRect^, 0, workArea.top - top);
if Right > workArea.Right then
OffsetRect(Msg.DragRect^, workArea.Right - Right, 0);
if Bottom > workArea.Bottom then
OffsetRect(Msg.DragRect^, 0, workArea.Bottom - Bottom);
end;
end;
end.