![]() |
Documentación GVHIDRA 3.1.5
|
Métodos públicos | |
__construct ($nombreListaTpl, $source='', $conexionAlternativa='') | |
getName () | |
setName ($nombre) | |
hayDependencia () | |
setDependence ($listasCamposTpl, $listasCamposBD, $tipoDependencia=0) | |
getConsulta () | |
setConsulta ($cadena) | |
getOrden () | |
setOrden ($cadena) | |
getClass () | |
setClass ($class) | |
hayDSN () | |
getDSN () | |
setDSN ($dsn) | |
getSeleccionado () | |
setSelected ($valor) | |
setMultiple ($multiple) | |
getMultiple () | |
setRadio ($radio) | |
getRadio () | |
setSize ($size) | |
getSize () | |
addOption ($valor, $descripcion) | |
_procesarDefinicion ($nombre) | |
construyeLista ($regFuenteDependencia= '') | |
Campos de datos | |
$_nombre | |
$_consulta | |
$_datosDin | |
$_datosEst | |
$_dependencia | |
$_orden | |
$_seleccionado | |
$_dsn | |
$v_defLista | |
$_seleccionadoDefecto | |
Métodos privados | |
getArrayDependencia () | |
getTipoDependencia () | |
buildByQuery ($regFuenteDependencia) | |
buildByClass ($regFuenteDependencia) | |
Atributos privados | |
$_multiple = false | |
$_radio = false | |
$_size = 1 | |
$_classSource |
Definición en la línea 54 del archivo gvHidraList.php.
__construct | ( | $ | nombreListaTpl, |
$ | source = '' , |
||
$ | conexionAlternativa = '' |
||
) |
Construye una nueva lista
string | $nombreListaTpl | Nombre del campo de la TPl a cincular con la lista |
string | $source | Nombre de la definicin de lista (AppMainWindow) |
string | $conexionAlternativa | DSN alternativo (null si se coge el de la CManejadora) |
Definición en la línea 97 del archivo gvHidraList.php.
{ $this->_datosEst = array(); $this->_seleccionado = ''; $this->setName($nombreListaTpl); if(!empty($source)) { //Cargamos los datos de configuracion de la lista $descSource = $this->_procesarDefinicion($source); //Si la fuente es de DB if(isset($descSource['query'])) { $consulta = $descSource['query']; //Como la consulta nos puede venir con Order By, se lo quitamos. $posOrder = strpos(strtolower($consulta),"order by"); if($posOrder===false){ $this->setConsulta($consulta); $this->setOrden(" ORDER BY 2"); } else { $this->setConsulta(substr($consulta,0,$posOrder)); $this->setOrden(substr ($consulta,$posOrder)); } } //Si la fuente es una clase elseif(isset($descSource['class'])) { $this->setClass($descSource['class']); } } //Ahora no se le puede pasar un array a esta funcin, pero por compatibilidad lo dejamos else { $this->setConsulta (''); $this->setClass(''); } $this->setDSN($conexionAlternativa); }//Fin de constructor
_procesarDefinicion | ( | $ | nombre | ) |
Definición en la línea 340 del archivo gvHidraList.php.
{ $conf = ConfigFramework::getConfig(); $res = $conf->getDefList($nombre); if($res == -1){ throw new Exception("gvHidraList Error: La consulta '$nombre' no est definida en el fichero AppMainWindow.php."); } //Tenemos que indicar de que tipo es y el valor del parametro return $res; }//Fin de _procesarDefinicion
addOption | ( | $ | valor, |
$ | descripcion | ||
) |
Mtodo que aade opciones estticas a una lista.
$valor | indica el valor del option |
$descripcion | indica la descripcion del option |
$posicion | indica la posicion donde se aade la opcin |
Definición en la línea 334 del archivo gvHidraList.php.
{ $nuevaOpcion = array("valor"=>$valor, "descripcion"=>$descripcion); array_push($this->_datosEst, $nuevaOpcion); }
buildByClass | ( | $ | regFuenteDependencia | ) | [private] |
Definición en la línea 433 del archivo gvHidraList.php.
{ //Si la lista es esttica la aadimos directamente a datosPreInsertados //Vamos a comprobar si tiene dependencia //Creamos la instancia de la clase $class = $this->getClass(); if(!class_exists($class)) throw new gvHidraException('Error-List Component:'.$this->getName().': la clase definida como fuente de datos no existe. Revise su definin y su inclusin. Concretamente la clase '.$class); $dependence = array(); if ($this->hayDependencia()) { //Tenemos que ver si el campos del que depende tiene valor $v_Dependencia = $this->getArrayDependencia(); $tipoDependencia = $this->getTipoDependencia(); $valorSeleccionado = ''; foreach($v_Dependencia as $campoDependiente => $campoDependienteBd) { //Si el campo dependiente tiene valor if(is_array($regFuenteDependencia[$campoDependiente])) { $valorSeleccionado = $regFuenteDependencia[$campoDependiente]['seleccionado']; } else { $valorSeleccionado = $regFuenteDependencia[$campoDependiente]; } if(($tipoDependencia==0) OR (!empty($valorSeleccionado))) { $dependence[$campoDependienteBd] = $valorSeleccionado; } $valorSeleccionado = ''; } try { $instance = new $class; if(count($dependence)>0) { $res2= $instance->build($dependence,$tipoDependencia); } else { if($tipoDependencia==1) { $res2= $instance->build($dependence,$tipoDependencia); } else { $res2 = array(); } } } catch(Exception $e){ IgepDebug::setDebug('Error en gvHidraList '.$this->getName().' Mensaje: '.$e->getMessage()); } } else { try { $instance = new $class; $res2= $instance->build(null,null); } catch(Exception $e){ IgepDebug::setDebug('Error en gvHidraList '.$this->getName().' Mensaje: '.$e->getMessage()); } } if (PEAR::isError($res2)) $res2 = array(); return $res2; }
buildByQuery | ( | $ | regFuenteDependencia | ) | [private] |
Definición en la línea 376 del archivo gvHidraList.php.
{ //Si la lista es esttica la aadimos directamente a datosPreInsertados //Comprobamos si tiene conexion especifica o no $conexionParticular = new IgepConexion($this->getDSN()); //Vamos a comprobar si tiene dependencia $strDependencia = ''; if ($this->hayDependencia()) { //Tenemos que ver si el campos del que depende tiene valor $v_Dependencia = $this->getArrayDependencia(); $tipoDependencia = $this->getTipoDependencia(); $valorSeleccionado = ''; foreach($v_Dependencia as $campoDependiente => $campoDependienteBd) { //Si el campo dependiente tiene valor if(is_array($regFuenteDependencia[$campoDependiente])) { $valorSeleccionado = $regFuenteDependencia[$campoDependiente]['seleccionado']; } else { $valorSeleccionado = $regFuenteDependencia[$campoDependiente]; } if(($tipoDependencia==0) OR (!empty($valorSeleccionado))) { if($strDependencia != '') $strDependencia.=' AND '; $strDependencia.= $campoDependienteBd." = '".$valorSeleccionado."'"; } $valorSeleccionado = ''; } if(!empty($strDependencia)) { if((strpos(strtolower($this->getConsulta()),'where')===false)) $strDependencia = ' WHERE '.$strDependencia; else $strDependencia = ' AND '.$strDependencia; $consulta = $this->getConsulta().$strDependencia.$this->getOrden(); $res2 = $conexionParticular->consultar($consulta); } else { if($tipoDependencia==1) { $consulta = $this->getConsulta().$this->getOrden();; $res2 = $conexionParticular->consultar($consulta); } else $res2 = array(); } } else { $consulta = $this->getConsulta().$this->getOrden(); $res2 = $conexionParticular->consultar($consulta); } if (PEAR::isError($res2)) $res2 = array(); return $res2; }
construyeLista | ( | $ | regFuenteDependencia = '' | ) |
Definición en la línea 352 del archivo gvHidraList.php.
{ //Debug:Indicamos que ejecutamos la consulta IgepDebug::setDebug(DEBUG_IGEP,'gvHidraList: Construyendo la lista '.$this->getName()); $res2 = array(); if ($this->getConsulta()!='') { $res2 = $this->buildByQuery($regFuenteDependencia); } elseif ($this->getClass()!='') { $res2 = $this->buildByClass($regFuenteDependencia); } $res2 = array_merge($this->_datosEst, $res2); if (count($res2)==0) $lista_resultanteNuevo = array('seleccionado'=>'', 'lista'=>array()); else $lista_resultanteNuevo = array('seleccionado'=>$this->getSeleccionado(),'lista'=>$res2); return $lista_resultanteNuevo; }
getArrayDependencia | ( | ) | [private] |
Definición en la línea 160 del archivo gvHidraList.php.
{
return ($this->_dependencia);
}
getClass | ( | ) |
Definición en la línea 213 del archivo gvHidraList.php.
{
return ($this->_classSource);
}
getConsulta | ( | ) |
Definición en la línea 197 del archivo gvHidraList.php.
{
return ($this->_consulta);
}
getDSN | ( | ) |
Definición en la línea 233 del archivo gvHidraList.php.
{
return ($this->_dsn);
}
getMultiple | ( | ) |
Devuelve el valor de la propiedad multiple. Esta propiedad indica si la lista es multiple o no.
Definición en la línea 279 del archivo gvHidraList.php.
{
return $this->_multiple;
}
getName | ( | ) |
Definición en la línea 141 del archivo gvHidraList.php.
{ return $this->_nombre; }//Fin de getname
getOrden | ( | ) |
Definición en la línea 205 del archivo gvHidraList.php.
{ return (' '.$this->_orden); }
getRadio | ( | ) |
Devuelve el valor de la propiedad radio. Esta propiedad indica si la lista se representa como radio.
Definición en la línea 300 del archivo gvHidraList.php.
{
return $this->_radio;
}
getSeleccionado | ( | ) |
Definición en la línea 248 del archivo gvHidraList.php.
{
return $this->_seleccionado;
}
getSize | ( | ) |
Devuelve el valor de la propiedad size. Esta propiedad indica los elementos visibles de la lista.
Definición en la línea 321 del archivo gvHidraList.php.
{
return $this->_size;
}
getTipoDependencia | ( | ) | [private] |
Definición en la línea 164 del archivo gvHidraList.php.
{
return ($this->_tipoDependencia);
}
hayDependencia | ( | ) |
Definición en la línea 156 del archivo gvHidraList.php.
{
return (!empty($this->_dependencia));
}
hayDSN | ( | ) |
Definición en la línea 229 del archivo gvHidraList.php.
{
return (!empty($this->_dsn));
}
setClass | ( | $ | class | ) |
Definición en la línea 217 del archivo gvHidraList.php.
{ $this->_classSource = $class; }
setConsulta | ( | $ | cadena | ) |
Definición en la línea 201 del archivo gvHidraList.php.
{ $this->_consulta = $cadena; }
setDependence | ( | $ | listasCamposTpl, |
$ | listasCamposBD, | ||
$ | tipoDependencia = 0 |
||
) |
Mtodo que permite asigar dependencia en una List. Es decir, si tenemos una lista cuyos valores dependen del valor de otros campos, necesitamos indicarlo con este mtodo.
public
array | $listaCamposTpl | Array que contiene la lista de campos de la tpl de los cuales depende la ventana de Seleccin |
array | $listaCamposBd | Array que, indexado en el mismo orden que el anterior, realiza la correspondencia de los campos del array anterior con los de la Base de Datos. |
int | $tipoDependencia | integer indica si es una dependencia fuerte->0 o dbil->1(si no tiene valor el campo dependiente lo ignora). |
Definición en la línea 178 del archivo gvHidraList.php.
{ $dependencia = array(); if((!is_array($listasCamposTpl)) or (!is_array($listasCamposBD)) or (count($listasCamposTpl)!=count($listasCamposBD))) throw new gvHidraException('Error en la introduccin de la dependencia de la lista que actua sobre el campo TPL '.$this->getName().' . Recuerde que debe introducir dos arrays.'); $i=0; for($i=0;$i<count($listasCamposBD);$i++) $dependencia[$listasCamposTpl[$i]] = $listasCamposBD[$i]; $this->_dependencia = $dependencia; $this->_tipoDependencia = $tipoDependencia; }//Fin de setDependence
setDSN | ( | $ | dsn | ) |
Definición en la línea 237 del archivo gvHidraList.php.
{ $this->_dsn = $dsn; }
setMultiple | ( | $ | multiple | ) |
Fija la propiedad multiple a un valor. Esta propiedad indica si la lista es multiple o no.
$multiple | boolean |
Definición en la línea 266 del archivo gvHidraList.php.
{ $this->_multiple = $multiple; //Si no ha fijado size, le damos valor por defecto 5 if($this->_size==1) $this->setSize(5); }
setName | ( | $ | nombre | ) |
Definición en la línea 145 del archivo gvHidraList.php.
{
$this->_nombre = $nombre;
}//Fin de setname
setOrden | ( | $ | cadena | ) |
Definición en la línea 209 del archivo gvHidraList.php.
{ $this->_orden = $cadena; }
setRadio | ( | $ | radio | ) |
Fija la propiedad radion a un valor. Esta propiedad indica si la lista se representa como radios o no.
$radio | boolean |
Definición en la línea 290 del archivo gvHidraList.php.
{ $this->_radio = $radio; }
setSelected | ( | $ | valor | ) |
Definición en la línea 252 del archivo gvHidraList.php.
{ $this->_seleccionado = $valor; }
setSize | ( | $ | size | ) |
Fija la propiedad size. Esta propiedad indica los elementos visibles de la lista.
$size | integer |
Definición en la línea 311 del archivo gvHidraList.php.
{ $this->_size = $size; }
$_classSource [private] |
Definición en la línea 87 del archivo gvHidraList.php.
$_consulta |
Definición en la línea 57 del archivo gvHidraList.php.
$_datosDin |
Definición en la línea 58 del archivo gvHidraList.php.
$_datosEst |
Definición en la línea 59 del archivo gvHidraList.php.
$_dependencia |
Definición en la línea 60 del archivo gvHidraList.php.
$_dsn |
Definición en la línea 63 del archivo gvHidraList.php.
$_multiple = false [private] |
Definición en la línea 73 del archivo gvHidraList.php.
$_nombre |
Definición en la línea 56 del archivo gvHidraList.php.
$_orden |
Definición en la línea 61 del archivo gvHidraList.php.
$_radio = false [private] |
Definición en la línea 79 del archivo gvHidraList.php.
$_seleccionado |
Definición en la línea 62 del archivo gvHidraList.php.
$_seleccionadoDefecto |
Definición en la línea 66 del archivo gvHidraList.php.
$_size = 1 [private] |
Definición en la línea 85 del archivo gvHidraList.php.
$v_defLista |
Definición en la línea 64 del archivo gvHidraList.php.