Error Intercalacion
Publicado por Patricia (6 intervenciones) el 18/10/2006 01:34:35
Al momento de correr el procedimiento en Sql Server obtengo el siguiente error
Servidor: mensaje 446, nivel 16, estado 9, procedimiento Report_prueba, línea 370
No se puede resolver el conflicto de intercalación para el operador equal to.
Detectamos que aparece al nivel del update en la clausula where en la ultima condicion.
UPDATE #AUXILIAR
SET Infomacion = ISNULL((SELECT SUM(ROUND(T2.IMPORTE,2))
FROM REC_HISTO T2, UBICACION T3, REG_IMSS T4
WHERE T2.CLA_EMP = 2
AND T2.CLA_TRAB = t1.clatrab
AND T2.CLA_PER IN (515,537,540)
AND T2.NOMINA Between @nNumNominaIni and @nNumNominaFin
AND T2.CLA_EMP = T3.CLA_EMP
AND T2.CLA_UBI = T3.CLA_UBI
AND T3.REG_IMSS = T4.REG_IMSS
/* Aqui */ AND t4.NUM_IMSS = t1.ImssEmp
group by t4.NUM_IMSS),0)
FROM #AUXILIAR t1
De hecho lo corri con valores por default y ahi si lo hace. Pero al momento de ejecutarlo toralmente consigo el error.
El valor de informacion es float al igual que el del importe.
El valor de t4.NUM_IMSS es char(16) al igual que t1.RegImssEmpresa
NO entiendo en que parte se esta haciendo bolas.
Ojala puedan ayudarme.
Saludos.
Servidor: mensaje 446, nivel 16, estado 9, procedimiento Report_prueba, línea 370
No se puede resolver el conflicto de intercalación para el operador equal to.
Detectamos que aparece al nivel del update en la clausula where en la ultima condicion.
UPDATE #AUXILIAR
SET Infomacion = ISNULL((SELECT SUM(ROUND(T2.IMPORTE,2))
FROM REC_HISTO T2, UBICACION T3, REG_IMSS T4
WHERE T2.CLA_EMP = 2
AND T2.CLA_TRAB = t1.clatrab
AND T2.CLA_PER IN (515,537,540)
AND T2.NOMINA Between @nNumNominaIni and @nNumNominaFin
AND T2.CLA_EMP = T3.CLA_EMP
AND T2.CLA_UBI = T3.CLA_UBI
AND T3.REG_IMSS = T4.REG_IMSS
/* Aqui */ AND t4.NUM_IMSS = t1.ImssEmp
group by t4.NUM_IMSS),0)
FROM #AUXILIAR t1
De hecho lo corri con valores por default y ahi si lo hace. Pero al momento de ejecutarlo toralmente consigo el error.
El valor de informacion es float al igual que el del importe.
El valor de t4.NUM_IMSS es char(16) al igual que t1.RegImssEmpresa
NO entiendo en que parte se esta haciendo bolas.
Ojala puedan ayudarme.
Saludos.
Valora esta pregunta


0