DELPHI: Diferença entre datas com atualização
Boa tarde Pessoal!
Preciso de uma ajudinha de vocês.
Tenho uma pequena aplicação com banco em access e quero fazer uma comparação entre a data atual com a data de registro, ou seja, data de vencimento - data atual e o resultado exibir em algum edit OU dbedit , se possível todas as fezes que entrar no sistema a data se atualiza de forma automática.
Exemplo:
data atual: 11/11/2016
data de vencimento: 11/11/2017
Dias: 365
Caso o acesso seja feito no sistema no dia seguinte já aparecer de forma atualizada para 364 dias .
Se alguém me ajudar fico grato.
Preciso de uma ajudinha de vocês.
Tenho uma pequena aplicação com banco em access e quero fazer uma comparação entre a data atual com a data de registro, ou seja, data de vencimento - data atual e o resultado exibir em algum edit OU dbedit , se possível todas as fezes que entrar no sistema a data se atualiza de forma automática.
Exemplo:
data atual: 11/11/2016
data de vencimento: 11/11/2017
Dias: 365
Caso o acesso seja feito no sistema no dia seguinte já aparecer de forma atualizada para 364 dias .
Se alguém me ajudar fico grato.
Mailson Janoca
Curtidas 0
Respostas
Huidemar Costa
11/11/2016
Veja se a function DaysBetween atende sua necessidade,
a declação dela é a seguinte
Adicione na uses-> DateUtils
a declação dela é a seguinte
function DaysBetween ( const ToDate, FromDate : TDateTime ) : Integer;
Adicione na uses-> DateUtils
GOSTEI 0
Mailson Janoca
11/11/2016
E como eu faço para pegar a data atual e comparar com a data do vencimento?
GOSTEI 0
Huidemar Costa
11/11/2016
A function Date retorna a data atual, aí você poderia fazer mais ou menos assim:
obs: não testei o código mas a ideia é essa.
var
Dias: integer;
DataVencimento: TDate;
begin
DataVencimento := StrToDate('01/01/2018'); // -> aqui você passa a data de vencimento que vc tem armazenado, eu passei fixo, mas vc terá ela em algum lugar, uma TQuery, TTable, ou seja, DataVencimento := qry.fieldbyname('DataVencimento').asdate
Dias := DaysBetween(Date, DataVencimento);
end;
obs: não testei o código mas a ideia é essa.
GOSTEI 0
Mailson Janoca
11/11/2016
Vou testar !!! obrigado!!!!!
GOSTEI 0