我在报表生成器中创建了一个报表,我的用户希望将其导出到Excel以执行行操作。他们要求每一行都完全填入数据。就像现在一样,分组列只有第一行的数据,然后其余为空白。
我试过根本不对它进行分组。但这不起作用。
看起来与此相似。
风格 ----------------- 尺寸
Classic Chique -----小号
-----------------------媒体
--------------------------大
现代时尚---- XSmall
我希望它能说出“Classic Chique”在与该风格有关的每一行和与它有关的每一行的“Modern Chique”。
但是我不知道如何在Report Studios上做到这一点。
有什么建议吗?
(我不能发布图片,因为我没有足够好的声誉)
答案 0 :(得分:1)
我想我知道你在说什么。如果您有内部联接正在消除某些行操作的实例,则可以将它们更改为左联接并始终在TSQL中包含行值。我希望这是你正在做的事情,这是一个简单的例子,说明我如何处理一个在矩阵环境中没有订单的人的问题。
declare @Person Table ( personID int identity, person varchar(8));
insert into @Person values ('Brett'),('Sean'),('Chad'),('Michael');
declare @Orders table ( OrderID int identity, PersonID int, Desciption varchar(32), Amount int);
insert into @Orders values (1, 'Shirt', 20),(2, 'Shirt', 22),(3, 'Shirt', 20);
Select
person
, OrderID
, Desciption
, Amount
from @Person p
join @Orders o on p.personID = o.PersonID
-- versus showing the person with no orders in a matrix environment where
-- the 'Person' should be shown on the row
Select
person
, isnull(OrderID, '') as OrderID
, isnull(Desciption, 'N/A') as Description
, isnull(Amount, '0') as Amount
from @Person p
left join @Orders o on p.personID = o.PersonID
编辑:
如果您正在描述重复的行,那么我只会将该行放在任何内容的父组中,因为它会出现正在发生的事情。如果您想要每行重复一个组头,那么它就不再是一个分组了。只需从“行组”中删除分组,然后将该列名称放在行项目明细中。
答案 1 :(得分:0)
我遇到了类似的问题,我创建了一个我无法避免的小组,因为我需要在该小组的每个成员之间打破页面,但后来我在其下面创建了第二个小组并将其分组。我想要显示的其他项目,按照我想要显示的顺序。这具有为每个组合创建一条总和的效果。到现在为止还挺好。然后我在列的右侧添加了一个包含组中第一个字段的列,但是我向右移动了一列并且在组外面。我对分组值中包含的每个值重复此操作。结果是每行显示一次,使其成为导出到Excel的良好候选者。
(我们都知道财务类型总是将我们提供的内容导出到Excel!)
我希望我可以包含rdl代码,但我关心的是分享任何工作产品。
乔伊