Hola de nuevo elpaisa:
El error es bastante claro, estás tratando de utilizar una variable que todavía no has declarado. Sinceramente me extraña que no lo pudieras deducir. Compañer@, ya en muchas veces en ese foro hemos dicho lo mismo, pero lo vuelvo a escribir por si no lo sabes: no debes esperar que aquí se te dé una solución que funcione sólo con copiar y pegar, en la mayoría de las veces tendrás que hacer algún tipo de adecuación al código que se ponga para poder adecuarlo a tu escenario real. El foro sirve como una GUÍA, para darte algún tip de lo que tienes que hacer. Si checaste las ligas que te envié, primero tienes que declarar la variable, asignas la sentencia SQL que quieres ejecutar y al final ejecutas.
Código SQL:
Ver originalDECLARE @Insercion nvarchar(150)
SET @insercion='select siPeriod ,ID_Entry ,Concept,ID_Class from CGRANJERO_CONTAB.dbo.C01Entry'
EXEC sp_executesql @insercion
No termino de entender a qué te refieres cuando dices:
Cita: y yo se la asigno dentro del cursor asi
set @insercion='select siPeriod ,ID_Entry ,Concept,ID_Class from CGRANJERO_CONTAB.dbo.C01Entry'
Si tu cursor te sirve para armar la sentencia sql de arriba entonces deber ejecutar el SP_Executesql DESPUÉS DEL CURSOR.
Espero que te sirva de algo la ayuda
Saludos
Leo.