ЕстьПапкаСТакимИменем (БСП)

Автор: 1С
ОбщийМодуль.РаботаСФайламиСлужебныйВызовСервера
БСП

Есть папка таким именем. Возвращает Истина, если в указанном элементе справочника ПапкиФайлов есть дочерний элемент с таким именем.

// Возвращает Истина, если в указанном элементе справочника ПапкиФайлов есть дочерний элемент с таким именем.
//
// Параметры:
//  ИмяПапки					 - Строка					     - имя папки
//  Родитель					 - ОпределяемыйТип.ВладелецПрисоединенныхФайлов	 - родитель папки.
//  ПерваяПапкаСТакимЖеИменем	 - ОпределяемыйТип.ВладелецПрисоединенныхФайлов	 - первая же найденная папка с указанным именем.
// 
// Возвращаемое значение:
//  Булево - есть дочерний элемент с таким именем.
//
Функция ЕстьПапкаСТакимИменем(ИмяПапки, Родитель, ПерваяПапкаСТакимЖеИменем) Экспорт
	
	ПерваяПапкаСТакимЖеИменем = Справочники.ПапкиФайлов.ПустаяСсылка();
	
	ЗапросВПапки = Новый Запрос;
	ЗапросВПапки.УстановитьПараметр("Наименование", ИмяПапки);
	ЗапросВПапки.УстановитьПараметр("Родитель", Родитель);
	ЗапросВПапки.Текст =
	"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
	|	ПапкиФайлов.Ссылка КАК Ссылка
	|ИЗ
	|	Справочник.ПапкиФайлов КАК ПапкиФайлов
	|ГДЕ
	|	ПапкиФайлов.Наименование = &Наименование
	|	И ПапкиФайлов.Родитель = &Родитель";
	
	Если ТипЗнч(Родитель) <> Тип("СправочникСсылка.ПапкиФайлов") Тогда
		ИмяСправочникаХранилищаФайлов = РаботаСФайламиСлужебный.ИмяСправочникаХраненияФайлов(Родитель);
		ЗапросВПапки.Текст = СтрЗаменить(ЗапросВПапки.Текст, ".ПапкиФайлов", "." + ИмяСправочникаХранилищаФайлов);
	КонецЕсли;
	
	РезультатЗапроса = ЗапросВПапки.Выполнить(); 
	
	Если НЕ РезультатЗапроса.Пустой() Тогда
		ВыборкаЗапроса = РезультатЗапроса.Выгрузить();
		ПерваяПапкаСТакимЖеИменем = ВыборкаЗапроса[0].Ссылка;
		Возврат Истина;
	КонецЕсли;
	
	Возврат Ложь;
	
КонецФункции

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ЭтоПапкаФайлов (БСП)

УстановитьРодителяУПапки (БСП)

ОпределитьПапкуДляПисьма (БСП)

УстановитьПапкиДляМассиваПисем (БСП)

УстановитьПапкуЭлектронногоПисьма (БСП)

ПриВыполненииДоставкиВПапку (БСП)

СоздатьПапкуФайлов (БСП)

ПеренестиФайлыВПапку (БСП)

ПапкаСистемныхПриложений (БСП)

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз