0
SQL Server에서 완벽하게 실행되는 sql 코드가 있는데 SSRS에서 실행할 때 잘 실행되지만 변수에 상수 값을 대입하면 아무 것도 반환하지 않습니다. 값.SSRS에서 t sql 피벗 테이블을 사용하는 동안 오류가 발생했습니다.
이것은 내가 사용하고있는 코드입니다.
------LISTADO DE calificaciones de ESTUDIANTES
DECLARE @PivotColumnHeaders VARCHAR(MAX)
SELECT @PivotColumnHeaders =
COALESCE(
@PivotColumnHeaders + ',[' + cast(Codigo as varchar) + ']',
'[' + cast(Codigo as varchar)+ ']'
)
FROM RubroCalificaciones
inner join RubrosMetodosEvaluacion on RubroCalificaciones.IdRubro = RubrosMetodosEvaluacion.IdRubro
inner join MetodosEvaluacion on RubrosMetodosEvaluacion.IdMetodoEvaluacion = MetodosEvaluacion.IdMetodoEvaluacion
inner join AsignacionesMetodosEvaluacion on AsignacionesMetodosEvaluacion.IdMetodoEvaluacion = MetodosEvaluacion.IdMetodoEvaluacion
where AsignacionesMetodosEvaluacion.IdGrupo = @IdGrupo--293856
DECLARE @PivotTableSQL NVARCHAR(MAX)
SET @PivotTableSQL = N'
SELECT *
FROM (
select Estudiantes.Matricula, Personas.Nombres, Personas.Apellido1, personas.Apellido2,
RubroCalificaciones.Codigo, CalificacionesDetalle.PuntosAsignados
from Matriculas
inner join Personas on Matriculas.IdPersona = Personas.IdPersona
inner join Estudiantes on Matriculas.IdPersona = Estudiantes.IdPersona
inner join AsignacionesMetodosEvaluacion on Matriculas.IdGrupo = AsignacionesMetodosEvaluacion.IdGrupo
inner join MetodosEvaluacion on AsignacionesMetodosEvaluacion.IdMetodoEvaluacion = MetodosEvaluacion.IdMetodoEvaluacion
inner join RubrosMetodosEvaluacion on MetodosEvaluacion.IdMetodoEvaluacion = RubrosMetodosEvaluacion.IdMetodoEvaluacion
inner join RubroCalificaciones on RubroCalificaciones.IdRubro = RubrosMetodosEvaluacion.IdRubro
left outer join CalificacionesDetalle on CalificacionesDetalle.IdRubro = RubrosMetodosEvaluacion.IdRubro and
CalificacionesDetalle.IdMetodoEvaluacion = RubrosMetodosEvaluacion.IdMetodoEvaluacion
and CalificacionesDetalle.IdMatricula = Matriculas.IdMatricula
where Matriculas.IdGrupo = @IdGrupo--293856
) AS PivotData
PIVOT (
max(PuntosAsignados)
FOR Codigo IN (
' + @PivotColumnHeaders + '
)
) AS PivotTable
'
EXECUTE(@PivotTableSQL)
는 동적 SQL로 무엇을 의미합니까?, 나는 코드의 하단을 참조 매개 변수 값 – Carlos
@Carlos를 보낼 것입니다 응용 프로그램이 있습니다. 동적 SQL에 @IdGrupo가 있으며 값이 주어지지 않았습니다. 당신은'sp_ExecuteSQL'을 사용하고 @IdGrupo 값을 동적 SQL에 전달해야합니다. – RichardTheKiwi
예, 알지만 매개 변수입니다. – Carlos