Es de aclarar, que el ejemplo ef_combo_editable de toba_referencia pasa lo mismo, funciona en desarrollo, mas no en producción
La única diferencia que vemos es en el php desarrollo (windows - php5.2.5) y producción (Linux Fedora - php5.3.6)
el codigo del ef_combo editable es:
static function get_usuarios($filtro=null, $locale=null) {
if (! isset($filtro) || trim($filtro) == '') {
return array();
}
$where = '';
if (isset($locale)) {
$locale = quote($locale);
$where = "AND usu_nombre LIKE '$locale'";
}
$sql = "SELECT usu_identificacion, usu_nombre
FROM usuarios
WHERE usu_nombre ILIKE '{$filtro}%'
$where
LIMIT 10
";
return consultar_fuente($sql);
}
function get_usuario($id = null) {
if (! isset($id)) {
return array();
}
$sql = "SELECT usu_identificacion, usu_nombre
FROM usuarios
WHERE usu_vigente = true AND usu_identificacion LIKE '$id'
ORDER BY usu_nombre";
$result = consultar_fuente($sql);
if (! empty($result)) {
return $result[0]['usu_nombre'];
}
}
Creeemos que ni siquiera va a la clase para ejecutar la función, ya que ni siquiera reacciona al agregar la linea
toba::logger()->debug(“Metodo cascada combo editable: $sql”); para verificar su resultado.
Tratamos de reproducir un nuevo ef_combo_editable en el mismo toba_referencia, pero notamos que al seleccionar la consulta, no muestra la lista de métodos (ver gráfica), lo que puede estar pasando entonces es esta comunicación, porque ni siquiera entra al método en el ejemplo original.
Durante la instalacion del toba_2_0_3 al final se presenta un warnig; tendrá efectos con lo que se nos esta presentando, como corregimos para volver a instalar ?
PHP Warning: date(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone _set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ’ America/Bogota’ for ‘COT/-5.0/no DST’ instead in /proyectos/toba_2_0/php/nucleo/ lib/toba_logger.php on line 462
EN LA LINEA 462 SE TIENE
$texto .= "Fecha: ".date(“d-m-Y H:i:s”).$salto;
En la linea que asigna la variable $where tenes un error, las variables quoteadas no van entrecomilladas, debido a que la funcion quote ya determina si dicho valor debe ir entre comillas o no.
El colocarlo entre comillas probablemente funcione para un numero entero, sin embargo cuando se reciba un string la SQL quedara mal formada.
No hace falta volver a instalar, lo que debes hacer es fijar en php.ini la zona correspondiente a tu huso horario (fijando la propiedad date.timezone), es un requerimiento de las versiones 5.3.x.
Puede que las cascadas no funcionen porque este warning este interfiriendo con el formato json en que se devuelven los datos.
Le quite las comillas y tampoco funciona, la confusión es que ni siquiera el ejemplo de toba referencia funciona ef_combo_editable
$where = ‘’;
if (isset($locale)) {
$where = " AND usu_nombre LIKE ".quote($locale);
}
Lo otro grave, en el logger del Editor, NO registra ningún proceso (siempre lo muestra vacio), como lo puedo activar o por que no se instaló esta ayuda ?
Se instala desde cero el toba_2_0_3, y de inmediato se hace prueba el ejemplo de toba referencia ef_combo_editable, y no carga los datos, por ejemplo ARG, para que despliegue ARGENTINA, pero nada, se verifica la base de datos y existen los mismos.
La instalación salió bien (adjunto log).
el ef_combo_editable NO funciona
Al tratar de ver en el Editor el Logger, no muestra nada siempre aparece vacío,
Colocamos un print_r antes de ejecutar la consulta del ef_combo_editable, para ver su salida, y tampoco lo muestra
El error es generalizado con las cascadas, toba_referencia - cascadas NO responden
En el logger del Editor, no se muestra ninguna operación realizada.
Conclusión No esta pasando por el logger, y se interrumpe la respuesta cascada o no va al método respectivo.
Probando otros ejemplos del toba_referencia como el ef_popup se muestra el siguiente error:
Error de comunicación AJAX
Más info…
{
‘tId’=>0,
‘status’=>500,
‘statusText’=>‘Internal Server Error’,
‘getResponseHeader’=> más ,
‘getAllResponseHeaders’=>‘Date: Tue, 17 May 2011 13:44:50 GMT Via: 1.0 svrfw (squid/3.0.STABLE25) X-Cache-Lookup: MISS from svrfw:3128 X-Powered-By: PHP/5.3.6 X-Cache: MISS from svrfw Proxy-Connection: close Content-Length: 13 Pragma: no-cache Server: Apache/2.2.17 (Fedora) Content-Type: text/html; charset=iso-8859-1 Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Expires: Thu, 19 Nov 1981 08:52:00 GMT ‘,
‘responseText’=>’[1,“Horacio”]’,
‘responseXML’=>[null],
‘argument’=>‘popup’
}
en el final del log aparecen mensajes indicando que no se pueden conectar al esquema referencia, podrias verificar que los datos correspondientes al proyecto toba_referencia se encuentran en la misma base que toba y en el esquema referencia.