ТекстЗапросаПолногоОбъемаФайлов (БСП)

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

Текст запроса полного объема файлов.

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

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

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

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

ТекстЗапросаДляИзвлеченияТекста (БСП)

ТекстЗапросаДляОчисткиФайлов (БСП)

ИР Адаптер - ошибка при разборе текста запроса

Крашится контекстная подсказка при работе в тексте запроса.

ФайлНеНайденПоПолномуИмени (БСП)

РазложитьПолноеИмяФайла (БСП)

РазделительПакетаЗапросов (БСП)

ИзвлечьТекстИзФайлов (БСП)

ИзвлечьТекстИзТекстовогоФайла (БСП)

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