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

发布于 2024-10-16 12:04:25 字数 337 浏览 6 评论 0原文

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

我有一个包含子报告 A 的报告。 子报表A内部有子报表B。

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

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

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

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

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

我还能尝试什么?

I am using active reports version 3.2

I have a report with sub report A.
Inside sub report A there is sub report B.

Report passes parameter X to sub report A
Sub report A passes parameter Y sub report B

If the result of subreport A is empty then B fails throwing a null exception error while doing some regex.

I have tried several methods to fix this.

I have added a default parameter, this still fails.
<%'OtherModuleRef'|Enter a module|'00000000-0000-0000-0000-000000000000'|S|False%>

I have changed the SQL to detect a null and generate a valid query.
This also fails.

What else can I try?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

水染的天色ゝ 2024-10-23 12:04:25

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

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

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

I could not find a good way of fixing this.
Tho I did invent a workaround.

In the first sub report, on the no data event add the field the sub-sub report needs and set it to a "null" value. The report will work as normal if there is data and work if there is no data in the sub report.

Sub ActiveReport_NoData
    rpt.Sections("Detail1").Visible = False
    rpt.Fields.Add("OtherModuleRef")
    rpt.Fields("OtherModuleRef").Value = "00000000-0000-0000-0000-000000000000"
End Sub
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文