Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-07-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
De todas las respuestas dadas, la que más me gusta es la de Mick, de hecho, yo haría algo así:
Código Delphi [-]
function fechasValidas: Boolean;
var
 creacion, aprobacion, emision_ant, emision_f: TDateTime;
begin
    creacion   := StrToDateDef(fecha_creacion.text       ,MaxDouble);
    aprobacion := StrToDateDef(fecha_aprovacion.text    ,MaxDouble);
    emision_ant:= StrToDateDef(fecha_emision_f_ant.text,MaxDouble);
    emision_f  := StrToDateDef(fecha_emision_f.text      ,MaxDouble);

    Result := aprobacion <> maxdouble;
    result := result and creacion <= aprobacion;

    if emision_ant <> maxdouble then
    begin

      result := result and aprobacion <= emision_ant;
      if emision_f <> maxdouble then
        result := result and emision_ant <= emision_f
    end;
    else
    begin
      result := result and creacion <= aprobacion;
      if emision_f <> maxdouble then
        result := result and aprobacion <= emision_F
    end;

end;
Si delphi tiene desactivada la directiva "Complete Boolean evaluation" (por defecto creo que sí en Tools --> enviroment), las comparaciones serían tremendamente efectivas.

El punto es usar Result una y otra vez y siempre como primera condición de comparación, si ya es false, Delphi detecta que está unida la comparación con un "and" y no evalúa la condición de la derecha del "and", directamente devuelve falso.

Creo que las comparaciones están correctas.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 21-07-2006 a las 10:31:45.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Optimizar con Case XXX of TIKIMORE Varios 9 10-07-2010 17:21:20
comparación de fechas Nelly Varios 2 27-10-2005 17:30:42
Comparación de Fechas sierraja Varios 5 19-06-2005 06:56:20
Optimizar Vistas repo Firebird e Interbase 1 02-03-2005 18:13:43
Optimizar Paradox en red Sick boy Conexión con bases de datos 0 26-02-2005 13:31:48


La franja horaria es GMT +2. Ahora son las 20:25:30.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi