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