Autor Tema: Error al importar desde guarani: "Los datos tienen que ser un array"  (Leído 2466 veces)

0 Usuarios y 1 Visitante están viendo este tema.

vsuch

  • General
  • *
  • Mensajes: 492
    • Ver Perfil
  • Institución: Facultad de Ciencias Naturales e Instituto Miguel Lillo
  • Nombre y apellido: Victor Such
  • Sistema: SIU GUARANI
  • Teléfono laboral: 4330633 int 260
Buen día a todos,
Estamos implementando Kolla 4.0 y tenemos problemas a realizar la importación de  datos institucionales desde Guaraní 2.9.4, sale un mensaje de error diciendo "Los datos tienen que ser un array".
El log en kolla dice lo siguiente:
Código: [Seleccionar]
Fecha: 17-04-2018 10:53:33
Operacion: Importar Personas desde SIU-Guaraní 2
Usuario: admin
Version-PHP: 5.6.35-1+0~20180405085409.12+jessie~1.gbpaa4624
Servidor: 10.24.3.28
URI: /siu/kolla/aplicacion.php?ah=st5ad5fc47056ba2.45748949&ai=kolla%7C%7C45000017
Referrer: http://10.24.3.28/siu/kolla/aplicacion.php?ah=st5ad5fc41b7c325.88598069&ai=kolla%7C%7C45000017
Host: 10.24.10.11
==========
[INFO][kolla] PUNTO MONTAJE: se cargó la clase extension_toba/kolla_usuario.php del punto de montaje proyecto. El path del mismo es /usr/local/siu/kolla/aplicacion/php
[INFO][kolla] PUNTO MONTAJE: se cargó la clase operaciones/usuarios/importar_personas/importar_desde_guarani/ci_importar_desde_guarani.php del punto de montaje proyecto. El path del mismo es /usr/local/siu/kolla/aplicacion/php
[INFO][kolla] PUNTO MONTAJE: se cargó la clase operaciones/usuarios/importar_personas/importar_desde_guarani/form_usuarios.php del punto de montaje proyecto. El path del mismo es /usr/local/siu/kolla/aplicacion/php
[INFO][toba] componente(45000082): [ evento ]  El METODO [ evt__cambiar_tab__siguiente ] no existe - 'cambiar_tab__siguiente' no fue atrapado
[INFO][toba] componente(45000082): [ callback ] 'evt__pant_usuarios__salida' no fue atrapado
[ERROR][toba] toba_error: Los datos tienen que ser un array

[TRAZA]exception 'toba_error' with message 'Los datos tienen que ser un array' in /usr/local/siu/kolla/aplicacion/vendor/siu-toba/framework/php/lib/toba_sql.php:203
Stack trace:
#0 /usr/local/siu/kolla/aplicacion/php/nucleo/servicios_web/importadores/importador_institucion_ws.php(176): sql_array_a_insert(args ignored)
#1 /usr/local/siu/kolla/aplicacion/php/nucleo/servicios_web/importadores/importador_institucion_ws.php(20): importador_institucion_ws->_importar_institucion()
#2 /usr/local/siu/kolla/aplicacion/php/nucleo/servicios_web/importadores/importador_institucion_ws.php(13): importador_institucion_ws->_importar_datos_institucion()
#3 /usr/local/siu/kolla/aplicacion/php/nucleo/servicios_web/importadores/importador_usuarios_ws.php(631): importador_institucion_ws->importar()
#4 /usr/local/siu/kolla/aplicacion/php/nucleo/servicios_web/importadores/importador_usuarios_ws.php(122): importador_usuarios_ws->_sincronizar_datos_institucion()
#5 /usr/local/siu/kolla/aplicacion/php/nucleo/servicios_web/importadores/importador_usuarios_ws.php(112): importador_usuarios_ws->_importar_personas()
#6 /usr/local/siu/kolla/aplicacion/php/operaciones/usuarios/importar_personas/importar_desde_guarani/ci_importar_desde_guarani.php(64): importador_usuarios_ws->importar()
#7 [internal function]: ci_importar_desde_guarani->evt__pant_resultados__entrada()
#8 /usr/local/siu/kolla/aplicacion/vendor/siu-toba/framework/php/nucleo/componentes/toba_componente.php(221): call_user_func_array(args ignored)
#9 /usr/local/siu/kolla/aplicacion/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(243): toba_componente->invocar_callback(args ignored)
#10 /usr/local/siu/kolla/aplicacion/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(211): toba_ci->controlar_cambio_pantalla()
#11 /usr/local/siu/kolla/aplicacion/vendor/siu-toba/framework/php/nucleo/toba_solicitud_web.php(135): toba_ci->disparar_eventos()
#12 /usr/local/siu/kolla/aplicacion/vendor/siu-toba/framework/php/nucleo/toba_solicitud_web.php(55): toba_solicitud_web->procesar_eventos()
#13 /usr/local/siu/kolla/aplicacion/vendor/siu-toba/framework/php/nucleo/toba_nucleo.php(81): toba_solicitud_web->procesar()
#14 /usr/local/siu/kolla/aplicacion/www/aplicacion.php(23): toba_nucleo->acceso_web()
#15 {main}
[INFO][toba] componente(45000082): [ callback ] 'conf__pant_usuarios' no fue atrapado

El web service de 3w esta funcionando: http://3w.csnat.unt.edu.ar/desarrollo/rest/legacy/institucion?ua=CSNAT
Código: [Seleccionar]
[
    {
        "FECHA_PROCESO": "17\/04\/2018",
        "NOMBRE_INSTITUCION": "Universidad Nacional de Tucum\u00e1n",
        "CODIGO_INSTITUCION": "UNT",
        "CODIGO_INSTITUCION_ARAUCANO": "58"
    }
]

Myriam Céspedes

  • Moderador Global
  • *****
  • Mensajes: 400
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: Myriam Céspedes
  • Sistema: Equipo SUDOCU | Proyecto EEI
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #1 on: Abril 17, 2018, 11:44:49 am »
Buen día Victor,
noto que siguen teniendo inconvenientes con este servicio, lo habías comentado desde otras versiones.

Te hago una consulta: ¿Para qué están necesitando importar los datos institucionales en Kolla? ¿Qué tipo de encuestas están necesitando realizar?

Aguardo tus comentarios.

¡Saludos!
Myriam

vsuch

  • General
  • *
  • Mensajes: 492
    • Ver Perfil
  • Institución: Facultad de Ciencias Naturales e Instituto Miguel Lillo
  • Nombre y apellido: Victor Such
  • Sistema: SIU GUARANI
  • Teléfono laboral: 4330633 int 260
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #2 on: Abril 17, 2018, 12:00:26 pm »
Gracias por respondes.
En la versión de Kolla 3.7 con guaraní 2.9.3 funciono todo bien, resolvimos todos los problemas. Pero ahora actualizamos a guaraní 2.9.4 por lo que estamos implementando el kolla 4.0.1
Principalmente necesitamos realizar encuestan a graduados.

Myriam Céspedes

  • Moderador Global
  • *****
  • Mensajes: 400
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: Myriam Céspedes
  • Sistema: Equipo SUDOCU | Proyecto EEI
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #3 on: Abril 17, 2018, 12:14:42 pm »
Victor,
¿Podés indicarnos la versión de PHP que tienen?


vsuch

  • General
  • *
  • Mensajes: 492
    • Ver Perfil
  • Institución: Facultad de Ciencias Naturales e Instituto Miguel Lillo
  • Nombre y apellido: Victor Such
  • Sistema: SIU GUARANI
  • Teléfono laboral: 4330633 int 260
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #4 on: Abril 18, 2018, 07:41:45 am »
Si, la version de php es 5.6.35, esta instalado en un servidor con debian.
La version de PostgreSQL es 9.4.12.
La version de Apache es 2.4.10.
Te adjunto el phpinfo para mas detalles.

Algo que cambie después de instalar es el archivo bases.ini, en el cual la documentación dice que hay que agregar el "toba_usuarios" y en schema es lo mismo que en "toba_kolla" a mi me daba error cuando quería entrar al gestor de usuario por lo que cambien en el "toba_usuarios" la propiedad schema quedando así:
Código: [Seleccionar]
[toba_kolla]
motor = "postgres7"
profile = "127.0.0.1"
puerto = "5432"
usuario = ***********
clave = ***********
base = "kolla4"
schema = "toba_kolla"
encoding = "LATIN1"

[produccion kolla kolla]
motor = "postgres7"
profile = "127.0.0.1"
puerto = "5432"
usuario = ***********
clave = ***********
base = "kolla4"
schema = "kolla"
encoding = "LATIN1"

[toba_usuarios]
motor = "postgres7"
profile = "127.0.0.1"
puerto = "5432"
usuario = ***********
clave = ***********
base = "kolla4"
schema = "kolla"
encoding = "LATIN1"

[produccion toba_usuarios toba_usuarios]
motor = "postgres7"
profile = "127.0.0.1"
puerto = "5432"
usuario = ***********
clave = ***********
base = "kolla4"
schema = "toba_kolla"
encoding = "LATIN1"
Así se genero la estructura de la base de datos del kolla el instalador.

M Clara Casalini

  • Moderador Global
  • *****
  • Mensajes: 860
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: M. Clara Casalini
  • Sistema: Kolla
  • Teléfono laboral: -sin teléfono actualmente-
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #5 on: Abril 18, 2018, 01:26:29 pm »
Buen día Victor,
con respecto a lo que comentas del bases.ini: lo que hay que agregar es una entrada idéntica a la que tiene el encabezado [toba_kolla] pero que en el encabezado diga [produccion toba_usuarios toba_usuarios]. Es decir que de las 4 entradas que tenes en ese bases.ini la tercera no corresponde, les recomendamos borrarla para evitar confusiones. La correcta es la cuarta y última.

Con respecto al problema con el servicio web no hemos podido reproducir el problema, quisiera que nos envíes el log de Kolla completo y si podes agregar el de Apache y el de Guaraní a ver si detectamos algo en esos logs. Si queres podes crear una solicitud en el gestor (GDS) para no enviar esos datos por esta via.

Saludos
Clara


vsuch

  • General
  • *
  • Mensajes: 492
    • Ver Perfil
  • Institución: Facultad de Ciencias Naturales e Instituto Miguel Lillo
  • Nombre y apellido: Victor Such
  • Sistema: SIU GUARANI
  • Teléfono laboral: 4330633 int 260
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #6 on: Abril 19, 2018, 07:35:34 am »
Hola, estuve revisando la función donde se origina el error y al parecer si esta recibiendo un array, puedo ver los datos que devuelve el web service del 3w. Voy a probar con instalar de nuevo el kolla y les comento si tengo el mismo problema.
Una consulta más, que versión de php es la recomendada? Esta bien la versión 5.6.35 y PostgreSQL 9.4.12?
Por que en la documentación dice "Deseable: PHP 5.4.x" pero si no me equivoco el instalador verifica la versión mayor o igual 5.6 pero menor que la 7.
Saludos

Myriam Céspedes

  • Moderador Global
  • *****
  • Mensajes: 400
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: Myriam Céspedes
  • Sistema: Equipo SUDOCU | Proyecto EEI
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #7 on: Abril 19, 2018, 10:12:22 am »
Buen día Victor,

las versiones que tenés son correctas. Estaremos agregando este detalle en la documentación y en el chequeeo de versiones que hace el instalador.

Respecto al problema que reportaste, como te comentaba Clara ayer, recreamos el escenario con las versiones que nos indicaste de ambos módulos pero no pudimos reproducir el error.

Si después de esta prueba el problema persiste, avisanos y trataremos ver de qué se trata.

Saludos!
Myriam

vsuch

  • General
  • *
  • Mensajes: 492
    • Ver Perfil
  • Institución: Facultad de Ciencias Naturales e Instituto Miguel Lillo
  • Nombre y apellido: Victor Such
  • Sistema: SIU GUARANI
  • Teléfono laboral: 4330633 int 260
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #8 on: Abril 19, 2018, 10:27:40 am »
Volví a instalar el Kolla 4 y persiste el problema (adjunto imagen).
Sera que me falta alguna extensión para php? Después de agregar el servicio web de 3w trate de importar y me salia todo en blanco, me fije en el log y tenia un error del cURL por lo que instale la extencion php5.6-curl y se soluciono.
Las versiones instaladas son las siguientes:
PHP : 5.6.35
PostgreSQL: 9.4.12.
Apache: 2.4.10
Extenciones PHP: php5-mcrypt, php5.6-pgsql, php5.6-mbstring, php5.6-zip, php5.6-xsl, php5.6-curl

Podrá ser algo en el servicio web del 3w?
Ademas adjunto log del kolla y otro del apache.

Saludos y muchas gracias.


vsuch

  • General
  • *
  • Mensajes: 492
    • Ver Perfil
  • Institución: Facultad de Ciencias Naturales e Instituto Miguel Lillo
  • Nombre y apellido: Victor Such
  • Sistema: SIU GUARANI
  • Teléfono laboral: 4330633 int 260
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #9 on: Abril 19, 2018, 11:20:41 am »
Agregue de forma manual la institución y cuando use la opción importar desde el siu me dio todo correcto e importo los títulos.
Ahora voy a la opción usuarios > Importación de encuestados > Importar Personas desde SIU-Guaraní 2 y cuando  presiono el botón de importar queda la pantalla en blanco.
Adjunto el log del sistema.
En el log de apache solo aparece esta linea:
Código: [Seleccionar]
[Thu Apr 19 11:10:17.597672 2018] [:error] [pid 6177] [client 10.24.10.11:62306] PHP Fatal error:  Call to a member function quote() on null in /usr/local/siu/kolla/aplicacion/vendor/siu-toba/framework/php/lib/toba_sql.php on line 232, referer: http://10.24.3.28/siu/kolla/aplicacion.php?ah=st5ad8a3326f1569.43486947&ai=kolla%7C%7C45000017

Saludos.

vsuch

  • General
  • *
  • Mensajes: 492
    • Ver Perfil
  • Institución: Facultad de Ciencias Naturales e Instituto Miguel Lillo
  • Nombre y apellido: Victor Such
  • Sistema: SIU GUARANI
  • Teléfono laboral: 4330633 int 260
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #10 on: Abril 20, 2018, 09:12:29 am »
Ya esta funcionando, muchas gracias.

Myriam Céspedes

  • Moderador Global
  • *****
  • Mensajes: 400
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: Myriam Céspedes
  • Sistema: Equipo SUDOCU | Proyecto EEI
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #11 on: Abril 20, 2018, 09:33:55 am »
Hola Victor,
que buena noticia!

Te pido si podés compartirnos qué fue lo que pasó.

Necesitamos tener en claro si hay algún problema para corregir o mejorar, o si fue un problema de datos, de configuración...? ¿Nos podés comentar?

Muchas gracias!
Myriam

vsuch

  • General
  • *
  • Mensajes: 492
    • Ver Perfil
  • Institución: Facultad de Ciencias Naturales e Instituto Miguel Lillo
  • Nombre y apellido: Victor Such
  • Sistema: SIU GUARANI
  • Teléfono laboral: 4330633 int 260
Re:Error al importar desde guarani: "Los datos tienen que ser un array"
« Respuesta #12 on: Abril 23, 2018, 10:29:25 am »
Al parecer el problema estaba en los datos de la institución que guarda el guaraní. Por que una ves lo cargue de forma manual a la institución en el Kolla ya pude importar usando el web servicio del 3w.

Algo mas que esta faltando en la instalación o la documentación es  añadir en el toba.conf dentro de la configuración del directorio del kolla lo siguiente, para que funcione el web servicio.
Código: [Seleccionar]
                AddType applicacion/x-httpd-php .php
<Files rest>
ForceType application/x-httpd-php
</Files>

Saludos.