Я новичок в SSRS, и у меня есть один отчет, который должен переключаться между 3 различными запросами в зависимости от того, что пользователь хочет видеть, например, Расходные материалы, Сервис или Всего (оба вместе). Каков наилучший способ сделать это? 1001 *
Запросы ниже:
--Consumables
SELECT COUNT(OrderId) AS [Consumable_Order_Amount],
CONVERT(DATE, DateCreated) AS [Date],
CASE
WHEN orderheader.webref = '' THEN 'Call Centre'
ELSE 'Web'
END AS [Consumable_Order_Type]
FROM OrderHeader
WHERE ( CONVERT(DATE, DateCreated) BETWEEN @StartDate AND @EndDate )
GROUP BY CONVERT(DATE, DateCreated),
CASE
WHEN orderheader.webref = '' THEN 'Call Centre'
ELSE 'Web'
END
--Service
SELECT COUNT(serviceId) AS [Service_Order_Amount],
CONVERT(DATE, DateCreated) AS [Date],
CASE
WHEN serviceorder.webref = '' THEN 'Call Centre'
ELSE 'Web'
END AS [Service_Order_Type]
FROM ServiceOrder
WHERE ( CONVERT(DATE, DateCreated) BETWEEN @StartDate AND @EndDate )
GROUP BY CONVERT(DATE, DateCreated),
CASE
WHEN serviceorder.webref = '' THEN 'Call Centre'
ELSE 'Web'
END
--Total
;
WITH [Total_Order_Amount]
AS (SELECT orderid AS [ID],
datecreated AS [Date],
webref AS [WebRef]
FROM orderheader
UNION
SELECT serviceid AS [ID],
datecreated AS [Date],
webref AS [WebRef]
FROM serviceorder)
SELECT COUNT(id) AS [Service_Order_Amount],
CONVERT(DATE, date) AS [Date],
CASE
WHEN webref = '' THEN 'Call Centre'
ELSE 'Web'
END AS [Service_Order_Type]
FROM [Total_Order_Amount]
WHERE ( CONVERT(DATE, date) BETWEEN @StartDate AND @EndDate )
GROUP BY CONVERT(DATE, date),
CASE
WHEN webref = '' THEN 'Call Centre'
ELSE 'Web'
END