[SOLUCIONADO] undefined method toba_instalacion::get_path_carpeta_instalacion()

Si, existe en kolla

¿Que datos devuelve la siguiente consulta en la base de Kolla?

select nombre, implementada, estado, unidad_gestion from sge_encuesta_atributo where encuesta = 103;

Me devuleve lo siguiente:

“Encuesta Carrera Docente 2017”;“S”;“A”;“ESCEN”

Buenos días Betina,
¿podrías decirnos exactamente qué es lo que hiciste manualmente vía sql?
En los logs no se ve nada relacionado con la operación que estas ejecutando, ¿se obtuvieron enseguida después de hacer la prueba? ¿Podrías agregar el log de Kolla?
Saludos.

Hola, buen dia María Clara, si los logs son del momento en que ejecute la operación y efectivamente no reflejan nada de la acción que llevé a cabo (Vincular Encuestas).
Lo que agregué fue en la tabla sge_encuestas de Guarani, el campo kolla_id_encuesta, en este caso le agregue el dato ‘103’ que es el id de la encuesta en kolla.
Ahi si me mostro los datos en Vincular Alcances pero al presionar el botón Vincular es que me da el error mencionado anteriormente.
Te adjunto el log de kolla pero no da demasiadas pistas.

Muchas gracias!
Saludos,
Betina


sistema.rar (634 Bytes)

Betina, debes enviar los logs de Guarani, cuando accedes a esa operacion desde autogestion para vincular las encuestas.
Asi vemos si es un problema de comunicación Guarani-Kolla o si es otro problema.
¿Modificaron algo en la configuración de conexion de Guarani con Kolla?

Hola, agrego a lo que dijo Ale:

Betina, ¿podes ver lo que devuelve este servicio de Kolla?
http://autogestion.escenf.unam.edu.ar/siu/kolla/rest/encuestas/103?unidad_gestion=ESCEN

Para mi esta devolviendo un 404 (Encuesta inexistente).

En cuanto a los logs,
En 3W ingresa a la operación Vincular alcances, y envía los logs de dicha operación (instalacion/log) cuando da error, los mismos deben de decir esto:


================================================================================
================================   nivel INFO   ================================
================================================================================


--  EJECUTANDO ACCION 'siu\operaciones\gestion_encuestas\controlador::accion__sincronizar'  

saludos.

Hola Leonel, buen dia!
http://autogestion.escenf.unam.edu.ar/siu/kolla/rest/encuestas/103?unidad_gestion=ESCEN
el link devuelve bien la encuesta. Te adjunto la captura de pantalla y los logs que me pedis.

Saludos,
Betina


Temp.rar (27.9 KB)

Hola Betina, gracias por los logs!!!

Observo algo extraño, la operación te esta diciendo “No existe la encuesta ‘103’ en Kolla”, pero a la vez veo que la encuesta existe cuando haces la petición REST.

Te voy a pedir lo siguiente, abri la funcion get_encuesta del archivo src/siu/modelo/entidades/encuestas_kolla.php y agrega los siguientes kernel::log()->add_debug (esto escribe info en el log):


public static function get_encuesta($id_encuesta)
    {
        kernel::log()->add_debug("Encuesta ID", $id_encuesta);
        kernel::log()->add_debug("Encuesta UA", self::get_unidad_gestion());
        $response = self::get_cliente_rest()
            ->get('encuestas/'.$id_encuesta,
                array('query' => array('unidad_gestion' => self::get_unidad_gestion()),
                      'exceptions' => false)
            );
        kernel::log()->add_debug("Encuesta Status Code", $response->getStatusCode());
        kernel::log()->add_debug("Encuesta Response", $response->json());
        if($response->getStatusCode() == "404"){//Si la encuesta no existe
            throw new error_guarani(kernel::traductor()->trans('errores_kolla.no_existe_encuesta', array('%encuesta%' => $id_encuesta)));
        }
        else{
            self::validar_response($response, 200, __FUNCTION__);
            return rest_decode($response->json());
        }
    }

luego volve a vincular y envíame los logs nuevamente, puede ser que se este devolviendo un Status Code diferente y esto genere problemas.

saludos.

te adjunto el log


20170706_121453___1146.rar (2.39 KB)

Gracias por los logs!!!
Me parece que no agregaste estos dos logs que son los mas importantes:


        .......
        kernel::log()->add_debug("Encuesta Status Code", $response->getStatusCode());
        kernel::log()->add_debug("Encuesta Response", $response->json());
        if($response->getStatusCode() == "404"){//Si la encuesta no existe
            throw new error_guarani(kernel::traductor()->trans('errores_kolla.no_existe_encuesta', array('%encuesta%' => $id_encuesta)));
        }
        .......

agrégalos y volve a pasármelos.

saludos.

Hola Leonel, perdon se me paso copiar esas dos lineas.
Te adjunto ahora si completo.

Saludos!


log.rar (2.4 KB)

Hola Betina, gracias por los logs!!!

Observo algo extraño en los mismos:

Vos me habías dicho que cuando ingresas acá (http://autogestion.escenf.unam.edu.ar/siu/kolla/rest/encuestas/103?unidad_gestion=ESCEN) te devuelve la encuesta correctamente, pero cuando veo los logs del 3W dice:


--  Encuesta ID  ---------------------------------------------------------------

103

--  Encuesta UA  ---------------------------------------------------------------

ESCEN

--  Encuesta Status Code  ------------------------------------------------------

404

Osea, Status Code 404, la encuesta no existe, por eso da el error que me comentabas antes.

Te voy a pedir mas logs, en la función get_encuesta del archivo src/siu/modelo/entidades/encuestas_kolla.php agrega estos otros 4:


        .......
        kernel::log()->add_debug("Encuesta Status Code", $response->getStatusCode());
        kernel::log()->add_debug("Encuesta Response", $response->json());

        kernel::log()->add_debug("Encuesta Headers", $response->getHeaders());
        kernel::log()->add_debug("Encuesta EffectiveUrl", $response->getEffectiveUrl());
        kernel::log()->add_debug("Encuesta ReasonPhrase", $response->getReasonPhrase());
        kernel::log()->add_debug("Encuesta Body", $response->getBody());

        if($response->getStatusCode() == "404"){//Si la encuesta no existe
            throw new error_guarani(kernel::traductor()->trans('errores_kolla.no_existe_encuesta', array('%encuesta%' => $id_encuesta)));
        }
        .......

luego volveme a pasar los logs.

saludos y gracias.

te paso el log.


20170707_113245___9735.rar (2.4 KB)

Hola Betina,

No veo que haya escrito lo ultimo que te mande, debería quedar algo así:


public static function get_encuesta($id_encuesta)
    {
        kernel::log()->add_debug("Encuesta ID", $id_encuesta);
        kernel::log()->add_debug("Encuesta UA", self::get_unidad_gestion());
        $response = self::get_cliente_rest()
            ->get('encuestas/'.$id_encuesta,
                array('query' => array('unidad_gestion' => self::get_unidad_gestion()),
                      'exceptions' => false)
            );
        kernel::log()->add_debug("Encuesta Status Code", $response->getStatusCode());
        kernel::log()->add_debug("Encuesta Headers", $response->getHeaders());
        kernel::log()->add_debug("Encuesta EffectiveUrl", $response->getEffectiveUrl());
        kernel::log()->add_debug("Encuesta ReasonPhrase", $response->getReasonPhrase());
        kernel::log()->add_debug("Encuesta Body", $response->getBody());

        if($response->getStatusCode() == "404"){//Si la encuesta no existe
            throw new error_guarani(kernel::traductor()->trans('errores_kolla.no_existe_encuesta', array('%encuesta%' => $id_encuesta)));
        }
        else{
            self::validar_response($response, 200, __FUNCTION__);
            return rest_decode($response->json());
        }
    }

Saquemos la linea que dice kernel::log()->add_debug(“Encuesta Response”, $response->json());, ya que puede ser que de problemas.

Quedo a la espera de los nuevos logs.

saludos y gracias.

va de nuevo.


20170707_115441___6312.rar (2.79 KB)

Ahí esta el error, en los logs dice:


--  Encuesta EffectiveUrl  -----------------------------------------------------

http://autogestion.escenf.unam.edu.ar/siu/kolla/encuestas/103?unidad_gestion=ESCEN

cuando la URL debería ser: http://autogestion.escenf.unam.edu.ar/siu/kolla/rest/encuestas/103?unidad_gestion=ESCEN

Eso es porque tenes mal configurado el archivo instalacion/servicios_web_config.php, en ‘base_url’ deberías poner: [b]http://autogestion.escenf.unam.edu.ar/siu/kolla/rest/[/b], falta el /rest/ al final. Debería quedar algo así:


'consumidos' => array(
		'kolla' => array(
			'tipo' => 'rest',
			'parametros' => array( //usa cliente Guzzle, son opciones en formato guzzle
				'base_url' => "http://autogestion.escenf.unam.edu.ar/siu/kolla/rest/",
				'defaults' => array (
					'auth' => array(<USUARIO>, <PASSWORD>), //user, password, segun guzzle
					'verify' => false //no verificar cert ssl
				)
			)
		),

		......

	)

Por favor verifica eso, ya lo habíamos visto en un mensaje anterior.

saludos.

Hola Leonel, si eso me fije, nuevamente, ya que como vos bien decis lo habia chequeado antes cuando me enviaste el mensaje al que haces referencia, y en esa oportunidad hice los cambios que me dijeron:
‘base_url’ => “http://autogestion.escenf.unam.edu.ar/siu/kolla/”, por
‘base_url’ => “http://autogestion.escenf.unam.edu.ar/siu/kolla/rest
solo que como abajo del mensaje decia:
falta el “/rest” al final, para corroborar podes copiar dicha URL en un navegador, te va a pedir las credenciales (lo que tenes en auth). Luego de esto te va a mostrar una consola con todos los servicios REST de Kolla disponibles.
así fue como lo puse (sin /) y alli estuvo el error.
Ahora le puse la barra al final y funcionó.

Muchas gracias por el tiempo!
Saludos,
Betina

Hola Betina, perfecto!!!

Por las dudas agrégale barra (/) al final:

‘base_url’ => “http://autogestion.escenf.unam.edu.ar/siu/kolla/rest/

Me alegro que lo hayas podido resolver.

saludos.

Gracias a vos por la atención!
Saludos