пятница, 8 апреля 2011 г.

Ограничение доступности параметра СКД

 В запросах СКД часто встречаются конструкции типа "... Когда &Параметр = Значение(Справочник.ИмяСправочника.ПустаяСсылка)..." при выводе параметров не совсем красиво отображать пустое значение, а когда запретить вывод параметра поставив ограничение доступности не будут отображатся заполненые значения. Решением есть устанавливать ограничение доступности в СКД при компоновке в зависимости от заполнения параметра пользовательских настроек.

Настройки = ЭтотОбъект.КомпоновщикНастроек.Настройки;
Параметр = Настройки.ПараметрыДанных.Элементы.Найти(ИмяПараметра);
ПараметрСКД = ЭтотОбъект.СхемаКомпоновкиДанных.Параметры.Найти(ИмяПараметра);
Если Не (Параметр = Неопределено Или ПараметрСКД = Неопределено) Тогда
    ПараметрСКД.ОграничениеИспользования = Не ЗначениеЗаполнено(Параметр.Значение)
КонецЕсли;

1 комментарий:

  1. Нихера так не получится. Необходимо сделать инициализацию после всего:
    СКД = ОтчетОбъект.СхемаКомпоновкиДанных;
    ОтчетОбъект.КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СКД));

    ОтветитьУдалить