Значения для выбора. Параметры выбора
////////////////////////////////////////////////////////////////////////////////
// Параметры выбора
Функция ЗначенияДляВыбора(ПараметрыНастройки, ТипИлиТипы = Неопределено) Экспорт
ПараметрыПолученияДанныхВыбора = Новый Структура("Отбор, ВыборГруппИЭлементов");
ЗаполнитьЗначенияСвойств(ПараметрыПолученияДанныхВыбора, ПараметрыНастройки);
ДополнитьСтруктуруИзПараметровВыбора(ПараметрыПолученияДанныхВыбора, ПараметрыНастройки.ПараметрыВыбора);
ЗначенияДляВыбора = Новый СписокЗначений;
Если ТипЗнч(ТипИлиТипы) = Тип("Тип") Тогда
Типы = Новый Массив;
Типы.Добавить(ТипИлиТипы);
ИначеЕсли ТипЗнч(ТипИлиТипы) = Тип("Массив") Тогда
Типы = ТипИлиТипы;
Иначе
Типы = ПараметрыНастройки.ОписаниеТипов.Типы();
КонецЕсли;
Для Каждого Тип Из Типы Цикл
ОбъектМетаданных = Метаданные.НайтиПоТипу(Тип);
Если ОбъектМетаданных = Неопределено Тогда
Продолжить;
КонецЕсли;
Менеджер = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ОбъектМетаданных.ПолноеИмя());
СписокВыбора = Менеджер.ПолучитьДанныеВыбора(ПараметрыПолученияДанныхВыбора);
Для Каждого ЭлементСписка Из СписокВыбора Цикл
ЗначениеДляВыбора = ЗначенияДляВыбора.Добавить();
ЗаполнитьЗначенияСвойств(ЗначениеДляВыбора, ЭлементСписка);
// Для перечислений значения возвращаются в виде структуры со свойством Значение.
ЗначениеПеречисления = Неопределено;
Если ТипЗнч(ЗначениеДляВыбора.Значение) = Тип("Структура")
И ЗначениеДляВыбора.Значение.Свойство("Значение", ЗначениеПеречисления) Тогда
ЗначениеДляВыбора.Значение = ЗначениеПеречисления;
КонецЕсли;
КонецЦикла;
КонецЦикла;
Возврат ЗначенияДляВыбора;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ЗначениеДоступаНачалоВыбора (БСП)
ЗначениеДоступаОбработкаВыбора (БСП)
ПриНачалеВыбораНастройки (БСП)
ИдентификаторыОбъектовМетаданныхФормаСпискаСписокВыборЗначения (БСП)
ЗначениеДоступаНачалоВыбораПродолжение (БСП)
ЗаполнитьНайденныеКонтакты (БСП)
ЗаполнитьСписокВыбораДоступнымиВидамиТранспорта (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)