Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Trucos (https://www.clubdelphi.com/foros/forumdisplay.php?f=52)
-   -   dataFormChecker (https://www.clubdelphi.com/foros/showthread.php?t=80843)

walito 19-10-2007 03:46:15

dataFormChecker
 
Como ya habia comentado anteriormente, vamos a mostrar como funciona esta clase con algunos ejemplos y tambien pondre el codigo a disposicion de todos los interesados.

Vamos al grano, supongamos que tenemos un formulario en el cual tenemos que cargar los siguientes datos:
- Nombre
- Apellido
- Edad
- GastosMensuales

Como vemos Nombre y Apellido son de tipo texto, Edad es un Entero y GastosMensuales es un Float.

Normalmente tendriamos que checkear uno por uno para verificar si no estan cargando un tipo de dato erroneo, donde por lo menos nos tomaria escribir unas 5 o 6 lineas por cada checkeo.

Esta clase propone usarlo de la siguiente manera:

Código Delphi [-]
procedure BtAgregarClick(Sender: TObject);
var
  misdatos: TMyData;
begin
  misdatos := TMyData.Create;
  misdatos.setKeyValue('nombre', EditNombre.Text);
  misdatos.setKeyValue('apellido', EditApellido.Text);
  misdatos.setKeyValue('edad', EditEdad.Text);
  misdatos.setKeyValue('gastosmensuales', EditGastosMensuales.Text);
  misdatos.addRule('nombre', 'Alerta: El nombre es requerido.', 'required');
  misdatos.addRule('nombre', 'Alerta: El nombre es requerido.', 'text');
  misdatos.addRule('apellido', 'Alerta: El apellido es requerido.', 'required');
  misdatos.addRule('apellido', 'Alerta: El apellido es requerido.', 'text');
  misdatos.addRule('edad', 'Alerta: La edad es numerico.', 'int');
  misdatos.addRule('gastosmensuales', 'Alerta: Los gastos son erroneos', 'float');
  misdatos.Free;
end;

En el ejemplo anterior tenemos la configuracion basica como para verificar si los datos ingresados son correctos, y vemos que con pocas lineas ya hemos checkeado los campos de carga.

Despues de esto ustedes tienen 2 formas de obtener los datos:

1) Si seguimos usando esta clase podrian pasar por parametro la instancia de la clase a alguna funcion que ustedes tengan y simplemente obtener los datos asi:

Código Delphi [-]
misdatos.getValue('nombre', 'text');
misdatos.getValue('apellido', 'text');
misdatos.getValue('edad', 'int');
misdatos.getValue('gastosmensuales', 'float', '0.00', '0');

Este metodo retorna String asi que solo basta con aplicar las funciones de conversión. Tambien vemos que el tipo float le podemos especificar como queremos que nos formatee el resultado.

2) La otra es simplemente usando los campos y usandolos como ustedes desee:

Código Delphi [-]
EditNombre.Text
EditApellido.Text
EditEdad.Text
EditGastosMensuales.Text

Espero que puedan probarlo y comentar sus experiencias y asi podamos hacer que este codigo se util apra todo el mundo.
Pueden descargar la version BETA desde este link: http://blog.phpgas.com.ar/datachecker/

Suerte y espero sus comentarios.


La franja horaria es GMT +2. Ahora son las 09:04:49.

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