Пустой параметр в подчиненном отчете приводит к сбою подчиненного отчета - PullRequest
0 голосов
/ 08 февраля 2011

Я использую активные отчеты версии 3.2

У меня есть отчет с подотчетом A. Внутри подотчета A есть подотчет B.

Отчет передает параметр X в подотчет A Subотчет A передает параметр Y подотчет B

Если результат подотчета A пуст, тогда B завершается с ошибкой нулевого исключения при выполнении некоторого регулярного выражения.

Я попытался несколько способов исправить это.

Я добавил параметр по умолчанию, но он все еще не работает.<% 'OtherModuleRef' | Введите модуль | '00000000-0000-0000-0000-000000000000' | S | False%>

Я изменил SQL, чтобы обнаружить ноль и сформировать правильный запрос.Это также не помогает.

Что еще можно попробовать?

1 Ответ

0 голосов
/ 15 февраля 2011

Я не мог найти хороший способ исправить это. Я изобрел обходной путь.

В первом подотчете к событию «Нет данных» добавьте поле, в котором нуждается подпотчет, и установите для него «нулевое» значение. Отчет будет работать как обычно, если есть данные, и работать, если в подотчете нет данных.

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