DisplayUserListAttr: String;
Свойство DisplayUserListAttr определяет значение параметра «DISPLAYUSERLISTATTR» в строке связи.
Параметр «DISPLAYUSERLISTATTR» определяет пользовательское наименование всех уровней справочника в раскрывающемся списке ячейки таблицы.
Значение параметра задаётся в строке связи с помощью свойства DisplayUserListAttr или вручную в формате:
DISPLAYUSERLISTATTR="VALUE"
Где:
VALUE. Значение параметра. В качестве значения параметра можно использовать шаблоны доступных атрибутов справочника. Например:
%NAME%. Наименование элемента;
%ID%. Идентификатор элемента.
В окне «Параметры редактора значений» значение данного параметра задаётся с помощью параметра «Пользовательское наименование всех уровней».
Для выполнения примера предполагается наличие в репозитории регламентного отчёта с идентификатором REGULAR_REPORT и справочника с идентификатором DIMENSIONS.
Добавьте ссылки на системные сборки: Metabase, Report, Tab, ForeSystem.
Sub UserProc;
Var
MB: IMetabase;
Report: IPrxReport;
BM: IBindingManager;
DimComboBinding: IBindingDimCombo;
Tab: ITabSheet;
Style: ITabCellStyle;
Binding: IBindingValue;
Begin
// Получим текущий репозиторий
MB := MetabaseClass.Active;
// Получим регламентный отчёт
Report := MB.ItemById("REGULAR_REPORT").Edit As IPrxReport;
// Получим стиль ячейки в левом верхнем углу активного листа отчёта
Tab := (Report.ActiveSheet As IPrxTable).TabSheet;
Style := Tab.Cell(0, 0).Style;
// Создадим и настроим редактор значений в виде раскрывающегося списка
BM := New BindingManager.Create;
Binding := BM.CreateByUi("DimCombo");
DimComboBinding := Binding As IBindingDimCombo;
DimComboBinding.Object := "DIMENSIONS";
DimComboBinding.DisplayUserListAttr := "%NAME%";
Style.Binding := DimComboBinding.AsString;
// Сохраним изменения
(Report As IMetabaseObject).Save;
End Sub UserProc;
После выполнения примера в регламентном отчёте для ячейки А0 будет задан редактор значений в виде раскрывающегося списка справочника с пользовательским наименованием всех уровней справочника «%NAME%».
См. также: