我正在创建一个尝试使用数据集中的字段的变量,但它会抛出错误。 "数据域"是数据集的名称。
=Year(Fields!Year.Value, "DATAFields")-9
错误:
他的报告定义无效。变量表达式 报告' body'直接指的是“年”字段。无 指定数据集聚合。当报告包含多个时 必须包含数据集,数据区域外的字段引用 在指定数据集范围的聚合函数中。
Example
02/02/2015
Output
2007
请有人帮忙......
答案 0 :(得分:1)
我使用了参数来引用。它现在有效。
=Year(Variables!Short_Month.Value)-9
在我使用的文本框中
=Variables!v1.Value & " Total is"
答案 1 :(得分:0)
由于在您的问题中您使用的是数据集名称,我假设您从dataset2调用dataset1。而你正试图从dataset1中的那个字段中获取年份。
这个表达式错了:
=Year(Fields!Year.Value, "DATAFields")-9
你试试这个:
=First(Fields!Year.Value, "DATAFields")
*如果你没有从另一个数据集中调用它,你可以使用:
=Fields!Year.Value
然后重复如何设置日期格式。
*注意:还有另一种方法可以在表达式中设置日期的格式,但对我来说这有点简洁。
更新: 你也可以试试这个:
=Year(First(Fields!DatePreparedBy.Value, "DSBUser"))-9 & " Total is"
答案 2 :(得分:0)
我有同样的问题。 如果报表具有多个数据集,则不能在变量表达式中使用“ first()”函数。
我也不想将值作为参数传递。我最终在与尝试引用的数据相同的数据集中创建了一个计算字段,并且对我有用。