充分利用 SQL Server Reporting Services 图表
2008-09-09 10:03:01 来源:WEB开发网假设我们再添加一个名为 Budget 的图表值。使用与上一示例相同的数据,所生成的标签将如表 2 所示。
注意 通过将组标签表达式设置为返回空字符串 (=""),可隐藏层次结构中的单个内部级别。这将从生成的图例标签中删除该组级别。
空数据点和标签
以下情况您可能会觉得很熟悉。您构建了一个具有一个数据系列的图表,数据点标签已打开,此图表看上去很好。您决定添加一个动态系列组以便该图表显示多个数据系列。可此时该图表却具有额外标签(用于空数据点)。
在底层数据集对每个系列/类别组合都不包含数据值时,会出现空数据点。此图表实质上等同于一个具有空单元的(稀疏)矩阵。
可删除空数据点的标签。使用此白皮书随附的 EmptyDataPointLabels 示例报表中所示的方法(另请参阅图 7),而不打开数据点标签和使用默认标签。以下是执行此操作的示例代码。
1.使用 Count(…) 函数确定为此数据点聚合多少底层数据集行。如果计数为零,则这是个空数据点。通过实际的标签值将计算值传入自定义代码函数:
=Code.GetLabel(Avg(Fields!UnitsInStock.Value), Count(Fields!UnitsInStock.Value))
2.打开“报表属性”对话框,然后单击“代码”选项卡。在“自定义代码”选项中添加以下 GetLabel(…) 自定义代码函数。
Public Function GetLabel(ByVal datapointValue As Double, ByVal count As Integer) As String
If count = 0 Then
Return " "
Else
Return Format(datapointValue, "N1")
End If
End Function
更多精彩
赞助商链接