代码之家  ›  专栏  ›  技术社区  ›  Elkvis

RDLC子报表参数未按预期工作

  •  2
  • Elkvis  · 技术社区  · 6 年前

    我在主报表和子报表之间传递参数时遇到一些问题。子报表接受一个参数: TransactionID 事务ID SubreportProcessing 事件处理程序从不激发,当我尝试展开子报表时,调试输出中会出现一条关于空引用异常的消息,但我无法捕获此异常以准确地找出原因 为空。子报表与空引用异常一起显示:

    错误:无法显示子报表

    0 对于 事务ID 子报表处理 为每行激发事件,但结果明显不正确。这让我怀疑 主报表行中的值以某种方式出现 null 当它试图使用它作为一个参数,但我不明白这是怎么发生的,或如何修复它。

    因为文字值 0 工作了,我决定试试 实际报告中的值( 2652791667 Int32 ,我尝试了一个较小的数字,这是有效的。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Elkvis    6 年前

    这个 Int32 问题就是答案。我试着更改子报表的 TransactionID 参数转换为文本,但它显然无法自动转换 事务ID

    最后,我在数据集中添加了一个名为 TransactionIDStr ,并用 TransactionID.ToString() ,现在它的功能完美无瑕。