Редактирование отчета с проверкой типa значения параметра

Параметры принимают значения различных типов. При открытии отчета с типом отображения параметра «Раскрывающийся список справочника» из Fore необходимо проверять тип значения параметра для работы со значением элемента управления. В раскрывающемся списке элемента управления осуществляется как единичная отметка, так и множественная. Из-за неточного количества отмеченных элементов и несовпадения типов данных может возникнуть ошибка.

Рассмотрим пример открытия регламентного отчета на редактирование с проверкой типa значения параметра в виде массива.

Для выполнения примера предполагается наличие регламентного отчета, в котором добавлен параметр объекта с идентификаторм «ITEM» и отображением раскрывающегося списка справочника. Создайте обработчик событий в модуле Fore. Для события OnBeforeOpenReport, происходящего перед открытием регламентного отчета, добавьте проверку типа значения параметра. Подключите системные сборки: Metabase, Report.

Public Sub OnBeforeOpenReport(Report: IPrxReport; Var Cancel: Boolean);
Var
    Rep: IMetabaseObjectInstance;
    Value: IMetabaseObjectParamValue;
Begin
    Rep := Report.MetabaseObjectInstance;
    If Rep <> Null Then
       Value := Rep.ParamValues.FindById("ITEM");
       (Report.ActiveSheet As IPrxTable).TabSheet.CellValue(00) := Value.IsArray ? "ARRAY!" : Value.Value;
    End If;
End Sub OnBeforeOpenReport;

После выполнения примера, при открытии регламентного отчета, появится диалог с выбором параметра в списке заданного справочника:

В первой ячейке регламентного отчета будет отображаться значение выбранного параметра.

См. также:

Примеры