後來發現因為是 List 和 Tablix 資料列群組 (Row Group) 內預設有個明細資料 (Detail Row),因為兩個 Detail Row 才導致報表無法 Render
該筆記就是要把 List 內 Detail Row 轉為 Group Row 當成報表頭,List 內的 Tablix Detail Row 來呈現資料當成報表身,以此來呈現 AdventureWorks2025 內的訂單報表 (Master-Detail)
AsventureWorks2025 資料存取
只抓取兩筆訂單資料
SELECT
soh.SalesOrderNumber,
soh.OrderDate,
sod.OrderQty,
sod.UnitPrice,
sod.LineTotal,
p.ProductNumber,
p.[Name] AS ProductName
FROM Sales.SalesOrderHeader AS soh
INNER JOIN Sales.SalesOrderDetail AS sod ON soh.SalesOrderID = sod.SalesOrderID
INNER JOIN Production.[Product] AS p ON sod.ProductID = p.ProductID
WHERE soh.SalesOrderID IN (43659 , 75123)
把 List Detail Row 轉為 Group Row
兩種方式有可以達到
- 直接把 Detail Row 轉為 Group Row
- 在 Detail Row 上建立父群組後,再把 Detail Row 刪除
Detail Row => 滑鼠右鍵 => 群組屬性 群組屬性 => 一般內進行修改
- 名稱:修正為 grpSalesOrderNumber,建議要修改,避免還是維持 Detail 預設名稱,但實際是進行 Group 行為
- 群組運算式:把 SalesOrderNumber 欄位加入群組對象
報表執行結果








沒有留言:
張貼留言