migrar matricula - error ext.mig_datos_censales()

Buen día para todos, tengo un problema con la migracion de datos en la funcion datos_censales

2015/03/27 16:10:06 - migrar_datos_cens - ERROR (version 5.3.0.0-213, build 1 from 2015-02-02_12-17-08 by buildguy) : Ocurrió un error al ejecutar esta entrada de trabajo:
2015/03/27 16:10:06 - migrar_datos_cens - Couldn’t execute SQL: SELECT * FROM ext.mig_datos_censales();
2015/03/27 16:10:06 - migrar_datos_cens -
2015/03/27 16:10:06 - migrar_datos_cens - ERROR: la sintaxis de entrada no es válida para el tipo numeric: «N»
Where: sentencia SQL: «INSERT INTO mdp_datos_personales (
2015/03/27 16:10:06 - migrar_datos_cens - dato_censal, estado_civil, cantidad_hijos, cobertura_salud,
2015/03/27 16:10:06 - migrar_datos_cens - periodo_lectivo_calle, periodo_lectivo_numero, periodo_lectivo_piso,
2015/03/27 16:10:06 - migrar_datos_cens - periodo_lectivo_departamento, periodo_lectivo_unidad, periodo_lectivo_localidad,
2015/03/27 16:10:06 - migrar_datos_cens - periodo_lectivo_barrio, periodo_lectivo_codigo_postal)
2015/03/27 16:10:06 - migrar_datos_cens - VALUES (_dato_censal, cursor1.estado_civil, cursor1.cantidad_hijos, CAST(cursor1.cobertura_salud AS NUMERIC),
2015/03/27 16:10:06 - migrar_datos_cens - cursor1.calle, cursor1.numero, cursor1.piso,
2015/03/27 16:10:06 - migrar_datos_cens - cursor1.departamento, cursor1.unidad, _loc,
2015/03/27 16:10:06 - migrar_datos_cens - cursor1.barrio, cursor1.codigo_postal)»
PL/pgSQL function “mig_datos_censales” line 31 at sentencia SQL

no encuentro donde requiere el Numerico.
te adjunto los dos archivos mig_personas.csv y mig_alumnos.csv

tambien estuve revisando y en la estructura de mig.alumnos el campo calidad dice que es un integer y no permite nulos pero en la base sga.alumnos_calidad.calidad es char(1)

Saludos espero me puedan guiar ya que este error me esta parando.


mig_alumnos.txt (1.15 KB)

mig_personas.txt (5.39 KB)

Hay un error en la definición del campo cobertura_salud de la tabla ext.mig_personas ya que deberia ser de tipo integer y con el valor default 5 (Carece de cobertura de salud). Este campo hace referencia a la tabla mdp_cobertura_salud.

Modificaremos el script de migracion y subiremos los cambios.

ok gracias!

Hola alejandro
modifique el script 01_migracion_personas.sql linea 102
cobertura_salud character(1) NOT NULL DEFAULT ‘N’::bpchar,

por esta otra
cobertura_salud integer NOT NULL DEFAULT 5,

paso ok pero me dio error en este otro

2015/04/01 15:42:14 - 99_vacuum_analyze - VACUUM ANALYZE sga_certificados_otorgados;
en la bases existe sga_certificados_otorg supongo que es la misma?
modifique el script 99_vacuum_analyze.sql
–VACUUM ANALYZE sga_certificados_otorgados;
por esta otra
VACUUM ANALYZE sga_certificados_otorg;

esto que hice esta bien?
saludos

Si Esteban, es correcto. Estaba mal el nombre de la tabla en el script.
Saludos