[SOLUCIONADO] Cargar un formulario - No carga los datos de una consulta

Hola que tal?

como andan?

Tengo el siguiente problema quiero devolver una serie de datos (array) en un formulario, la consulta funciona bien, la muetro con ei_arbol y me muestra bien los resultados, pero al querer que los datos salgan en el formulario no sale nada, al formulario le defini los mismos campos con el mismo nombre y en el mismo orden que en la consulta, probe de las dos formas, con el return y con el set_datos del formulario pero no sale nada…

A que se puede deber esto? Me faltara algo?

Les transcribo la funcion de configuracion del formulario:

function conf__control_detalle(toba_ei_formulario $form)
105 {
106
107 $numero_acta = trim(toba::memoria()->get_dato(‘numero_acta’));
108
109 $na = quote(“{$numero_acta}”);
110
111 $sql = “SELECT matricula, apellido_nombres, calificacion FROM acta_detalle WHERE numero_acta = $na ORDER BY apellido_nombres”;
112
113
114 //$resultado = toba::db()->consultar($sql);
115
116 //ei_arbol ($resultado);
117
118
119
120 // return toba::db()->consultar($sql);
121
122 $form->set_datos(toba::db()->consultar($sql));
123
124
125
126
127 }

gracias!
SALUDOS
MARTIN

Hola Martin,

creo que el detalle esta en como devuelve el resultado la consulta de la fila. La cosa es asi:

  • El formulario recibe y brinda los datos como un arreglo asociativo de una dimension, por ej:
array('cod_propiedad' => 1, 'descripcion' => 'Terreno Baldio con Lauchas');
  • El metodo consultar de la clase toba_db devuelve un array asociativo, pero de dos dimensiones ya que puede retornar mas de una fila, por ej:

array( 0 => array('cod_propiedad' => 4, 'descripcion' => 'Chalet Embrujado'), 1 => array('cod_propiedad'  => 17, 'descripcion' => 'Casa Yeta'));

En tu caso,

  • Si estas seguro que siempre va a retornar un registro dicha consulta entonces te conviene usar toba::db()->consultar_fila($sql);

  • Si puede retornar mas de un registro, quizas el formulario_ml sea el componente que estas necesitando.

Saludos
Richard

Hola richard, efectivamente era eso,
queria sacar varios registros en uno que no era multilinea, cree el multilinea y ahora anda perfecto…

GRACIAS!
MARTIN