Привязать динамический запрос к заполнению GridView или аналогичного элемента управления веб-формы asp.net для отображения результатов на веб-странице - PullRequest
0 голосов
/ 07 октября 2019

У меня есть сводный SQL-запрос, который заполнит таблицу:

DECLARE @cols AS NVARCHAR(MAX),
@query  AS NVARCHAR(MAX)
DECLARE @yearV varchar(max) = '2019'
DECLARE @idclienteV varchar(max) = 1

select @cols = STUFF(
                        (
                            SELECT ',' + QUOTENAME([Y].[FechaPpto]) 
                                FROM [dbo].[Ingresos_Ppto] [Y] 
                                WHERE
                                    ([Y].[IdCliente] = @idclienteV) AND (DATEPART(YEAR, [Y].[FechaPpto]) = @yearV)
                            GROUP BY [Y].[FechaPpto]
                            FOR XML PATH(''), TYPE
                        ).value('.', 'NVARCHAR(MAX)'),1,1,'')

set @query = N'DECLARE @year int = ' + @yearV + ' DECLARE @idc int = ' + @idclienteV + '  SELECT Rubro, ' + @cols + N' FROM 
             (
                SELECT [Y].[Rubro], [Y].[Valor], [Y].[FechaPpto]
                FROM [Ingresos_Ppto] [Y]
                WHERE 
                    ([Y].[IdCliente] = @idc)
                    AND
                    (DATEPART(YEAR, [Y].[FechaPpto]) = @year)
            ) X
            PIVOT
            (
                max(Valor)
                FOR FechaPpto in (' + @cols + N')
            ) p'

EXEC sp_executesql @query;

Результат этого запроса:

Rubro                      | 2019-01      | 2019-02    
+--------------------------+--------------+-------------
Portal web WP              | 9148489.00   | 9172295.00 
Portal web WP + ecommerce  | 3785304.00   | 9140700.00 
Renting tecnológico        | 7223406.00   | 72986693.00
Branding                   | 3280937.00   | 4912017.00
Mercadeo y publicidad      | 3372619.00   | NULL

Мне нужно связать этот результат в asp. net (webforms) Элемент управления GridView или аналогичный, чтобы я мог отобразить его на веб-странице .aspx.

Я не могу напрямую связать столбец дат, поскольку он динамически заполняется. Как я могу связать это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...