Validaciones del Negocio
De CidesaWiki
(New page: 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 Gua...) |
|||
| (34 ediciones intermedias no se muestran.) | |||
| Línea 1: | Línea 1: | ||
| - | 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 | + | 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. |
<pre> | <pre> | ||
private static $coderror=-1; | private static $coderror=-1; | ||
public function validateEdit() | 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() | 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; | |
| - | + | ||
| - | + | } | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
</pre> | </pre> | ||
| - | 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 | + | 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: |
<pre> | <pre> | ||
1: | 1: | ||
| Línea 45: | 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, dependiendo al modulo que pertenzca: | ||
| + | {| 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 | ||
| + | |align="center" |100 - 199 | ||
| + | |- | ||
| + | |style="background:LightYellow" | Bienes | ||
| + | | style="background:LightYellow" align="center" |200 - 299 | ||
| + | |- | ||
| + | |Formulacion | ||
| + | | align="center" |300 - 399 | ||
| + | |- | ||
| + | |style="background:LightYellow" | Nomina | ||
| + | | style="background:LightYellow" align="center" |400 - 499 | ||
| + | |- | ||
| + | |Tesoreria | ||
| + | | align="center" |500 - 599 | ||
| + | |- | ||
| + | |style="background:LightYellow"|Contabilidad | ||
| + | | style="background:LightYellow" align="center" |600 - 699 | ||
| + | |- | ||
| + | |Hacienda | ||
| + | |align="center" |700 - 799 | ||
| + | |- | ||
| + | |style="background:LightYellow"|Credito | ||
| + | | style="background:LightYellow" align="center" |800 - 899 | ||
| + | |- | ||
| + | |Ingresos | ||
| + | |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 | ||
| + | |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. | ||
| + | |||
| + | |||
| + | --[[Usuario:Desi|Desi]] 16:34 26 abr 2007 (VET) | ||
| + | --[[Usuario:Jlobaton|Jlobaton]] 11:54 16 ago 2007 (VET) | ||
Ú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)