Имя: Пароль:
1C
1С v8
Странно работает УстановитьПараметрыФункциональныхОпцийИнтерфейса()
,
0 eeyore
 
15.07.14
13:03
Помогите разобраться.

Есть форма констант. В ней такой код:

&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
    УстанавливаемыеПараметры = Новый Структура("спрМакс", НаборКонстант.КонстантаМакс);
    УстановитьПараметрыФункциональныхОпцийИнтерфейса(УстанавливаемыеПараметры);
КонецПроцедуры

Здесь: "спрМакс" - имя параметра функциональной опции, КонстантаМакс - моя константа соответствующего типа.

Запускаю 1с, открываю форму констант устанавливаю КонстантаМакс в такое значение при котором функциональная опция будет ОТКЛЮЧЕНА, нажимаю "Записать и закрыть", снова открываю форму констант устанавливаю КонстантаМакс в такое значение при котором функциональная опция будет ВКЛЮЧЕНА, нажимаю "Записать и закрыть". Открываю отчет на который влияет функциональная опция. Отчет формируется автоматически(у него в коде прописано Параметры.СформироватьПриОткрытии = Истина;) так, как если бы функциональная опция была ОТКЛЮЧЕНА. Почему так происходит?

Конфигурация доступна для скачивания по ссылке http://www.fayloobmennik.net/3949249
Зайти под Администратором, пароля нет. В режиме 1с предприятие форма констант открывается через пункт меню "Сервис->Константа макс". Выбрать сначала "нет", записать, потом выбрать "да", записать. После чего открыть отчет "Остатки номенклатуры1". В результате в отчете будет всего одна колонка, а их должно быть много. Такая вот фигня получается.
1 shuhard
 
15.07.14
13:04
(0) НаборКонстант.КонстантаМакс.Получить
2 eeyore
 
15.07.14
13:12
(1) Получить зачем надо писать? НаборКонстант.КонстантаМакс - имеет тип "СправочникСсылка.СправочникМакс"
3 hhhh
 
15.07.14
13:19
(2) чтобы получить значение константы надо написать Получить(). Чтобы установить значение константы надо написать установить(). Ну начинайте уже документацию читать.
4 shuhard
 
15.07.14
13:22
(2) потому что константа не может хранить в себе более одного значения

УстановитьПараметрыФункциональныхОпцийИнтерфейса (SetInterfaceFunctionalOptionParameters)
Синтаксис:

УстановитьПараметрыФункциональныхОпцийИнтерфейса(<УстанавливаемыеПараметры>, <СбрасываемыеПараметры>)
Параметры:

<УстанавливаемыеПараметры> (обязательный)

Тип: Структура.
Структура, определяющая значения параметров. Ключ элемента структуры задает имя параметра, соответствующее имени одному из объектов метаданных типа ПараметрФункциональныхОпций. Значение элемента структуры содержит значение параметра.
<СбрасываемыеПараметры> (необязательный)

Тип: Массив; Строка.
Сбрасываемые параметры функциональных опций.
Могут задаваться строкой (имена опций указываются через запятую) или массивом строк имен параметров функциональных опции, значения которых необходимо сбросить.
Описание:

Устанавливает параметры функциональных опций, действие которых будет распространяться на командный интерфейс и рабочий стол. Вызывает автоматическое обновление интерфейса (включая рабочий стол).
Параметры функциональных опций позволяют определить, как отобрать значения функциональной опции, привязанной к реквизиту справочника или ресурсу регистра сведений, то есть в случае, когда в одном объекте может храниться набор значений опций.
При привязке функциональной опции к ресурсу периодического регистра сведений, если период в параметрах не указывается, значение выбирается как срез последних на текущую дату. А если есть параметр Период (Period), то он используется как дата, на которую будет взят срез.

Доступность:

Тонкий клиент, веб-клиент, толстый клиент.
Примечание:

Несмотря на то, что можно изменить параметры выборочно, рекомендуется групповая установка одним вызовом, так как эта операция выполняется эффективнее.
5 eeyore
 
15.07.14
13:44
(3) Написал так:
НаборКонстант.КонстантаМакс.Получить();

при выполнении возникает ошибка: "Метод объекта не обнаружен (Получить)"
6 eeyore
 
15.07.14
13:47
(3) Получить надо писать для КонстантаМенеджер.<Имя константы>
а у меня КонстантыНабор
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.