SQL Server - error de en set

 
Vista:

error de en set

Publicado por Beto_22 (23 intervenciones) el 02/05/2007 21:18:14
hola amigos tengo el siguiente problema :

CREATE PROCEDURE UPDATEMOVPORNFACTU
(@DOC1 nvarchar(6), @NFACTU NVARCHAR(10), @TABLA NVARCHAR(8), @IDASEG NVARCHAR(1), @IGV1 NVARCHAR(1))
as
/*...................... igv1 = 1 afecto al igv,,,,,,,,,,,, igv1 = 0 no afecto al igv*/
/*...................... IDASEG = 0 cubierto por aseguradora,,,,,,,,,,,, IDASEG = 1 para el paciente no cubierto por aseguradora*/
/*--------------------- farmacia cubierta afecta al igv*---------------------*/
else if (@IGV1='1') AND (@IDASEG='0') begin EXECUTE ('UPDATE fmovimie
SET nro_docu = '+@NFACTU+'
FROM fmovimie m, '+@tabla+' f
WHERE m.codt = f.codt and m.doc1 = '+@DOC1+' and f.igve = ''1'' and m.idem = ''35'' and m.afectmd = ''1''')
end

al ejecutar este procedimiento me sale El nombre de columna '+@NFACTU+' no es válido.
el cual lo mando como parametro para que actualice.
bueno eso estodo espero me puedan ayudar
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:error de en set

Publicado por Isaías (3308 intervenciones) el 03/05/2007 00:24:39
¿Enviste todo tu store?, no veo nada claro tu codigo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:error de en set

Publicado por bearu (12 intervenciones) el 04/05/2007 10:20:40
Si he entendido bien el código que envías, creo que el problema puede ser que en el set, si nro_docu es un varchar, para asignarle un valor, éste ha de llevar comillas. Sino lo que hace es buscar una columna con ese nombre. No sé si me explico...
Vaya, creo que lo correcto sería esto:

EXECUTE ('UPDATE fmovimie
SET nro_docu = '''+@NFACTU+'''
FROM fmovimie m, '+@tabla+' f
WHERE m.codt = f.codt and m.doc1 = '+@DOC1+' and f.igve = ''1'' and m.idem = ''35''
and m.afectmd = ''1''')

Espero que te sirva :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar