[RESPONDIDO] UNPA_SINCRONIZACION INICIAL DUPLICA PROVEEDOR

Buenos dias,
El motivo del presente es para realizarles la siguiente consulta: debido a problemas que tuvimos con un proveedor de pilaga, debimos dejar en modo desconectado el sistema por un par de dias. El tema es que en ese lapso se dio de alta un proveedor localmente en la base pilaga. Por otro lado el sistema diaguita siguio trabajando SINCRONIZADO con arai.
Cuando colocamos en pilaga que trabaje en modo SINCRONIZADO, al ingresar a ABM de personas ARAI nos pide que ejecutemos la sincronización inicial. Ejecutamos la sincro inicial y duplica el proveedor dado de alta localmente en pilaga en la base arai. Por lo tanto, luego se visualiza dos veces en pilaga y en diaguita.

¿Por que puede ocurrir esto? y como lo solucionamos?

Saludos
Paola
UNPA

Hola Paola

No debería suceder, de todas formas en la nueva versión de SIU Arai Proveedores que se distribuye integrada a las nuevas versiones de SIU Diaguita (que se lanza en los proximos dias) y SIU Pilaga (ya disponible) se agregan nuevos controles en la base que directamente restringen estas situaciones, que de todas formas en caso de suceder requerirán alguna acción del administrador para determinar porque sucede dicha situación.

El proveedor que aparece duplicado, verificaron si aparece duplicado en la base arai proveedores también o solo está duplicado en la base de SIU Pilaga?

El procedimiento para eliminar un proveedor duplicado se indica en http://documentacion.siu.edu.ar/wiki/SIU-Arai/proveedores#Tengo_que_agregar.2C_modificar_o_borrar_datos_de_proveedores_a_trav.C3.A9s_de_un_script_.C2.BFcomo_hago.3F

Buen dia,
La prueba que hicimos recien fue la siguiente.
1- El sistema pilaga se encuentra en MODO DESCONECTADO.
2- El sistema diaguita esta en MODO SINCRONIZADO.
3- Las tres bases tienen los 5674 proveedores sincronizados.

4- LOCALMENTE se dieron de alta tres proveedores. Por lo que al sincronizar inicialmente en pilaga, debieran haber 5477 proveedores sincronizados.
5- ANTES DE SINCRONIZAR INICIALMENTE EN PILAGA, lo que hicimos fue poner en NO SINCRONIZA tanto a DIAGUITA como a PILAGA.

6- Cuando hacemos la SINCRONIZACION INICIAL EN PILAGA, ocurre lo siguiente:

  • Ejecutamos la sincro inicial en pilaga, EN PILAGA los proveedores quedan CORRECTAMENTE, 5677 proveedores sincronizados.
    7- En ARAI, DUPLICO DOS DE ELLOS Y TRIPLICO UNO DE ELLOS. Por lo que quedan 5681 proveedores.
    8- Cuando ejecutamos la SINCRO INICIAL EN DIAGUITA, como NO EXISTEN ESTOS PROVEEDORES, Y EN ARAI ESTAN DUPLICADOS 2 de ellos Y TRIPLICADO 1 de ellos, se copia de la misma manera. Entonces en DIAGUITA QUEDAN TAMBIEN 5681 proveedores sincronizados.

Por lo que vamos a probar la solución que nos enviaron en arai, y luego sincronizar diaguita a ver si no duplica los registros.

Consulta: Esto ocurrirá porque en la tabla modo_desconectado de pilaga, habra guardado más de una vez el mismo proveedor?

Gracias!

Saludos
Paola
UNPA

Por favor subir las bases al repositorio (anonimizadas) para poder revisarlas.

Buenas tardes, para anonimizar las bd sabemos con hacerlo en pilaga (con pilaga.sh) y diaguita (anonimizador.sh), pero en arai cual es el archivo que habria q ejecutar?

Gracias!

Paola
UNPA

Por el momento envíenlas sin anonimizar, porque estamos viendo que anonimizadas quizás nos limite para hacer algunas pruebas.

Gracias

Buenos dias,
Resumo la situación actual en la que se encuentra el sistema. Dado a los problemas que se no se presento con la sincronización en pilaga, actualmente el PILAGA se encuentra trabajando en modo DESCONECTADO y el DIAGUITA en modo CONECTADO.
El problema que surge es que cuando queremos sincronizar inicialmente en pilaga nos dice que existe un registro duplicado. Por lo que lo que borramos el que no se encuentra sincronizado. Dado a que tiene un comprobante asociado, primero reemplazamos el id de persona con el id de persona sincronizado y luego eliminamos el proveedor no sincronizado en pilaga.
Ejecutamos los siguientes scripts, los cuales adjuntamos con las bases:
1- PIL_UPDATE_PERSONA_COMPROBANTE.sql
2- PIL_BORRAR_PROVEEDOR.sql

En las bases DIAGUITA Y ARAI, no se encuentran duplicados los registros SOLO en PILAGA. Por eso solamente se ejecutan estos scripts en pilaga.

3- Sincronizamos inicialmente en pilaga, y duplica o triplica los proveedores dados de alta en modo desconectado. PERO ESTA VEZ NO EN PILAGA, SINO QUE EN LA BASE ARAI. De manera que intentamos aplicar la misma solución de borrar los proveedores duplicados en ARAI ejecutando el script ARAI_BORRAR_PROVEEDOR.sql, [b]pero da el error:

ERROR: error de sintaxis al final de la entrada en carácter 227
UPDATE anx_personas SET nacionalidad=null,fisica_o_juridica=null,razon_social=null,nombre_fantasia=null,sexo=null,email=null,cbu=null,url=null,estado=null,tel_cel=null,tipo_persona=NULL WHERE persona_arai= – toba_log: 608849
[/b]
Y por este motivo es que les subimos los scripts y las bases tareadas al repositorio, con el nombre UNPA_PROVEEDORES DUPLICADOS.tar.gz - ID 38052

Desde ya muchas gracias!

Saludos
Paola
UNPA

Te solicito nuevamente las bases para poder revisarlas, la ejecución de comandos de sincronización sobre una base con algún problema de datos no soluciona el problema hasta que no se corrija esa situación.
Cuando tenga las tres bases les podré decir que observo, por favor recordar que siempre las tres bases deben permanecer como un único conjunto (no se pueden realizar backups de distintos momentos ni andar cambiando las conexiones interbase para hacer pruebas porque eso termina generando errores que luego deber ser detectados y corregidos manualmente).

Buen dia,
En el dia de ayer subimos las bases al repositorio. Al final del ultimo mensaje te decia que se subieron las bases tareadas al repositorio, con el nombre UNPA_PROVEEDORES DUPLICADOS.tar.gz - ID 38052.
Y las tres bases son del 02/11/18.

Trabajaste con estas bases y te genero error?

Saludos
Paola
UNPA

Buen día,

En que encoding tienen la base arai proveedores?
Porque viendo el backup veo que lo enviaron con encoding SQL_ASCII, la base debe estar en encoding UTF8.
Por favor reenviar el dump de esta base en encoding UTF8 y verificar que la base se encuentre creada con encoding UTF8, caso contrario deberían convertirla.

Buen dia,
Cuando instalamos la versión 1.1.0 de arai, la codificación de la base de datos se creo en SQL_ASCII porque en la documentación existente sobre como instalar arai, no se especificaba que debia ser UTF8, entonces al instalar arai tomo la codificación del motor postgres por defecto, que en la versión 9.1 es SQL_ASCII.
Convertimos la base de datos a UTF8 y la subimos nuevamente al repositorio con el id 38119.

Gracias por la ayuda!

Saludos
Paola
UNPA

Acabo de bajar el backup, pudieron probar que se los haya generado correctamente?
Porque veo el archivo lleno de caracteres no válidos, e incluso al comienzo del dump se ven una serie de caracteres que no deberían estar, me de la sensación que en algún paso que realizaron con el archivo el dump se rompió, podrían revisarlo y enviarlo nuevamente corregido?

Gracias

Buenos dias Leo, quizas sea por la conversion de la base… como te comente en el post anterior la base de arai esta con encoding SQL_ASCII, porque en la documentación existente sobre como instalar arai, no se especificaba que debia ser UTF8, entonces al instalar arai tomo la codificación del motor postgres por defecto, que en la versión 9.1 es SQL_ASCII.
Para convertir la base a UTF8, ejecutamos la sentencia update pg_database set encoding=6 where datname=‘arai’;

Si pudieras indicarme otra forma de convertir la base? Quizas la aplicada no es la correcta…

Saludos!
Paola
UNPA

Hola Paola,

No sabría decirte con exactitud cual es la mejor manera de cambiarle el encoding a una base existente, podrías consultar en el foro de Postgresql PostgreSQL - Foro Comunidad SIU

Saludos

Buen dia Leo, te comento que solucionamos el inconveniente ejecutando scripts sobre las tres bases, eliminado los registros duplicados y sincronizando inicialmente de nuevo.
El tema es que si bien lo solucionamos, queda pendiente identificar la razón por la cual duplica los registros cuando por algun motivo hay que volver a ejecutar la sincro inicial para volver a sincronizar los sistemas.
Cuando nos pasemos a la plataforma 2 de arai, crearemos la bd en utf8 y en todo caso si el problema se vuelve a presentar, los contactaremos nuevamente.
Gracias

Saludos!
Paola

Hola, para poder detectarlo en el momento preciso en que está sucediendo les recomiendo pasarse a la versión 3.2.1 de SIU Pilagá y seguir los pasos indicados en http://documentacion.siu.edu.ar/wiki/SIU-Arai/proveedores#Como_instalarlo

Al actualizar SIU Pilagá les actualizará también la base de SIU Arai Proveedores agregando nuevas validaciones que deberían impedir grabar duplicados, por lo cual detectarían en el momento en que paso se intentan grabar duplicados y poder corregir el problema o detectar el origen de dicha falla.