Validaciones del Negocio
De CidesaWiki
(17 ediciones intermedias no se muestran.) | |||
Línea 69: | Línea 69: | ||
</pre> | </pre> | ||
- | Cabe destacar que existe un standarizacion acerca de estos código para genera los mensaje que se va a mostrar en la vista: | + | Cabe destacar que existe un standarizacion acerca de estos código para genera los mensaje que se va a mostrar en la vista, dependiendo al modulo que pertenzca: |
- | {| border="1" cellpadding="0" cellspacing="0" width="250" | + | {| border="1" cellpadding="0" cellspacing="0" width="250" align="center" |
+ | |+'''Tabla de Mensaje''' | ||
+ | |- | ||
+ | ! style="background:#efefef;" | Módulo | ||
+ | ! colspan="2" style="background:#ffdead;" | #Error | ||
+ | |- | ||
+ | |style="background:LightYellow" | Generales | ||
+ | | align="center" style="background:LightYellow" |1 - 99 | ||
|- | |- | ||
|Compras | |Compras | ||
- | |100 - 199 | + | |align="center" |100 - 199 |
|- | |- | ||
- | |Bienes | + | |style="background:LightYellow" | Bienes |
- | |200 - 299 | + | | style="background:LightYellow" align="center" |200 - 299 |
|- | |- | ||
|Formulacion | |Formulacion | ||
- | |300 - 399 | + | | align="center" |300 - 399 |
|- | |- | ||
- | |Nomina | + | |style="background:LightYellow" | Nomina |
- | |400 - 499 | + | | style="background:LightYellow" align="center" |400 - 499 |
|- | |- | ||
|Tesoreria | |Tesoreria | ||
- | |500 - 599 | + | | align="center" |500 - 599 |
|- | |- | ||
- | |Contabilidad | + | |style="background:LightYellow"|Contabilidad |
- | |600 - 699 | + | | style="background:LightYellow" align="center" |600 - 699 |
|- | |- | ||
|Hacienda | |Hacienda | ||
- | |700 - 799 | + | |align="center" |700 - 799 |
|- | |- | ||
- | |Credito | + | |style="background:LightYellow"|Credito |
- | |800 - 899 | + | | style="background:LightYellow" align="center" |800 - 899 |
|- | |- | ||
|Ingresos | |Ingresos | ||
- | |900 - 999 | + | |align="center" |900 - 999 |
+ | |- | ||
+ | |style="background:LightYellow"|Obras/Contratos | ||
+ | |style="background:LightYellow" align="center" |1000 - 1099 | ||
+ | |- | ||
+ | |Facturacion | ||
+ | |align="center" |1100 - 1199 | ||
|- | |- | ||
- | | | + | |style="background:LightYellow"|Control de Documentos |
- | | | + | |style="background:LightYellow" align="center" |1200 - 1299 |
|- | |- | ||
|Presupuesto | |Presupuesto | ||
- | | | + | |align="center" |1300 - 1499 |
|} | |} | ||
- | |||
Estos errores se ejecutan cuando la función a la cual se le asigna $coderror devuelve códigos de errores '''self::$coderror=Articulos::validarAlmregart($this->caregart);''', esta linea de código se encuentra en la funcion validateEdit(). Si la función validateEdit() retorna false se ejecuta la función handleErrorEdit() enviando el error a la vista. | Estos errores se ejecutan cuando la función a la cual se le asigna $coderror devuelve códigos de errores '''self::$coderror=Articulos::validarAlmregart($this->caregart);''', esta linea de código se encuentra en la funcion validateEdit(). Si la función validateEdit() retorna false se ejecuta la función handleErrorEdit() enviando el error a la vista. | ||
Última versión de 14:45 25 feb 2009
Para agregar validaciones del Negocio crear una funcion ValidateEdit(Modulo Generados con propel-init-admin) en el Actions.class.php está se ejecutara al mismo tiempo que las otras(al Guardar) y Modificar la función handleErrorEdit. Ejemplo de la forma bieregactinmd.
private static $coderror=-1; public function validateEdit() { $resp=-1; // Se deben llamar a las funciones necesarias para cargar los // datos de la vista que serán usados en las funciones de validación. // Por ejemplo: if($this->getRequest()->getMethod() == sfRequest::POST){ $this->Bnreginm = $this->getCaajuocOrCreate(); // $this->configGrid(); // $grid = Herramientas::CargarDatosGrid($this,$this->obj); // Aqui van los llamados a los métodos de las clases del // negocio para validar los datos. // Los resultados de cada llamado deben ser analizados por ejemplo: //$resp = Bienes::validarBieregactinmd($this->Bnreginm,$grid); $resp = Bienes::validarBieregactinmd($this->Bnreginm); // al final $resp es analizada en base al código que retorna // Todas las funciones de validación y procesos del negocio // deben retornar códigos >= -1. Estos código serám buscados en // el archivo errors.yml en la función handleErrorEdit() if($resp!=-1){ $this->coderror = $resp; return false; } else return true; }else return true; } public function handleErrorEdit() { $this->labels = $this->getLabels(); $this->Bnreginm= $this->getBnreginmOrCreate(); $this->updateBnreginmFromRequest(); if($this->getRequest()->getMethod() == sfRequest::POST) { if($this->coderror!=-1){ $err = Herramientas::obtenerMensajeError($this->coderror); $this->getRequest()->setError('',$err); } } return sfView::SUCCESS; }
Las validaciones del Actions.class.php ultilizan un manejador de errores que se encuentra creado en la carpeta config , el cual se llama errores.yml, el cual contiene los códigos de los errores:
1: cod: 1 msj: Nivel Anterior No Existe 2: cod: 2 msj: El Codigo no puede estar en Blanco ó No puede Contener menos de 4 Carácteres
Cabe destacar que existe un standarizacion acerca de estos código para genera los mensaje que se va a mostrar en la vista, dependiendo al modulo que pertenzca:
Módulo | #Error | |
---|---|---|
Generales | 1 - 99 | |
Compras | 100 - 199 | |
Bienes | 200 - 299 | |
Formulacion | 300 - 399 | |
Nomina | 400 - 499 | |
Tesoreria | 500 - 599 | |
Contabilidad | 600 - 699 | |
Hacienda | 700 - 799 | |
Credito | 800 - 899 | |
Ingresos | 900 - 999 | |
Obras/Contratos | 1000 - 1099 | |
Facturacion | 1100 - 1199 | |
Control de Documentos | 1200 - 1299 | |
Presupuesto | 1300 - 1499 |
Estos errores se ejecutan cuando la función a la cual se le asigna $coderror devuelve códigos de errores self::$coderror=Articulos::validarAlmregart($this->caregart);, esta linea de código se encuentra en la funcion validateEdit(). Si la función validateEdit() retorna false se ejecuta la función handleErrorEdit() enviando el error a la vista.
--Desi 16:34 26 abr 2007 (VET)
--Jlobaton 11:54 16 ago 2007 (VET)