[SOLUCIONADO] Error ejecutando mig_personas

Buenos días, estamos tratando de hacer la migración de G2 a G3 y en 02_Modulos/15_Personas/02_Migracion/mig_Personas.kjb nos genera el siguiente error

07_mdp_personas_documentos - ERROR: llave duplicada viola restricción de unicidad «iu_pais_tipo_nro_documento»
Detail: Ya existe la llave (pais_documento, tipo_documento, nro_documento)=(54, 3, null).

El tema es que tengo varias personas que no tienen nro_cuil… según la consulta del trabajo

SELECT 	
	mcp.persona,
	msp.pais_documento,
	3,
	msp.numero_cuil
FROM 	
	mig._cnv_pk_personas as mcp,
	mig.sga_personas as msp
WHERE	
	msp.unidad_academica  = mcp.unidad_academica AND
	msp.nro_inscripcion   = mcp.nro_inscripcion AND
	(msp.numero_cuil IS NOT NULL and msp.numero_cuil <>'') AND
    NOT EXISTS (SELECT 1 FROM mdp_personas_documentos as mdp
                WHERE mdp.pais_documento = msp.pais_documento AND
                      mdp.tipo_documento = 3 AND
                      mdp.nro_documento = msp.numero_cuil
				) AND
	mcp.migrar = 1;

O sea el error lo genera por nro_documento= null pero en la tabla del trabajo trae el nro de CUIL en NULL.

No entiendo cómo seguir ya que estamos hablando de datos diferentes.

Saludos

Javier, es raro porque el si el nro de cuil es nulo o string vacio no lo inserta, por esta condicion:
(msp.numero_cuil IS NOT NULL and msp.numero_cuil <>‘’)

Corre esa SELECT (Sin el INSERT) en la base y fijate que personas recupera y porque las recupera si el numero de cuil no esta registrado.

Ademas fijate si existe en G3 algún registro de CUIL en nulo:

select * FROM mdp_personas_documentos WHERE documento_tipo = 3 AND nro_documento IS NULL

Alejandro, gracias por tu respuesta, el problema fue que teníamos archivos con numero_cui = ‘null’ o sea la cadena y no el dato NULL.

Saludos

OK!. Como en el error no estaba ese dato con las comillas parecia que era el NULL y no ‘NULL’ como una cadena de caracteres.