Popin 0 Denunciar post Postado Setembro 7, 2010 Ola...estou fazendo uma validação da seguinte forma: preciso verificar se a data que esta sendo cadastrada não é maior ou igual a atual. pois bem, eu fiz a verificação assim: if (DBEdit9.Text > DateToStr(date)) or (DBEdit9.Text = DateToStr(date)) then begin MessageDLG('Data maior ou igual a atual!',mtInformation,[mbok],0); end Porém se o dia for maior que o atual e o mes ou ano não, ele ja diz que a data é maior que a atual. o que tenho que fazer para ficar correto? Compartilhar este post Link para o post Compartilhar em outros sites
Prog 183 Denunciar post Postado Setembro 7, 2010 Para comparar estas datas você não pode convertê-la para TEXTO e fazer a comparação. O processo deve ser invertido, pegue o TEXTO e converta para DATA, daí faça a comparação. Compartilhar este post Link para o post Compartilhar em outros sites
Popin 0 Denunciar post Postado Setembro 7, 2010 Ou vlw cara , deu certo, foi um erro grosseiro meu de logica... obrigado Ou vlw cara , deu certo, foi um erro grosseiro meu de logica...obrigado beleza a primeira parte que é de fazer a comparação deu certo, mas agora eu preciso tratar a questão do user digitar 33/33/3333 por exemplo, pois ai o delphi me da um erro quando tento tirar o focu do campo dizendo que o formato é invalido. Como eu faço para tratar o mesmo e tbm se eu não cancelar ou digitar um formato correto eu nao consigo mais sair do campo. Compartilhar este post Link para o post Compartilhar em outros sites