我一直在浏览这个网站,试图弄清楚如何编写表达式或创建计算字段来构建饼图或图表。我需要做的是计算to字段之间的差异,并按标准对它们进行分组。在这种情况下,我们正在测量单元何时到达以及何时被调度的调度性能。
Count(
iif(Fields!Ship_Date_Only.Value - Fields!Book_Date_Only.Value >= 5
,1))我确信我没有正确地格式化它。
所以我需要计数和分组,当差值是
1-3 days = group 1
4-5 days = group 2
6+ days = group 3这些组将出现在图表中,并且可能还需要占所有发货量的百分比。
这有意义吗?
发布于 2020-11-13 03:04:46
您可以在组表达式中的单个表达式中完成所有这些操作,但我会避免这样做,因为这会使调试变得更加困难。
就我个人而言,我会分两步完成这项工作。
由于我不知道您的数据库是什么样子,我将展示一个示例,说明如何将其作为计算字段添加到您的数据集中。
转至数据集属性,单击字段选项卡,然后单击Add=>Calculated字段
为字段指定一个名称,例如gap,并将表达式设置为类似于
=DateDiff(DateInterval.Day, Fields!Book_Date_Only.Value, Fields!Ship_Date_Only.Value)这将为您提供两个日期之间的天数,然后您可以使用该天数在图表中分组。
在饼图中,将Category Group的"Group Expression“设置为以下表达式
=SWITCH(
Fields!gap.Value > 6, "group 3",
Fields!gap.Value > 4, "group 2",
Fields!gap.Value > 1, "group 2",
True, "less than 1"
)由于switch在返回True的第一个表达式处停止,因此我们必须以相反的顺序列出它们。最终的True, "less than 1"用于捕获未落入任何其他组的任何内容。您可以将返回的值设置为任何值,即使是空字符串或Nothing,只要您希望结果为空。
最后,将Category Group的标签表达式设置为与上面相同。
应该就是这样了。
https://stackoverflow.com/questions/64807413
复制相似问题