MVC报告查看器未显示动态透视

时间:2016-03-09 20:13:06

标签: sql-server asp.net-mvc reporting-services pivot-table reportviewer

我是MVC的新手,我需要使用Report Viewer进行报告,使用普通查询(我正在使用SQL Server 2014)相当容易。当我需要报告动态数据透视查询时,问题出现了,它叫做reporteNomina。

使用普通查询时,TableAdapter助手会显示其列,但使用我的数据透视表时,它不会显示任何列。

当我需要配置报告的数据时,它不会显示查询的列。

我该怎么办?是否有另一种方法可以使用动态列查询生成报告。

这是我的支点

DECLARE @cols AS NVARCHAR(MAX),
        @query AS NVARCHAR(MAX)

--select @cols = STUFF((SELECT ',' + QUOTENAME(nombre) from Entidad  FOR XML PATH(''), TYPE
--                  ).value('.', 'NVARCHAR(MAX)') 
--                  ,1,1,'');

select 
    @cols = STUFF((SELECT ',' + QUOTENAME(nombre) 
                   FROM Entidad                
                   FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '')

set @query = 'SELECT persona, vinculo,' + @cols + ' from 
         (
            SELECT p.primerNombre as persona, v.idVinculo as vinculo, e.nombre as nombre, d.valor as valor
            FROM Vinculo v 
            JOIN Persona p on v.numeroIdentificacion = p.numeroIdentificacion
            JOIN Nomina n on v.idVinculo = n.idVinculo
            JOIN Deduccion d on n.idNomina = d.idNomina
            JOIN Obligacion o on o.idObligacion = d.idObligacion
            JOIN Entidad e on e.nit = o.nitEntidad
            where n.idPeriodo = 2

        ) x
        pivot 
        (
            sum(valor)
            for nombre in (' + @cols + ')
        ) p ';

execute(@query) 

谢谢。

0 个答案:

没有答案