Ver Mensaje Individual
  #9  
Antiguo 19-01-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
Las ideas son buenas, sin embargo difiero de los dos posts anteriores, de los amigos roman y obiwan en un punto. Siempre es cuestión de gustos, pero yo creo que si una función no tiene un valor lógico que devolver, ni debe devolver 0 (o cualquier otro valor "bandera"), ni mostrar por si sola un mensaje de error, pues eso limita a su usuario final (el programador que la llama).

Lo correcto, desde mi particular punto de vista, es elevar una excepción.

en ese caso, sustituir el ShowMessage de Romàn, por un

raise exception.create(''Error en Mes Seleccionado');

al final de cuentas, si el usuario no maneja la excepción en un bloque try/except, el mismo delphi normalmente mostrará el mensaje de error al usuario, pero la ejecución de la rutina que llamó a nombremes es mucho mas simple, pues simplemente si el mes no es válido, el resto del código despues de la llamada ya no se ejecuta, evitando chequeos (ifs) posteriores, y errores lógicos.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita