Dias de Atraso! Ajuda

09/11/2021

0

Olá, alguém pede me mostrar como conseguir dias de Atraso de uma conta! Se está paga mostrar quantos dias de Atraso, se aberta mostrar quantos dias também.
Upmilk

Upmilk

Responder

Post mais votado

09/11/2021

var
  vencimento, pagamento: TDate;
  nDiasAtraso: extended;
begin
  vencimento := Trunc(ClientDataSet1.FieldByName('vencimento').AsDateTime);
  pagamento := Trunc(ClientDataSet1.FieldByName('pagamento').AsDateTime);

  if pagamento = 0 then // se não há data de pagamento, assume a data atual
    pagamento := System.SysUtils.Date;

  nDiasAtraso := System.Math.Max(pagamento - vencimento, 0);

  ShowMessage(nDiasAtraso.ToString);
end;

Emerson Nascimento

Emerson Nascimento
Responder

Mais Posts

09/11/2021

Upmilk

var
  vencimento, pagamento: TDate;
  nDiasAtraso: extended;
begin
  vencimento := Trunc(ClientDataSet1.FieldByName('vencimento').AsDateTime);
  pagamento := Trunc(ClientDataSet1.FieldByName('pagamento').AsDateTime);

  if pagamento = 0 then // se não há data de pagamento, assume a data atual
    pagamento := System.SysUtils.Date;

  nDiasAtraso := System.Math.Max(pagamento - vencimento, 0);

  ShowMessage(nDiasAtraso.ToString);
end;




Show! procurei muito por isso, eu queria mais uma ajuda sua para imprimir nDiasAtraso no FastReport! com esse código eu consegui usando um variável, mais mostrou mesma data para todos os registros.
sou iniciante, não sei como fazer, tenho um campo na tabela DIFE_DATA mais não esta preenchido!
Responder

09/11/2021

Emerson Nascimento

você pode trazer essa conta numa instrução SQL, porque é dinâmica, não dá pra guardar num campo, principalmente se o título estiver em aberto, porque a cada dia que passa a informação é diferente.

Responder

09/11/2021

Emerson Nascimento

ou ainda criar um campo calculado pra fazer isso em tempo-real.
Responder

12/11/2021

Upmilk

ou ainda criar um campo calculado pra fazer isso em tempo-real.

Boa noite
Não estou conseguindo, queria mais uma ajuda sua
estou com esse codigo
with FDQuery_Padrao do begin
FDQuery_Padrao.Close;
FDQuery1.SQL.Add('');
FDQuery1.Params.Clear;
FDQuery1.SQL.Clear;
FDQuery1.SQL.Add('SELECT DATA_CADASTRO_SAIDA, DATA_ENTRADA FROM MOVIMENTACAO ');
FDQuery1.SQL.Add('WHERE DATA_CADASTRO_SAIDA LIKE :PDATASAIDA');
FDQuery1.SQL.Add('WHERE DATA_ENTRADA LIKE :PDATAENTRADA');
FDQuery_Padrao.Open;

vencimento := Trunc(FDQuery1.ParamByName
('PDATASAIDA').AsDateTime);
pagamento := Trunc(FDQuery1.ParamByName('PDATAENTRADA')
.AsDateTime);

if pagamento = 0 then // se não há data de pagamento, assume a data atual
pagamento := System.SysUtils.Date;
nDiasAtraso := System.Math.Max(pagamento - vencimento, 0);


// -- Imprimir Variavel no FastReport-------------
pFrxReport.Variables['NovaData'] := (nDiasAtraso);
END;
end;
Responder

20/11/2021

Emerson Nascimento

conseguiu resolver?
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar