子报告中的空参数导致子子报告失败

时间:2011-02-08 03:17:07

标签: activereports

我正在使用活动报告版本3.2

我有子报告A的报告。 在子报告A内有子报告B。

报告将参数X传递给子报告A. 子报告A传递参数Y子报告B

如果子报表A的结果为空,则B在执行某些正则表达式时无法抛出空异常错误。

我尝试了几种方法来解决这个问题。

我添加了默认参数,但仍然失败。 <%'OtherModuleRef'|输入模块|'00000000-0000-0000-0000-000000000000'| S | False%>

我更改了SQL以检测null并生成有效查询。 这也失败了。

我还能尝试什么?

1 个答案:

答案 0 :(得分:0)

我找不到解决这个问题的好方法。 我确实发明了一种解决方法。

在第一个子报告中,在无数据事件上添加子子报告所需的字段并将其设置为“空”值。如果有数据则报告将正常工作,如果子报告中没有数据,则报告可以正常工作。

Sub ActiveReport_NoData
    rpt.Sections("Detail1").Visible = False
    rpt.Fields.Add("OtherModuleRef")
    rpt.Fields("OtherModuleRef").Value = "00000000-0000-0000-0000-000000000000"
End Sub