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