答案 0 :(得分:2)
假设您无法更改存储的proc(如果可以,则可以直接在其中进行此工作)。
DECLARE @RowWidth int = 5
CREATE TABLE #t (GroupLabel CHAR(1), SeatLabel int)
INSERT INTO #t EXEC myStoredProc
SELECT
GroupLabel, SeatLabel
, CEILING((SeatLabel -1) / @RowWidth) AS SeatRow
, (SeatLabel - 1) % @RowWidth as colGrp
FROM #t
如果您存储的proc产生了20个结果(A 1-10和B-10),则结果如下。
添加mtrix控件,然后按GroupLabel和SeatRow分组为行组,然后在colGrp上添加列组。
最终报告的设计看起来像这样(表达式只是将GroupLabel和SeatLabel串联在一起。(=Fields!GroupLabel.Value & Fields!SeatLabel.Value
最终输出看起来像这样
不是100%,但经过一点格式化后,它应该足够接近。