Есть отчет софрмированный стандартным конструктором скд, нет ни собственных форм, ни ручного сбора отчета в модуле объекта, всё через конструктор.
Как в параметры, выведенные на форму, засунуть список разрешенных элементов, не создавая собственную форму и не передавая в ручную список значений в поле на форме?
Элементы, которые нужно разрешить для выбора - не предопределенные.
Есть такая возможность?
Думаю копать в эту сторону, но с этими параметрами не работал.
Как в параметры, выведенные на форму, засунуть список разрешенных элементов, не создавая собственную форму и не передавая в ручную список значений в поле на форме?
Элементы, которые нужно разрешить для выбора - не предопределенные.
Есть такая возможность?
Думаю копать в эту сторону, но с этими параметрами не работал.
Прикрепленные файлы:
По теме из базы знаний
- 115 полезностей по курсу СКД Евгения Гилёва
- Создание отчетов с помощью СКД - основные понятия и элементы
- Варианты применения СКД вне отчетов в отраслевых конфигурациях
- Параметры открытия формы выбора отборов и параметров СКД ("связи параметров выбора" списочных значений СКД)
- Отчеты с общей формой отчета. Типовые сценарии
Найденные решения
(3) Коли используется внешний подключаемый отчет, можно попробовать поступить следующим образом.
1) Указать при регистрации внешней обработки, что требуется настройка формы:
2) Добавить в модуль объекта отчета процедуру настройки формы, где обозначить, что требуется определить параметры выбора:
3) Добавить в модуль объекта отчета обработчик определения параметров выбора, где реализовать свой алгоритм формирования списка выбора:
Подробнее можете почитать наИТС
1) Указать при регистрации внешней обработки, что требуется настройка формы:
Функция СведенияОВнешнейОбработке() Экспорт
...
ПараметрыРегистрации.ОпределитьНастройкиФормы = Истина;
...
КонецФункции
2) Добавить в модуль объекта отчета процедуру настройки формы, где обозначить, что требуется определить параметры выбора:
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
Настройки.События.ПриОпределенииПараметровВыбора = Истина;
КонецПроцедуры
3) Добавить в модуль объекта отчета обработчик определения параметров выбора, где реализовать свой алгоритм формирования списка выбора:
Процедура ПриОпределенииПараметровВыбора(Форма, СвойстваНастройки) Экспорт
Если СвойстваНастройки.ОписаниеТипов.СодержитТип(Тип("СправочникСсылка.МойСправочник")) Тогда
СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями = Истина;
СвойстваНастройки.ЗначенияДляВыбора.Очистить();
СвойстваНастройки.ЗначенияДляВыбора.Добавить(Значение1);
СвойстваНастройки.ЗначенияДляВыбора.Добавить(Значение2);
СвойстваНастройки.ЗначенияДляВыбора.Добавить(Значение3);
КонецЕсли;
КонецПроцедуры
ПоказатьПодробнее можете почитать на
(8) Спасибо, только списком ограничить не получилось, ограничил сразу итоговый запрос на вывод
Процедура ПриОпределенииПараметровВыбора(Форма, СвойстваНастройки) Экспорт
Если СвойстваНастройки.ОписаниеТипов.СодержитТип(Тип("СправочникСсылка.СтруктураПредприятия")) Тогда
СписокДоступных = Новый Массив;
СписокДоступных.Добавить(Справочники.СтруктураПредприятия.НайтиПоНаименованию("Пример1",Истина));
СписокДоступных.Добавить(Справочники.СтруктураПредприятия.НайтиПоНаименованию("Пример2",Истина));
Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| СтруктураПредприятия.Ссылка КАК Ссылка
|ИЗ
| Справочник.СтруктураПредприятия КАК СтруктураПредприятия
|ГДЕ
| СтруктураПредприятия.Ссылка В(&СписокДоступных)
|
|УПОРЯДОЧИТЬ ПО
| СтруктураПредприятия.Наименование";
СвойстваНастройки.ЗапросЗначенийВыбора.Текст = Текст;
СвойстваНастройки.ЗапросЗначенийВыбора.Параметры.Вставить("СписокДоступных",СписокДоступных);
КонецЕсли;
КонецПроцедуры
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) А что из себя представляет этот список для выбора? Это отобранные по значению определенного реквизиты элементы справочника? Или список получается более сложным способом?
Какая конфигурация при этом используется? Отчет встроен в конфигурацию, подключаемый внешний отчет или же просто открывается через "Файл / Открыть..."?
Какая конфигурация при этом используется? Отчет встроен в конфигурацию, подключаемый внешний отчет или же просто открывается через "Файл / Открыть..."?
(2) ЕРП 2.4.. упр формы соответственно
Внешний подключаемый отчет
Можно было бы ограничиться свойством "выбор групп и элементов - группы", но У справочника - иерархия элементов.
Этот список состоит из нескольких элементов (2-3 элемента), отобрать их кроме как по коду или наименованию не получится
Просто пользователю вываливается для выбора целый список, нужно его ограничить 2-3 элементами.
Внешний подключаемый отчет
Можно было бы ограничиться свойством "выбор групп и элементов - группы", но У справочника - иерархия элементов.
Этот список состоит из нескольких элементов (2-3 элемента), отобрать их кроме как по коду или наименованию не получится
Просто пользователю вываливается для выбора целый список, нужно его ограничить 2-3 элементами.
(3) Коли используется внешний подключаемый отчет, можно попробовать поступить следующим образом.
1) Указать при регистрации внешней обработки, что требуется настройка формы:
2) Добавить в модуль объекта отчета процедуру настройки формы, где обозначить, что требуется определить параметры выбора:
3) Добавить в модуль объекта отчета обработчик определения параметров выбора, где реализовать свой алгоритм формирования списка выбора:
Подробнее можете почитать наИТС
1) Указать при регистрации внешней обработки, что требуется настройка формы:
Функция СведенияОВнешнейОбработке() Экспорт
...
ПараметрыРегистрации.ОпределитьНастройкиФормы = Истина;
...
КонецФункции
2) Добавить в модуль объекта отчета процедуру настройки формы, где обозначить, что требуется определить параметры выбора:
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
Настройки.События.ПриОпределенииПараметровВыбора = Истина;
КонецПроцедуры
3) Добавить в модуль объекта отчета обработчик определения параметров выбора, где реализовать свой алгоритм формирования списка выбора:
Процедура ПриОпределенииПараметровВыбора(Форма, СвойстваНастройки) Экспорт
Если СвойстваНастройки.ОписаниеТипов.СодержитТип(Тип("СправочникСсылка.МойСправочник")) Тогда
СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями = Истина;
СвойстваНастройки.ЗначенияДляВыбора.Очистить();
СвойстваНастройки.ЗначенияДляВыбора.Добавить(Значение1);
СвойстваНастройки.ЗначенияДляВыбора.Добавить(Значение2);
СвойстваНастройки.ЗначенияДляВыбора.Добавить(Значение3);
КонецЕсли;
КонецПроцедуры
ПоказатьПодробнее можете почитать на
(8) Спасибо, только списком ограничить не получилось, ограничил сразу итоговый запрос на вывод
Процедура ПриОпределенииПараметровВыбора(Форма, СвойстваНастройки) Экспорт
Если СвойстваНастройки.ОписаниеТипов.СодержитТип(Тип("СправочникСсылка.СтруктураПредприятия")) Тогда
СписокДоступных = Новый Массив;
СписокДоступных.Добавить(Справочники.СтруктураПредприятия.НайтиПоНаименованию("Пример1",Истина));
СписокДоступных.Добавить(Справочники.СтруктураПредприятия.НайтиПоНаименованию("Пример2",Истина));
Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| СтруктураПредприятия.Ссылка КАК Ссылка
|ИЗ
| Справочник.СтруктураПредприятия КАК СтруктураПредприятия
|ГДЕ
| СтруктураПредприятия.Ссылка В(&СписокДоступных)
|
|УПОРЯДОЧИТЬ ПО
| СтруктураПредприятия.Наименование";
СвойстваНастройки.ЗапросЗначенийВыбора.Текст = Текст;
СвойстваНастройки.ЗапросЗначенийВыбора.Параметры.Вставить("СписокДоступных",СписокДоступных);
КонецЕсли;
КонецПроцедуры
Показать
(13) сделал умнее:
// Вызывается в форме отчета перед выводом настройки.
//
// Параметры:
// Форма - УправляемаяФорма, Неопределено - Форма отчета.
// СвойстваНастройки - Структура - Описание настройки отчета, которая будет выведена в форме отчета.
// * ОписаниеТипов - ОписаниеТипов - Тип настройки.
// * ЗначенияДляВыбора - СписокЗначений - Объекты, которые будут предложены пользователю в списке
// выбора. Дополняет список объектов, уже выбранных пользователем ранее.
// * ЗапросЗначенийВыбора - Запрос - Возвращает объекты, которыми необходимо дополнить ЗначенияДляВыбора.
// Первой колонкой (с 0м индексом) должен выбираться объект,
// который следует добавить в ЗначенияДляВыбора.Значение.
// Для отключения автозаполнения
// в свойство ЗапросЗначенийВыбора.Текст следует записать пустую строку.
// * ОграничиватьВыборУказаннымиЗначениями - Булево - Когда Истина, то выбор пользователя будет
// ограничен значениями, указанными в ЗначенияДляВыбора (его конечным состоянием).
//
// См. также:
// ОтчетыПереопределяемый.ПриОпределенииПараметровВыбора().
//
Процедура ПриОпределенииПараметровВыбора(Форма, СвойстваНастройки) Экспорт
Если ТипЗнч(СвойстваНастройки.ЭлементКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда
Если СвойстваНастройки.ЭлементКД.Параметр = Новый ПараметрКомпоновкиДанных("Параметр1") Тогда
СписокПараметр1( = ПолучитьСписокПараметр1();
СвойстваНастройки.ЗначенияДляВыбора = СписокПараметр1;
ИначеЕсли СвойстваНастройки.ЭлементКД.Параметр = Новый ПараметрКомпоновкиДанных("Параметр2") Тогда
СписокПараметр2= ПолучитьСписокПараметр2();
СвойстваНастройки.ЗначенияДляВыбора = СписокПараметр2;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот