PDA

Ver la Versión Completa : dataFormChecker


walito
19-10-2007, 03:46:15
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:


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:


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:


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.