reporting services-排序表达式中的字段验证错误



我的tablix中的排序公式有问题。排序始终如下:

cint(Fields!KeyForRows.Value)

但现在字段可以包含字母数字值。所以我试着把它改成:

iif(Parameters!DrillMain.Value ="...", Fields!KeyForRows.Value, cint(Fields!KeyForRows.Value))

但这行不通。据我所知,这是因为我的案例排序Fields!KeyForRows.Value,它检查条件的另一部分,但在验证时失败,我需要将排序保留为整数。

是的,iif逻辑是正确的,它计算两个语句。作为一种变通方法,您可以定义您的自定义IIF或按照以下方式编写表达式:

IIF(Parameters!DrillMain.Value ="...", Fields!KeyForRows.Value, 
          cint(IIF(Parameters!DrillMain.Value ="...", Nothing, Fields!KeyForRows.Value)))

感谢第二个嵌套的iif,您永远不会将无效数据传递到CInt函数中。如果KeyForRows是字母,则在CInt中传递Nothing而不是KeyForRow值。

相关内容

  • 没有找到相关文章

最新更新