Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Задвоение видов периода в списке выбора общей формы отчета СКД
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Система компоновки данных
Constantus
Приветствую, Форумчане!
Самопис, УФ. Деланная/переделанная УПП с трансформацией на управляемые формы. Досталась в наследство...

Имеется некий отчет на СКД, где есть параметр со стандартным периодом.
Имеется общая форма "ФормаОтчета". На этой форме есть кнопка "Показать/Скрыть быстрые настройки"
В режиме предприятия при нажатии этой кнопки проявляются реквизиты для настроек.
Один из реквизитов "ВидПериода", который заполняется данными из перечисления "ДоступныеПериодыОтчетов" (День, Неделя, Декада, Месяц, Квартал, Полугодие, Год, Произвольный) в Списке выбора

Проблема в том, что при открытии отчета этот реквизит "ВидПериода" дублирует все эти перечисления в списке выбора: День, Неделя,...Произвольный, День, Неделя,... Произвольный.

В коде общей формы нашел фрагмент заполнения списка выбора:

ДоступныеПериоды = ФункцииОтчетовКлиентСервер.ПолучитьСписокДоступныхПериодов();
Для Индекс = 0 По 7 Цикл
ВидПериода.СписокВыбора.Добавить(ДоступныеПериоды[Индекс]);
//ВидПериода.СписокВыбора.Добавить(ДоступныеПериоды[0]);
КонецЦикла;



Но это не влияет, т.к. если для теста установить заремаченное [0], то список становиться таким:
"День, Неделя, Декада, Месяц, Квартал, Полугодие, Год, Произвольный, День, День, День, День, День, День, День"

Т.е., если я правильно понимаю, то этот список сначала где-то таки формируется.
Не подскажите, где этот реквизит, который судя по всему создается программно, т.к. я не нашел на этой общей форме группу с указанным реквизитом, может формировать первичный список выбора?

//Код явно откуда-то скопипастен, мож кто сталкивался с подобным.
daveal
Посмотрите ВидПериода.СписокВыбора до начала доавления
Ну или явно ВидПериода.СписокВыбора.Очистить() сделать перед добавлением
В свойствах элемента на форме может явно набили?
Constantus
daveal @ Сегодня, 15:14 необходимо зарегистрироваться для просмотра ссылки ,

1. ВидПериода.СписокВыбора до начала добавления пустой
2. Пробовал очистить - не помогло
3. Этот элемент создается программно

ВидПериода = элементы.Добавить(ВидПериодаИмя, Тип("ПолеФормы"), ОсновнаяГруппа);
Constantus
Надо было всего лишь поставить

ВидПериода.РежимВыбораИзСписка = Истина;



ВидПериода создавался программно и соответствующему реквизиту уже присвоили нужный тип из перечисления, а потом еще и программно добавляли из этого же перечисления
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.