如何在 table header 的顶部而不是在 rdlc 的左侧按列显示分组
How to show group by columns on top of the table header instead of on the left in rdlc
我有一个包含 EmpType(完整 Time/Part 时间等)、EmpLocation(Redmond/Seatle/Washington 等)、EmpBand(S/T/E 等)、EmpId、EmpName、EmpFullAddress、EmpContactNo 列的报告,EmpSal,EmpGender,EmpDob.
我们需要按 EmpType、EmpLocation、EmpBand 列对数据进行分组,然后将其余列显示为数据。
我可以使用 rdlc 报告的按功能分组,首先按 EmpType 分组,然后按 EmpLocation 作为其 child 和 EmpBand 作为 EmpLocation 的 child 组,但这三个值出现在左侧作为一棵树。
但我想要的是将这三个字段显示在每个 table 之上作为
像 header 数据 header 顶部的东西 table 而不是左边的树。
是否可以像下面这样显示它们?
EmpType: Full Time EmpLocation: Seatle EmpBand: S
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
EmpType: Full Time EmpLocation: Seatle EmpBand: T
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
EmpType:全职 EmpLocation:Redmond EmpBand:S
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
EmpType:全职 EmpLocation:西雅图 EmpBand:S
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
EmpType:兼职 EmpLocation:西雅图 EmpBand:S
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
是的,这绝对有可能。但是,您不希望它在层次结构中对这三列进行分组(至少,正如我所设想的那样,这似乎不正确)。
你真正想要做的是对三个变量的组合进行分组(见下面的截图)。或者,您可以创建一个表达式,它创建一个字符串来分组:
=Fields!Field1.Value & "-" & Fields!Field2.Value & "-" & Fields!Field3.Value
无论采用哪种方式,您都需要设置排序以按所需顺序排列组。
还应注意,每当您 添加 一个 parent 行组时,都会添加一列。您可以删除已添加的列,并在出现提示时 select "Delete Columns Only"。这将使该组保留在层次结构中的位置,但会删除多余的列。
完成后,您可以执行以下操作以获得您想要的结果:
Right-click 在您的详细信息行上,然后选择插入行 => 外部组 - 上方。将您的行 header 移至这个新创建的行。
Right-click 在您刚刚创建的行上,然后选择插入行 => 内部组 - 上方。
合并第 2 步中创建的行中的所有单元格。
在步骤 2 中创建的行中的单个单元格中添加一个占位符。设置占位符的表达式以创建所需的组 header:
="EmpType: " & Fields!EmpType.Value & " EmpLocation: " & Fields!EmpLocation.Value & " EmpBand: " & Fields!EmpBand.Value
瞧!你应该有你想要的结果。如果您有任何疑问或问题,请发表评论,我会尽力提供帮助。
基于评论的其他详细信息
当 Tablix 跨页时,您能否在新页面上重复 header?明确地。为此,请访问高级模式以查看行详细信息。在高级模式中单击与 tablix 中包含 header.
的行相对应的行
在 tablix 属性下,在 header 的情况下,将“与组保持一致”更改为“"After"”,并将“在新页面上重复”更改为“真”。
你能显示整个组的工资总和吗?是的你可以。您想要在底部添加一个新行并对默认范围的所需字段求和。
Right-click 在您的详细信息行上并选择插入行 => 外部组 - 下方.
使用以下表达式在此行中创建总计:
=SUM(字段!Salary.Value)
请注意,我没有为聚合指定范围或数据集。只要表达式位于组内(无论是细节组还是其他组),如果未提供 scope/dataset,它将默认为当前范围。这应该会给你你想要的总数。
当你说"if I want only the table with its header to repeat under the same group header for different values of EmpBand S/T/E, can I do that ?"时,我不明白你的意思。
编码愉快!
我有一个包含 EmpType(完整 Time/Part 时间等)、EmpLocation(Redmond/Seatle/Washington 等)、EmpBand(S/T/E 等)、EmpId、EmpName、EmpFullAddress、EmpContactNo 列的报告,EmpSal,EmpGender,EmpDob.
我们需要按 EmpType、EmpLocation、EmpBand 列对数据进行分组,然后将其余列显示为数据。
我可以使用 rdlc 报告的按功能分组,首先按 EmpType 分组,然后按 EmpLocation 作为其 child 和 EmpBand 作为 EmpLocation 的 child 组,但这三个值出现在左侧作为一棵树。
但我想要的是将这三个字段显示在每个 table 之上作为 像 header 数据 header 顶部的东西 table 而不是左边的树。
是否可以像下面这样显示它们?
EmpType: Full Time EmpLocation: Seatle EmpBand: S
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
EmpType: Full Time EmpLocation: Seatle EmpBand: T
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
EmpType:全职 EmpLocation:Redmond EmpBand:S
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
EmpType:全职 EmpLocation:西雅图 EmpBand:S
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
EmpType:兼职 EmpLocation:西雅图 EmpBand:S
EmpId | Emp Name | EmpFullAddress | EmpContactNo | EmpSal |EmpGender |EmpDob
100 Kris 40 Drealand ave 7417894561 74000 M 15/4/1985
是的,这绝对有可能。但是,您不希望它在层次结构中对这三列进行分组(至少,正如我所设想的那样,这似乎不正确)。
你真正想要做的是对三个变量的组合进行分组(见下面的截图)。或者,您可以创建一个表达式,它创建一个字符串来分组:
=Fields!Field1.Value & "-" & Fields!Field2.Value & "-" & Fields!Field3.Value
无论采用哪种方式,您都需要设置排序以按所需顺序排列组。
还应注意,每当您 添加 一个 parent 行组时,都会添加一列。您可以删除已添加的列,并在出现提示时 select "Delete Columns Only"。这将使该组保留在层次结构中的位置,但会删除多余的列。
完成后,您可以执行以下操作以获得您想要的结果:
Right-click 在您的详细信息行上,然后选择插入行 => 外部组 - 上方。将您的行 header 移至这个新创建的行。
Right-click 在您刚刚创建的行上,然后选择插入行 => 内部组 - 上方。
合并第 2 步中创建的行中的所有单元格。
在步骤 2 中创建的行中的单个单元格中添加一个占位符。设置占位符的表达式以创建所需的组 header:
="EmpType: " & Fields!EmpType.Value & " EmpLocation: " & Fields!EmpLocation.Value & " EmpBand: " & Fields!EmpBand.Value
瞧!你应该有你想要的结果。如果您有任何疑问或问题,请发表评论,我会尽力提供帮助。
基于评论的其他详细信息
当 Tablix 跨页时,您能否在新页面上重复 header?明确地。为此,请访问高级模式以查看行详细信息。在高级模式中单击与 tablix 中包含 header.
的行相对应的行在 tablix 属性下,在 header 的情况下,将“与组保持一致”更改为“"After"”,并将“在新页面上重复”更改为“真”。
你能显示整个组的工资总和吗?是的你可以。您想要在底部添加一个新行并对默认范围的所需字段求和。
Right-click 在您的详细信息行上并选择插入行 => 外部组 - 下方.
使用以下表达式在此行中创建总计:
=SUM(字段!Salary.Value)
请注意,我没有为聚合指定范围或数据集。只要表达式位于组内(无论是细节组还是其他组),如果未提供 scope/dataset,它将默认为当前范围。这应该会给你你想要的总数。
当你说"if I want only the table with its header to repeat under the same group header for different values of EmpBand S/T/E, can I do that ?"时,我不明白你的意思。
编码愉快!