Grid y el Catálogo V2
De CidesaWiki
(5 ediciones intermedias no se muestran.) | |||
Línea 5: | Línea 5: | ||
<pre> | <pre> | ||
- | $columna->setCatalogo($clase,$form,$objs,$metodo) | + | $columna->setCatalogo($clase,$form,$objs,$metodo,$param); |
</pre> | </pre> | ||
Línea 12: | Línea 12: | ||
* '''$form:''' Esta variable contiene el nombre del formulario (FORM) donde se encuentran los objetos a actualizar. | * '''$form:''' Esta variable contiene el nombre del formulario (FORM) donde se encuentran los objetos a actualizar. | ||
* '''$objs:''' Es una arreglo con los campos a actualizar. Aqui hay uno de los cambios, el arreglo debe ser de la siguiente forma: | * '''$objs:''' Es una arreglo con los campos a actualizar. Aqui hay uno de los cambios, el arreglo debe ser de la siguiente forma: | ||
+ | * '''$param:''' | ||
<pre> | <pre> | ||
$objs = array( 'campo1' => 2, 'campo2' => 3, 'campoN' => COLUMNA ) | $objs = array( 'campo1' => 2, 'campo2' => 3, 'campoN' => COLUMNA ) | ||
+ | $params = array( 'param1' => "'+$('forencpryaccespmet_codaccesp').value+'")); | ||
+ | |||
</pre> | </pre> | ||
Línea 21: | Línea 24: | ||
De esta nomenclatura tenemos lo siguiente: | De esta nomenclatura tenemos lo siguiente: | ||
- | Cada uno de los keys de los registros del arreglo identifica el campo en la tabla $clase que será llamado para obtener datos y colocarlos en el campo del valor del registros, por ejemplo, en la declaración anterior se llamará al campo "campo1" de la tabla $clase y se colocará en la columna 2 de la fila del grid actual. | + | Cada uno de los keys de los registros del arreglo identifica el campo en la tabla '''$clase''' que será llamado para obtener datos y colocarlos en el campo del valor del registros, por ejemplo, en la declaración anterior se llamará al campo "campo1" de la tabla $clase y se colocará en la columna 2 de la fila del grid actual. |
* '''$metodo:''' es una variable con el nombre de la función que será usada para filtrar los datos a mostrar en el grid. Por ejemplo si yo quiero crear un criterio de selección en el catálogo, se debe crear una función dentro de la clase llamado "Tabla_Formulario", y este nombre debe ser pasado en la variable para que el catálogo lo llame y se cree el criterio de selección que necesitamos. | * '''$metodo:''' es una variable con el nombre de la función que será usada para filtrar los datos a mostrar en el grid. Por ejemplo si yo quiero crear un criterio de selección en el catálogo, se debe crear una función dentro de la clase llamado "Tabla_Formulario", y este nombre debe ser pasado en la variable para que el catálogo lo llame y se cree el criterio de selección que necesitamos. | ||
Línea 29: | Línea 32: | ||
<pre> | <pre> | ||
- | public function | + | public function Fordefpryaccmet_Forpoa($param) |
{ | { | ||
- | |||
- | |||
- | |||
// la variable c guarda el criterio de busqueda que será usado por el pager para mostrar los datos. | // la variable c guarda el criterio de busqueda que será usado por el pager para mostrar los datos. | ||
- | $this->c = new Criteria(); | + | $this->c = new Criteria(); |
+ | $this->c->add(FordefpryaccmetPeer::CODPRO,$param[0]); | ||
+ | $this->c->add(FordefpryaccmetPeer::CODACCESP,$param[1]); | ||
+ | $this->c->addAscendingOrderByColumn(FordefpryaccmetPeer::CODACCESP); | ||
+ | |||
+ | // La variable columnas contiene las columnas que queremos sean mostradas en el grid | ||
+ | $this->columnas = array(FordefpryaccmetPeer::CODMET => 'Codigo', FordefpryaccmetPeer::DESMET => 'Meta'); | ||
} | } | ||
Última versión de 22:58 29 oct 2007
EL catálogo V2 tiene compatibilidad con la nomenclatura del anterior dentro del grid (para objetos fuera del grid no tiene compatibilidad).Por ejemplo, para configurar el catálogo dentro del grid, se puede hacer como anteriormente se hacía, pero se le agregó la funcionalidad de que se indicara de que campo de la tabla configurada para el catálogo se quiere traer información. Para objetos fuera del grid se debe cambiar la configuración del llamado al catálogo.
Para usarlo en el grid se hace de la misma forma que anteriormente se hacía, pero se debe agregar la información de los campos a traer del catálogo:
$columna->setCatalogo($clase,$form,$objs,$metodo,$param);
- $clase: Esta variable contiene el nombre de la clase a partir de la cual se generará el catálogo.
- $form: Esta variable contiene el nombre del formulario (FORM) donde se encuentran los objetos a actualizar.
- $objs: Es una arreglo con los campos a actualizar. Aqui hay uno de los cambios, el arreglo debe ser de la siguiente forma:
- $param:
$objs = array( 'campo1' => 2, 'campo2' => 3, 'campoN' => COLUMNA ) $params = array( 'param1' => "'+$('forencpryaccespmet_codaccesp').value+'"));
De esta nomenclatura tenemos lo siguiente:
Cada uno de los keys de los registros del arreglo identifica el campo en la tabla $clase que será llamado para obtener datos y colocarlos en el campo del valor del registros, por ejemplo, en la declaración anterior se llamará al campo "campo1" de la tabla $clase y se colocará en la columna 2 de la fila del grid actual.
- $metodo: es una variable con el nombre de la función que será usada para filtrar los datos a mostrar en el grid. Por ejemplo si yo quiero crear un criterio de selección en el catálogo, se debe crear una función dentro de la clase llamado "Tabla_Formulario", y este nombre debe ser pasado en la variable para que el catálogo lo llame y se cree el criterio de selección que necesitamos.
un ejemplo de la estructura de esta función sería:
public function Fordefpryaccmet_Forpoa($param) { // la variable c guarda el criterio de busqueda que será usado por el pager para mostrar los datos. $this->c = new Criteria(); $this->c->add(FordefpryaccmetPeer::CODPRO,$param[0]); $this->c->add(FordefpryaccmetPeer::CODACCESP,$param[1]); $this->c->addAscendingOrderByColumn(FordefpryaccmetPeer::CODACCESP); // La variable columnas contiene las columnas que queremos sean mostradas en el grid $this->columnas = array(FordefpryaccmetPeer::CODMET => 'Codigo', FordefpryaccmetPeer::DESMET => 'Meta'); }
- Listo......
Luelher