[SOLUCIONADO]Seteo de ef combo en un filtro

Hola.
Estoy teniendo problemas al querer dejar seleccionado en un combo que se carga por una clase PHP, una de las opciones precargadas anteriormente en el combo.
Lo intento con la opción
$this->dep(‘filtro’)->columna(‘ug’)->set_estado($seleccion);

o se debería hacer por javascript ??

Salu2

Hola Sonia,

contame un poco mas porque no termino de hacerme una idea de que queres lograr.
El estado de la columna se deberia cargar automaticamente cuando se pasa por el metodo conf_ correspondiente al filtro y vos haces el set_datos sobre el componente.
Es un valor que ya se conoce en el servidor antes de enviarlo al cliente.

Tene en cuenta sin embargo, que debido al formato de las columnas del filtro, ademas de proporcionar un valor… tenes que proporcionar una condicion para la misma, no es un ef comun en ese aspecto. Quizas ahi pueda estar el inconveniente.

Saludos

El combo lo cargo con una función desde las propiedades del combo con una consulta PHP. Esta consulta dice:

$sql="select trim(el.codigo) as nro, el.codigo || '-' || el.nombre as desc 
    from sau_pd_ug_configuracion con, sau_np_elementos el
    where con.valor = trim(to_char(el.elemento,'99999999999999')) 
    and con.id_unidad_gestion= $gestion and el.componente='PR'";			
$resultado=consultar_fuente($sql);
return $resultado[0];

En cuanto al conf del filtro, lo tengo asi:

$this->dep(‘filtro’)->columna(‘ug’)->borrar_condicion(‘es_distinto_de’);
$this->dep(‘filtro’)->columna(‘ug’)->borrar_condicion(‘termina_con’);
$this->dep(‘filtro’)->columna(‘ug’)->borrar_condicion(‘comienza_con’);
$this->dep(‘filtro’)->columna(‘ug’)->borrar_condicion(‘no_contiene’);
$this->dep(‘filtro’)->columna(‘ug’)->borrar_condicion(‘contiene’);

if (!isset($this->s__filtro)) 		
	{
	 unset($_SESSION["usuario"]); 
	 unset($_SESSION["UGestion"]); 
	 unset($_SESSION["programa"]);
	 //saco número de gestion del usuario que entro
	 $usuario = toba::usuario()->get_id();
	 $UGestion = consultas_funciones::unidad_gestion($usuario);
           $_SESSION["usuario"] = $usuario;
	 $_SESSION["UGestion"] = $UGestion; 	

	 if(isset($_SESSION["UGestion"]))
	 {
		//hago que se cargue combo con programa de la U.Gtion que esta entrando

		$programa = consultas_funciones::get_uni_gestion($_SESSION["UGestion"]);
		//ahora seteo el combo
		ei_arbol($programa);
		$this->dep('filtro')->columna('ug')->set_estado($programa['nro']);
		
	 }

}
$filtro->set_datos($this->s__filtro);
}

la funcion get_uni_gestion es la misma que llamo en las propiedades del combo.

Salu2

Hola Sonia,

yo lo que digo, es que en esta parte tenes que pasarle otro formato al metodo set_estado:

Ese metodo para las columnas del ei_filtro necesita un arreglo con el siguiente formato (‘condicion’ => $cond, ‘valor’ => programa[‘nro’]).

Saludos

Gracias Ricardo, pude solucionarlo.