Alessandra,

A função now() retorna sempre um float, não deve ser comparado com igualdade, 
pois vc nunca terá dois numeros iguais, pois está embutido data e hora.
Ou vc separa com decodedate(dia,mes,ano) - Veja a função certinha - ou faz como 
eu. (verifico se a datavencimento é menor que now()) pois o ´prazo só está 
vencido no dia seguinte ao vencimento.

Voce tbem pode truncar a parte decimal e atribuir a parte inteira a um integer, 
tanto sua data quanto o result da função now() aí sim comparar. 

lembre-se, mesmo que vc tenha só a data uma variavel datetime sempre gerará um 
float, se olhar o resultado verá que lá no fim da mantissa sempre terá alguma 
coisa  por ex. 23450,00000000000121,  dependendo do hardware e da precisão.

se quizer questionar é só me enviar email em pvt.

espero ter ajudado.


  ----- Original Message ----- 
  From: alessandra porto 
  To: lista-del...@yahoogrupos.com.br ; delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, February 16, 2010 11:32 PM
  Subject: [delphi-br] somar numero inteiro a uma data ajuda


    
  Amigos 
  Tentei de varias formas mas  a  coisa da erro

  na tabela os campos 

  DTA_PEDIDO  = date;
  NDIAS            = Integer;

  a ideia  e  somar um certo numero de dias a uma data e comparar com o dia 
atual
  e jogar o resultado ao um campo calculado (VENCIDO)

  procedure TDm.Cds_FinanceiroCalcFields(DataSet: TDataSet);
  var
    DATA  : Tdate;
    NDIAS : integer;
   
  begin

     DATA  :=strtodate(Cds_FinanceiroDTA_PEDIDO.AsString);
     NDIAS :=Cds_FinanceiroNDIAS.AsInteger;

     if (DATA + NDIAS)  = now then
        begin
            Cds_FinanceiroVENCIDO.AsString :=datetostr(now);
        end;

   Já fiz mil e uma tentativas e nada 

  já usei       Cds_FinanceiroDTA_PEDIDO.AsDateTime   direto na  variavel DATA 
e nada

  Deve ser simples a solução mas  eu não consegui achar

  Agradeço aos amigos que puderem ajudar

  __________________________________________________________
  Veja quais são os assuntos do momento no Yahoo! +Buscados
  http://br.maisbuscados.yahoo.com

  [As partes desta mensagem que não continham texto foram removidas]



  

[As partes desta mensagem que não continham texto foram removidas]

Responder a