Hice la configuracion se ejecuta hasta “Crear Schema postgres” ,que es donde tira error, seria cuando se ejecuta el trabajo:script2pg, y luego como consecuencia de esto tira error en “Pasar datos tabla”, seria cuando se ejecuta el trabajo: ifx2pg.
Hola Pablo:
Viendo el log que enviaste, el error estaría en la autenticación en la base postgres: FATAL: password authentication failed for user “postgres”
Proba abriendo ese trabajo y en conexión de BD → en conexión_pg → click botón derecho → editar y luego botón probar, fíjate si se conecta a la base de Guarani 3, si te da error, fijate en el menú Edición → edit the kettle.properties file y checkea los parámetros de conexión a postgres.
La prueba de conexión la hiciste abriendo el trabajo script2pg.kjb ?
Veo que tenés la versión del kettle version 4.2.0-stable, tuvimos problemas para procesar variables con esa versión, prodrías bajarte el 4.0.1 ? de todas formas el error salía en el trabajo Copiar tablas - JOB.kjb , pero podrías probar eso.-
Hice todas las pruebas y me daba ok las conexiones. Lo que me pasaba era que no tomaba las variables que definia, entonces me tome el trabajo de modificar los archivos y en donde estaban las variables los reemplace por las variables de las conexiones. Un laburito pero funciono.
La verdad que si, por eso se usan variables, probaste cambiando el archivo directamente en el home del usuario te crea una carpeta .kettle y desde ahi modificar el kettle.properties no desde la aplicacion PDI.?
PD: pudiste crear la Base de G2 con sus tablas, datos, etc, en postgres?
Pablo, veo que creaste un pg_password, puede ser??, eso lo estas usando para la conexión? porque sería lo único que deberías usar sin variable, lo ideal seria que uses las variables para las conexiones y no en forma estática cambiando uno x uno, tené en cuenta que después tenes que hacer el pasaje de datos del modelo G2 a G3 y vas a tener que cambiar uno por uno para cada modulo.
Eso lo puse para ver si funcionaba. Ahora, estoy probando la nueva version para migrar que subieron a extranet, y fijandome un poco mas vi que en algunos pasos toma las variables que se definen en el kettle y en otros toma las que ellos utilizaron, entonces fue ahi donde modifique las variables por las mias (entrando en cada paso que me tiraba error y viendo que variables tomaba, segun sea “abrir transformacion” o “iniciar chef”),y pude migrar las tablas al postgres.
Ahora surgio otro inconveniente para pasar de g2 a g3:
01_Pre_Controles/fx_ctrl_generales.sql hacia referencia a la tabla mug_localidad que no se migraba porque en IFX2PG/script_1.sql se eliminaba, le agregue para que inserte para poder continuar.
En el modulo 02_Generales/01_Pre_Controles cuando se genera el excell no me lo permite abrir.
Continue igual con el siguiente paso 02_Generales/02_Migracion y me tiraba error en 02_sga_instituciones.sql, en donde llamaba a la tabla no la reconocia porque no hacia referencia a que schema pertenecia entonces le agregue “mig.sga_instituciones”, y ahora al volverlo a ejecutar me tira error porque las columnas no corresponden (g2:institucion,nombre,pais,tipo_institucion,admite_pase y g3:institucion, nombre, nombre_abreviado,tipo_institucion, localidad).
Llegue hasta ahi porque no te permite continuar sino ejecutas este paso.
01_Pre_Controles/fx_ctrl_generales.sql hacia referencia a la tabla mug_localidad que no se migraba porque en IFX2PG/script_1.sql se eliminaba, le agregue para que inserte para poder continuar.
No hace falta que esa tabla se pase de G2 la tabla que hace referencia en ese precontrol es mug_localidades de Guarani 3:
SELECT localidad FROM mig.sga_coleg_sec EXCEPT SELECT localidad FROM mug_localidades
si te fijas la tabla sga_coleg_sec tiene el prefijo mig.(schema mig) todo que tenga ese prefijo es de Guarani 2 el resto son tablas de Guarani 3 que se encuentra en schema public que para este caso no hace falta poner public.mug_localidades
Esto responderia al error, no es que no la reconocia, debe haber datos que no cumplieron los controles previos, asi que no le pongas el mig.:
Continue igual con el siguiente paso 02_Generales/02_Migracion y me tiraba error en 02_sga_instituciones.sql, en donde llamaba a la tabla no la reconocia porque no hacia referencia a que schema pertenecia entonces le agregue "mig.sga_instituciones", y ahora al volverlo a ejecutar me tira error porque las columnas no corresponden (g2:institucion,nombre,pais,tipo_institucion,admite_pase y g3:institucion, nombre, nombre_abreviado,tipo_institucion, localidad).
primero tenes que correr el precontrol, si el excel esta vacio podes seguir, si tiene consultas que no respondieron los controles previos, no podes migrar porque te van a dar errores. Te paso un excel para que veas como es el que te genera.
Que error te da al abrir el excel? o directamente no te lo genera?
Pablo,
Parecería que el path es muy largo o los caracteres () darían errores, podrías probar haciendo lo siguiente, para salir de la duda:
Abrí el Trabajo Prectrl_Generales.kjb → sobre la Transformación PreControles Generales click con el botón derecho del mouse y luego abrir Transformación
En salida Salida Excel abrilo con doble click y cambia: ${Internal.Transformation.Filename.Directory} por un path mas corto b[/b] que sería donde te lo va a general al excel. (solo para saber si el problema es del path)
Con respecto a la respuesta que me diste “Guarani 3 que se encuentra en schema public que para este caso no hace falta poner public.mug_localidades”, no me genero nada en el schema public.
Puse el path que me diste y me genera el excell vacio,seria porque no termina de hacer todos los pasos, calculo.
Te paso el error que seria porque no encuentra la tabla y por eso la habi modificado.
1) Creas la base de G3 con su instalación esto te creara la base de guarani 3 con su esquema public
2) Corres el IFX2PG → ifx2pg.kjb (Lo que hace esto es copiar la base de Guarani 2 de informix a Postgres, haciendo una copia de sus tablas, índices, datos, etc.) Entonces tendrás dos esquemas en postgres en la base de Guarani3:
Base guarani_3_0 con dos esquemas, mig (guarani 2) la que se agregó al correr ifx2pg.kjb y el esquema public (guarani3) generada por la instalación de guarani 3, te paso una imagen de como debería quedarte.
3) Corres los trabajos de cada modulo, Ejemplo para el modulo Generales (en el proceso no debería crearte tablas de migracion en el esquema public, todo lo crea en el esquema mig, el proceso solo pasa datos a las tablas de guarani 3)
a) 01_Pre_Controles → prectrl_Generales.kjb (si el excel que te genera esta vacio podes seguir, sino te devolverá las consultas de los datos que no pasaron los precontroles para que los corrijas)
b) 02_Migracion → mig_Generales.kjb
c) 03_Pos_Controles → posctrl_Generales.kjb
También te paso un ppt que explica cómo hacer la migracion, cualquier duda seguí preguntando.
muchisimas gracias!!!. Pude continuar, me tiro 4 errores los pude solucionar. Cuando me creo la base no me la creo en public pero la cambie y funciono perfecto.
Estoy ejecutando 05_Propuestas\02_Migracion, y me da error en 10_sga_elementos.sql, viendo el sql el error que me esta generando es que en sga_reglas no tengo la regla 100 que es una que se puede dar según el caso.
Como reglas tengo:
1;“Actividad Aprobada”
2;“Actividad Cursada”
3;“Actividad Inscripto a Cursada”
4;“Actividad Inscripto a Examen”
5;“Actividad Cursada o Insc a Cursada”
101;“Todas las Actividades Aprobadas”
102;“Todas las Actividades Cursadas”
103;“Tener n actividades Aprobadas”
104;“Tener n actividades Cursadas”
108;“Tener el n% de actividades aprobadas”
109;“Tener el n% de actividades cursadas”
300;“No tener la Visa temporaria vencida”
302;“No estar sancionado en la Institución”
309;“Ser Alumno Regular”
Estoy en el modulo 07_Calendario Academico\01_Pre_Controles y me tira error en la consulta fx_ctrl_calendario_academico.sql , me fijo y el error esta en la consulta:
sql=‘SELECT ste.anio_academico, ste.turno_examen FROM mig.sga_turnos_examen ste WHERE CASE WHEN ste.tipo_de_turno='N' THEN 1 WHEN ste.tipo_de_turno='E' THEN 2 WHEN ste.tipo_de_turno='A' THEN 3 ELSE 33 END NOT IN (SELECT turno_tipo FROM sga_turnos_examen_tipos)’;
Tira error en ste.tipo_de_turno='E' y ste.tipo_de_turno='A' , sacando las '', funciona, hay que hacer eso?