Выкуп арендованных ОС / Модуль менеджера

файл

#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
	
#Область ПрограммныйИнтерфейс

#Область Проведение

// Описывает учетные механизмы используемые в документе для регистрации в механизме проведения.
//
// Параметры:
//  МеханизмыДокумента - Массив - список имен учетных механизмов, для которых будет выполнена
//              регистрация в механизме проведения.
//
Процедура ЗарегистрироватьУчетныеМеханизмы(МеханизмыДокумента) Экспорт
	

	МеханизмыДокумента.Добавить("РеестрДокументов");
	МеханизмыДокумента.Добавить("ОсновныеСредства");
	МеханизмыДокумента.Добавить("ОборотныеРегистрыУправленческогоУчета");
	МеханизмыДокумента.Добавить("СебестоимостьИПартионныйУчет");
	МеханизмыДокумента.Добавить("СуммыДокументовВВалютахУчета");
	МеханизмыДокумента.Добавить("УчетДоходовРасходов");
	МеханизмыДокумента.Добавить("УчетИмпорта");
	МеханизмыДокумента.Добавить("УчетНДС");
	МеханизмыДокумента.Добавить("ФинансовыеИнструменты");
	
	ВыкупАрендованныхОСЛокализация.ЗарегистрироватьУчетныеМеханизмы(МеханизмыДокумента);

КонецПроцедуры

// Возвращает таблицы для движений, необходимые для проведения документа по регистрам учетных механизмов.
//
// Параметры:
//  Документ - ДокументСсылка, ДокументОбъект - ссылка на документ или объект, по которому необходимо получить данные
//  Регистры - Структура - список имен регистров, для которых необходимо получить таблицы
//  ДопПараметры - Структура - дополнительные параметры для получения данных, определяющие контекст проведения.
//
// Возвращаемое значение:
//  Структура:
//     * Ключ - Строка - Имя таблицы.
//     * Значение - ТаблицаЗначений - таблица данных для отражения в регистр.
//
Функция ДанныеДокументаДляПроведения(Документ, Регистры, ДопПараметры = Неопределено) Экспорт
	
	Если ДопПараметры = Неопределено Тогда
		ДопПараметры = ПроведениеДокументов.ДопПараметрыИнициализироватьДанныеДокументаДляПроведения();
	КонецЕсли;
	
	Если ТипЗнч(Документ) = Тип("ДокументОбъект.ВыкупАрендованныхОС") Тогда
		ДокументСсылка = Документ.Ссылка;
	Иначе
		ДокументСсылка = Документ;
	КонецЕсли;
	
	Запрос = Новый Запрос;
	ТекстыЗапроса = Новый СписокЗначений;
	
	Если Не ДопПараметры.ПолучитьТекстыЗапроса Тогда
		
		ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка, ДопПараметры);
		
		СформироватьРасширеннуюТаблицуОС(Запрос, ТекстыЗапроса);
		
		ТекстЗапросаТаблицаРеестрДокументов(ТекстыЗапроса, Регистры);
		ТекстЗапросаТаблицаДокументыПоОС(ТекстыЗапроса, Регистры);
		
		ТекстЗапросаТаблицаПорядокУчетаОС(Запрос, ТекстыЗапроса, Регистры);
		ТекстЗапросаТаблицаАрендованныеОС(ТекстыЗапроса, Регистры);
		ТекстЗапросаТаблицаУсловияДоговоровАренды(ТекстыЗапроса, Регистры);
		ТекстЗапросаТаблицаРасчетыПоФинансовымИнструментам(Запрос, ТекстыЗапроса, Регистры);
		
		ТекстЗапросаТаблицаОтраженияВУчетеНДС(Запрос, ТекстыЗапроса, Регистры);
		СформироватьСуммыДокументаВВалютахУчета(Запрос, ТекстыЗапроса, Регистры);
		
		ТекстЗапросаТаблицаТоварыКОформлениюДокументовИмпорта(ТекстыЗапроса, Регистры);
		

		ВыкупАрендованныхОСЛокализация.ДополнитьТекстыЗапросовПроведения(Запрос, ТекстыЗапроса, Регистры);
	
	КонецЕсли;
	
	Возврат ПроведениеДокументов.ИнициализироватьДанныеДокументаДляПроведения(Запрос, ТекстыЗапроса, ДопПараметры);
	
КонецФункции

// Формирует таблицы движений при отложенном проведении.
//
// Параметры:
//  ДокументСсылка			 - ДокументСсылка.ВыкупАрендованныхОС - Документ, для которого формируются движения
//  МенеджерВременныхТаблиц	 - МенеджерВременныхТаблиц - Содержит вспомогательные временные таблицы, которые могут использоваться для формирования движений.
//
// Возвращаемое значение:
//  см. ПроведениеДокументов.ИнициализироватьДанныеДокументаДляПроведения
//
Функция ТаблицыОтложенногоФормированияДвижений(ДокументСсылка, МенеджерВременныхТаблиц) Экспорт

	Запрос = Новый Запрос;
	Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
	ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка, Неопределено);
	
	ТекстыЗапроса = Новый СписокЗначений;
	
	СформироватьРасширеннуюТаблицуОС(Запрос, ТекстыЗапроса);
	
	ТекстЗапросаТаблицаСтоимостьОС(Запрос, ТекстыЗапроса);
	ТекстЗапросаТаблицаАмортизацияОС(ТекстыЗапроса);
	ТекстЗапросаТаблицаРасчетыПоФинансовымИнструментам(Запрос, ТекстыЗапроса, Неопределено);
	
	ТекстЗапросаТаблицаПрочиеРасходы(Запрос, ТекстыЗапроса, Неопределено);
	ТекстЗапросаТаблицаПартииПрочихРасходов(Запрос, ТекстыЗапроса, Неопределено);
	ТекстЗапросаТаблицаПрочиеДоходы(Запрос, ТекстыЗапроса, Неопределено);
	
	ТекстЗапросаТаблицаПорядокУчетаОС(Запрос, ТекстыЗапроса, Неопределено);
	ТекстЗапросаТаблицаАрендованныеОС(ТекстыЗапроса, Неопределено);
	ТекстЗапросаТаблицаУсловияДоговоровАренды(ТекстыЗапроса, Неопределено);
	
	
	ВыкупАрендованныхОСЛокализация.ДополнитьТаблицыОтложенногоФормированияДвижений(Запрос, ТекстыЗапроса);
	
	ТаблицыДвижений = ПроведениеДокументов.ИнициализироватьДанныеДокументаДляПроведения(Запрос, ТекстыЗапроса);
	
	Возврат ТаблицыДвижений;
	
КонецФункции

#КонецОбласти

#Область Команды

// Определяет список команд создания на основании.
//
// Параметры:
//  КомандыСозданияНаОсновании - см. СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании.КомандыСозданияНаОсновании
//  Параметры - см. СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании.Параметры
//
Процедура ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт
	
	Документы.ИзменениеПараметровОС2_4.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);

КонецПроцедуры

// Добавляет команду создания документа "Выкуп арендованных ОС".
//
// Параметры:
//  КомандыСозданияНаОсновании - см. СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании.КомандыСозданияНаОсновании
//  Порядок - Число -
//
// Возвращаемое значение:
//	СтрокаТаблицыЗначений - добавленная команда
//
Функция ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании, Порядок = 0) Экспорт
	
	Если ПравоДоступа("Добавление", Метаданные.Документы.ВыкупАрендованныхОС) Тогда
		
		КомандаСоздатьНаОсновании = КомандыСозданияНаОсновании.Добавить();
		КомандаСоздатьНаОсновании.Менеджер = Метаданные.Документы.ВыкупАрендованныхОС.ПолноеИмя();
		КомандаСоздатьНаОсновании.Представление = ОбщегоНазначенияУТ.ПредставлениеОбъекта(Метаданные.Документы.ВыкупАрендованныхОС);
		КомандаСоздатьНаОсновании.РежимЗаписи = "Проводить";
		КомандаСоздатьНаОсновании.ФункциональныеОпции = "ИспользоватьВнеоборотныеАктивы2_4";
		КомандаСоздатьНаОсновании.Порядок = Порядок;
	
		Возврат КомандаСоздатьНаОсновании;
		
	КонецЕсли;

	Возврат Неопределено;
	
КонецФункции

// Определяет список команд отчетов.
//
// Параметры:
//   КомандыОтчетов - См. ВариантыОтчетовПереопределяемый.ПередДобавлениемКомандОтчетов.КомандыОтчетов
//   Параметры - См. ВариантыОтчетовПереопределяемый.ПередДобавлениемКомандОтчетов.Параметры
//
Процедура ДобавитьКомандыОтчетов(КомандыОтчетов, Параметры) Экспорт
	
КонецПроцедуры

#КонецОбласти

#Область УчетныеМеханизмы

// Формирует описание реквизитов объекта, заполняемых по статистике их использования.
//
// Параметры:
//  ОписаниеРеквизитов - Структура - описание реквизитов, для которых необходимо получить значения по статистике
//
//
Процедура ЗадатьОписаниеЗаполняемыхРеквизитовПоСтатистике(ОписаниеРеквизитов) Экспорт
	
	Параметры = ЗаполнениеОбъектовПоСтатистике.ПараметрыЗаполняемыхРеквизитов();
	Параметры.РазрезыСбораСтатистики.ИспользоватьВсегда = "Ответственный";
	Параметры.ЗаполнятьПриУсловии.ПоляОбъектаЗаполнены = "Ответственный";
	ЗаполнениеОбъектовПоСтатистике.ДобавитьОписаниеЗаполняемыхРеквизитов(ОписаниеРеквизитов,
		"Организация, Подразделение", Параметры);
	
КонецПроцедуры

// Возвращает массив допустимых наименований входящих документов.
// 
// Возвращаемое значение:
// 	Массив - массив наименований.
Функция НаименованияВходящихДокументов() Экспорт
	МассивНаименований = Новый Массив();
	МассивНаименований.Добавить(НСтр("ru='Акт'"));
	Возврат МассивНаименований
КонецФункции

#КонецОбласти

#Область ДляВызоваИзДругихПодсистем

// СтандартныеПодсистемы.УправлениеДоступом

// Параметры:
//   Ограничение - см. УправлениеДоступомПереопределяемый.ПриЗаполненииОграниченияДоступа.Ограничение.
//
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт

	Ограничение.Текст =
	"РазрешитьЧтениеИзменение
	|ГДЕ
	|	ЗначениеРазрешено(Организация)";

КонецПроцедуры

// Конец СтандартныеПодсистемы.УправлениеДоступом

// СтандартныеПодсистемы.ВерсионированиеОбъектов

// Определяет настройки объекта для подсистемы ВерсионированиеОбъектов.
//
// Параметры:
//  Настройки	 - Структура - настройки подсистемы.
//
Процедура ПриОпределенииНастроекВерсионированияОбъектов(Настройки) Экспорт

КонецПроцедуры

// Конец СтандартныеПодсистемы.ВерсионированиеОбъектов

#КонецОбласти

#КонецОбласти

#КонецЕсли

#Область ОбработчикиСобытий

Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
	
	ОбщегоНазначенияУТКлиентСервер.ОбработкаПолученияПредставленияВходящегоДокумента(
		Данные, Представление, СтандартнаяОбработка, "ВыкупАрендованныхОС");
	
КонецПроцедуры

Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Ложь;
	Поля.Очистить();
	Поля.Добавить("НаименованиеВходящегоДокумента");
	Поля.Добавить("НомерВходящегоДокумента");
	Поля.Добавить("ДатаВходящегоДокумента");
	Поля.Добавить("Дата");
	Поля.Добавить("Номер");
	
КонецПроцедуры

#КонецОбласти

#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
	
#Область СлужебныеПроцедурыИФункции

#Область Проведение

Процедура СформироватьСуммыДокументаВВалютахУчета(Запрос, ТекстыЗапроса, Регистры = Неопределено) Экспорт
	
	ИмяРегистра = "СуммыДокументовВВалютахУчета";
	
	Если Не ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат;
	КонецЕсли;
	
	Если ПроведениеДокументов.ЕстьТаблицаЗапроса("СуммыДокументовВВалютахУчета", ТекстыЗапроса) Тогда
		Возврат;
	КонецЕсли;
	
	ТекстЗапросаТаблицаВтСуммыДокументовВВалютахУчета(ТекстыЗапроса);
	
	Текст = "
	|////////////////////////////////////////////////////////////////////////////////
	|// Таблица СуммыДокументовВВалютахУчета
	|"+
	"ВЫБРАТЬ
	|	*
	|ИЗ
	|	ВтСуммыДокументовВВалютахУчета";
	
	ТекстыЗапроса.Добавить(Текст, ИмяРегистра);
	
КонецПроцедуры

Процедура ИнициализироватьКлючиАналитикиУчетаПоПартнерам(Запрос)
	
	Если Запрос.Параметры.Свойство("КлючиАналитикиУчетаПоПартнерамИнициализированы") Тогда
		Возврат;
	КонецЕсли;
	
	ТекстЗапроса = 
	"ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	ДанныеДокумента.Организация                    КАК Организация,
	|	ДанныеДокумента.Партнер                        КАК Партнер,
	|	ДанныеДокумента.Контрагент                     КАК Контрагент,
	|	ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка) КАК Договор,
	|	ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельности
	|ИЗ
	|	Документ.ВыкупАрендованныхОС КАК ДанныеДокумента
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК РегистрАналитикаУчетаПоПартнерам
	|		ПО ДанныеДокумента.Организация = РегистрАналитикаУчетаПоПартнерам.Организация
	|			И ДанныеДокумента.Партнер = РегистрАналитикаУчетаПоПартнерам.Партнер
	|			И ДанныеДокумента.Контрагент = РегистрАналитикаУчетаПоПартнерам.Контрагент
	|			И ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка) = РегистрАналитикаУчетаПоПартнерам.Договор
	|			И ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) = РегистрАналитикаУчетаПоПартнерам.НаправлениеДеятельности
	|ГДЕ
	|	ДанныеДокумента.Ссылка = &Ссылка
	|	И РегистрАналитикаУчетаПоПартнерам.КлючАналитики ЕСТЬ NULL";
	
	ЗапросАналитик = Новый Запрос(ТекстЗапроса);
	ЗапросАналитик.УстановитьПараметр("Ссылка", Запрос.Параметры.Ссылка);
	РезультатЗапроса = ЗапросАналитик.Выполнить();
	Выборка = РезультатЗапроса.Выбрать();
	Пока Выборка.Следующий() Цикл
		РегистрыСведений.АналитикаУчетаПоПартнерам.СоздатьКлючАналитики(Выборка);
	КонецЦикла;
	
	Запрос.УстановитьПараметр("КлючиАналитикиУчетаПоПартнерамИнициализированы", Истина);
	
КонецПроцедуры

Функция ДополнительныеИсточникиДанныхДляДвижений(ИмяРегистра) Экспорт

	ИсточникиДанных = Новый Соответствие;

	Возврат ИсточникиДанных; 

КонецФункции

Функция АдаптированныйТекстЗапросаДвиженийПоРегистру(ИмяРегистра) Экспорт

	ТекстыЗапроса = Новый СписокЗначений;
	
	ПолноеИмяДокумента = "Документ.ВыкупАрендованныхОС";
	ТекстыЗапросаВременныхТаблиц = Новый Соответствие();
	
	ЗначенияПараметров = ЗначенияПараметровПроведения();
	
	ПереопределениеРасчетаПараметров = Новый Структура;
	ПереопределениеРасчетаПараметров.Вставить("НаправлениеДеятельности", "ДанныеДокумента.Договор.НаправлениеДеятельности");
	
	ВЗапросеЕстьИсточник = Истина;
	
	Если ИмяРегистра = "РеестрДокументов" Тогда
		
		ТекстЗапроса = ТекстЗапросаТаблицаРеестрДокументов(ТекстыЗапроса, ИмяРегистра);
		СинонимТаблицыДокумента = "ДанныеДокумента";
		ВЗапросеЕстьИсточник = Ложь;
		
	ИначеЕсли ИмяРегистра = "ДокументыПоОС" Тогда
		
		ТекстЗапроса = ТекстЗапросаТаблицаДокументыПоОС(ТекстыЗапроса, ИмяРегистра);
		СинонимТаблицыДокумента = "ДанныеДокумента";
		
	КонецЕсли;
		
	Если ТекстЗапроса = Неопределено Тогда
		
		ТекстИсключения = НСтр("ru = 'В документе %ПолноеИмяДокумента% не реализована адаптация текста запроса формирования движений по регистру %ИмяРегистра%.'");
		ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ПолноеИмяДокумента%", ПолноеИмяДокумента);
		ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ИмяРегистра%", ИмяРегистра);
		
		ВызватьИсключение ТекстИсключения;
	КонецЕсли;
	
	Если ИмяРегистра = "РеестрДокументов"
		ИЛИ ИмяРегистра = "ДокументыПоОС" Тогда
		
		ТекстЗапроса = ОбновлениеИнформационнойБазыУТ.АдаптироватьЗапросПроведенияПоНезависимомуРегистру(
										ТекстЗапроса,
										ПолноеИмяДокумента,
										СинонимТаблицыДокумента,
										ВЗапросеЕстьИсточник,
										ПереопределениеРасчетаПараметров);
	Иначе	
		
		ТекстЗапроса = ОбновлениеИнформационнойБазыУТ.АдаптироватьЗапросМеханизмаПроведения(
										ТекстЗапроса,
										ПолноеИмяДокумента,
										СинонимТаблицыДокумента,
										ПереопределениеРасчетаПараметров,
										ТекстыЗапросаВременныхТаблиц);
	КонецЕсли; 

	Результат = ОбновлениеИнформационнойБазыУТ.РезультатАдаптацииЗапроса();
	Результат.ЗначенияПараметров = ЗначенияПараметров;
	Результат.ТекстЗапроса = ТекстЗапроса;
	
	Возврат Результат;
	
КонецФункции

Процедура ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка, ДопПараметры)
	
	ПроведениеДокументов.ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка, ДопПараметры);
	
	ПолучитьДанныеДокумента(Запрос);
	
	Запрос.Текст =
	"ВЫБРАТЬ
	|	ДанныеДокумента.Дата КАК Период,
	|	ДанныеДокумента.Номер,
	|	ДанныеДокумента.ПометкаУдаления,
	|	ДанныеДокумента.Проведен,
	|	ДанныеДокумента.Ссылка,
	|	ДанныеДокумента.Организация,
	|	ДанныеДокумента.Партнер,
	|	ДанныеДокумента.Контрагент,
	|	ДанныеДокумента.Договор,
	|	ДанныеДокумента.Договор.Балансодержатель КАК Балансодержатель,
	|	ДанныеДокумента.Договор.НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	ДанныеДокумента.Договор.ОплатаВВалюте КАК ВалютныйДоговор,
	|	ЕСТЬNULL(СпрДоговорАренды.ТребуетсяОформлениеЗаявленийОВвозе, ЛОЖЬ) КАК ТребуетсяОформлениеЗаявленийОВвозе,
	|	ДанныеДокумента.Валюта,
	|	ДанныеДокумента.ВалютаВзаиморасчетов,
	|	ДанныеДокумента.СуммаДокумента,
	|	ДанныеДокумента.СуммаВзаиморасчетов,
	|	ДанныеДокумента.КурсЧислитель КАК Курс,
	|	ДанныеДокумента.КурсЗнаменатель КАК Кратность,
	|	ДанныеДокумента.СтатьяРасходовВыкуп,
	|	ДанныеДокумента.АналитикаДоходовВыкуп,
	|	ДанныеДокумента.СтатьяДоходовВыкуп,
	|	ДанныеДокумента.АналитикаРасходовВыкуп,
	|	ДанныеДокумента.АмортизационнаяГруппа,
	|	ДанныеДокумента.ПорядокУчетаНУ,
	|	ДанныеДокумента.НачислятьАмортизациюНУ,
	|	ДанныеДокумента.СпециальныйКоэффициентНУ,
	|	ДанныеДокумента.СрокИспользованияНУ,
	|	ДанныеДокумента.СпособОтраженияРасходовНУ,
	|	ДанныеДокумента.СтатьяРасходовНУ,
	|	ДанныеДокумента.АналитикаРасходовНУ,
	|	ДанныеДокумента.ПодразделениеНУ,
	|	ДанныеДокумента.НаправлениеДеятельностиНУ,
	|	ДанныеДокумента.ПодразделениеИНаправлениеДеятельностиСовпадаютСДаннымиУчетаНУ,
	|	ДанныеДокумента.СтатьяРасходовНалог,
	|	ДанныеДокумента.АналитикаРасходовНалог,
	|	ДанныеДокумента.ВключитьАмортизационнуюПремиюВСоставРасходов,
	|	ДанныеДокумента.СпособОтраженияРасходовАмортизационнойПремии,
	|	ДанныеДокумента.СтатьяРасходовАмортизационнойПремии,
	|	ДанныеДокумента.АналитикаРасходовАмортизационнойПремии,
	|	ДанныеДокумента.ПодразделениеАмортизационнойПремии,
	|	ДанныеДокумента.НаправлениеДеятельностиАмортизационнойПремии,
	|	ДанныеДокумента.ПодразделениеИНаправлениеДеятельностиСовпадаютСДаннымиУчетаАмортизационнойПремии,
	|	ДанныеДокумента.ПроцентКапитальныхВложенийВключаемыхВРасходыНУ,
	|	ДанныеДокумента.Подразделение,
	|	ДанныеДокумента.ЗакупкаПодДеятельность,
	|	ДанныеДокумента.НалогообложениеНДС,
	|	ДанныеДокумента.НомерВходящегоДокумента,
	|	ДанныеДокумента.ДатаВходящегоДокумента,
	|	ДанныеДокумента.НаименованиеВходящегоДокумента,
	|	ДанныеДокумента.СобытиеОС,
	|	ДанныеДокумента.ХозяйственнаяОперация,
	|	ДанныеДокумента.Ответственный,
	|	ДанныеДокумента.Комментарий,
	|	ДанныеДокумента.ИдентификаторДокумента,
	|	ДанныеДокумента.Организация.ВалютаРегламентированногоУчета КАК ВалютаРегламентированногоУчета,
	|	ДанныеДокумента.Организация.ВалютаРегламентированногоУчета КАК ВалютаРегл,
	|	ДанныеДокумента.ДокументНаОсновании
	|ИЗ
	|	Документ.ВыкупАрендованныхОС КАК ДанныеДокумента
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоговорыАренды КАК СпрДоговорАренды
	|		ПО ДанныеДокумента.Договор = СпрДоговорАренды.Ссылка
	|ГДЕ
	|	ДанныеДокумента.Ссылка = &Ссылка";
	
	Результат = Запрос.Выполнить();
	Реквизиты = Результат.Выбрать();
	Реквизиты.Следующий();
	
	Для Каждого Колонка Из Результат.Колонки Цикл
		Запрос.УстановитьПараметр(Колонка.Имя, Реквизиты[Колонка.Имя]);
	КонецЦикла;
	
	ЗначенияПараметровПроведения = ЗначенияПараметровПроведения(Реквизиты);
	Для каждого КлючИЗначение Из ЗначенияПараметровПроведения Цикл
		Запрос.УстановитьПараметр(КлючИЗначение.Ключ, КлючИЗначение.Значение);
	КонецЦикла; 
	
	РасчетСебестоимостиПрикладныеАлгоритмы.ЗаполнитьПараметрыИнициализации(Запрос, Реквизиты);
	
КонецПроцедуры

Процедура ПолучитьДанныеДокумента(Запрос)
	
	СписокЗапросов = Новый Массив;
	
	#Область ДанныеДокументаРеквизиты
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ДанныеДокумента.Ссылка КАК Ссылка,
	|	ДанныеДокумента.Дата КАК Период,
	|	ДанныеДокумента.Номер КАК Номер,
	|	ДанныеДокумента.Организация КАК Организация,
	|	ДанныеДокумента.Договор КАК Договор,
	|	ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
	|	ИСТИНА КАК ОтражатьВУпрУчете,
	|	ИСТИНА КАК ОтражатьВРеглУчете,
	|	ИСТИНА КАК ОтражатьВБУ,
	|	ИСТИНА КАК ОтражатьВНУ
	|
	|ПОМЕСТИТЬ ДанныеДокументаРеквизиты
	|
	|ИЗ
	|	Документ.ВыкупАрендованныхОС КАК ДанныеДокумента
	|
	|ГДЕ
	|	ДанныеДокумента.Ссылка = &Ссылка
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	Ссылка
	|";
	СписокЗапросов.Добавить(ТекстЗапроса);
	#КонецОбласти
	
	#Область ДанныеДокументаТаблицаОС
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ТаблицаДокумента.Ссылка КАК Ссылка,
	|	ТаблицаДокумента.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ТаблицаДокумента.ОсновноеСредство КАК ОсновноеСредство,
	|	ТаблицаДокумента.ОсновноеСредство КАК ОбъектУчета
	|
	|ПОМЕСТИТЬ ДанныеДокументаТаблицаОС
	|
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК ТаблицаДокумента
	|
	|ГДЕ
	|	ТаблицаДокумента.Ссылка = &Ссылка
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	Ссылка,
	|	ОсновноеСредство
	|";
	СписокЗапросов.Добавить(ТекстЗапроса);
	#КонецОбласти
	
	Запрос.Текст = СтрСоединить(СписокЗапросов, ОбщегоНазначения.РазделительПакетаЗапросов());
	Запрос.Выполнить();
	
КонецПроцедуры

Функция ЗначенияПараметровПроведения(Реквизиты = Неопределено)

	ЗначенияПараметровПроведения = Новый Структура;
	УчетАрендованныхОС.ДополнитьЗначенияПараметровПроведенияДокументаАренды(ЗначенияПараметровПроведения);
	
	ЗначенияПараметровПроведения.Вставить("ИдентификаторМетаданных", ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Документ.ВыкупАрендованныхОС"));
	ЗначенияПараметровПроведения.Вставить("НазваниеДокумента", НСтр("ru='Выкуп арендованных ОС'"));
	ЗначенияПараметровПроведения.Вставить("ВалютаУправленческогоУчета", Константы.ВалютаУправленческогоУчета.Получить());
	ЗначенияПараметровПроведения.Вставить("ВалютаУпр", ЗначенияПараметровПроведения.ВалютаУправленческогоУчета);
	ЗначенияПараметровПроведения.Вставить("ИдентификаторНеиспользуемойФинЗаписи", ПроведениеДокументов.ИдентификаторНеиспользуемойФинЗаписи());
	
	ЗначенияПараметровПроведения.Вставить("ХО_ФормированиеСтоимостиАрендованныхОС", Перечисления.ХозяйственныеОперации.ФормированиеСтоимостиАрендованныхОС);
	ЗначенияПараметровПроведения.Вставить("НастройкаХО_ФормированиеСтоимостиАрендованныхОС", Справочники.НастройкиХозяйственныхОпераций.ФормированиеСтоимостиАрендованныхОС);
	
	ЗначенияПараметровПроведения.Вставить("ХО_СписаниеСтоимостиОС", Перечисления.ХозяйственныеОперации.СписаниеСтоимостиОС);
	ЗначенияПараметровПроведения.Вставить("НастройкаХО_СписаниеСтоимостиОС", Справочники.НастройкиХозяйственныхОпераций.СписаниеСтоимостиОС);

	ЗначенияПараметровПроведения.Вставить("ИдентификаторЗаявлениеОВвозеТоваров", ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Документ.ЗаявлениеОВвозеТоваров"));
	
	Если Реквизиты <> Неопределено Тогда
		
		ЗначенияПараметровПроведения.Вставить("ИспользуетсяУчетАрендыПоФСБУ25_2018",
			УчетАрендованныхОС.ИспользуетсяУчетАрендыПоФСБУ25_2018(Реквизиты.Организация, Реквизиты.Период));
	
		Коэффициенты = РаботаСКурсамивалютУТ.ПолучитьКоэффициентыПересчетаВалюты(
			Реквизиты.Валюта, Неопределено, Реквизиты.Период, Реквизиты.Организация);
		ЗначенияПараметровПроведения.Вставить("КоэффициентПересчетаВВалютуУпр", Коэффициенты.КоэффициентПересчетаВВалютуУпр);
		ЗначенияПараметровПроведения.Вставить("КоэффициентПересчетаВВалютуРегл", Коэффициенты.КоэффициентПересчетаВВалютуРегл);
		
		КоэффициентПересчетаИзВалютыУпр = РаботаСКурсамиВалютУТ.ПолучитьКоэффициентПересчетаИзВалютыВВалюту(
			ЗначенияПараметровПроведения.ВалютаУправленческогоУчета, 
			Реквизиты.ВалютаВзаиморасчетов, 
			Реквизиты.Период,
			Реквизиты.ВалютаРегламентированногоУчета);
		ЗначенияПараметровПроведения.Вставить("КоэффициентПересчетаИзВалютыУпр", КоэффициентПересчетаИзВалютыУпр);
		
		КоэффициентПересчетаИзВалютыРегл = РаботаСКурсамиВалютУТ.ПолучитьКоэффициентПересчетаИзВалютыВВалюту(
			Реквизиты.ВалютаРегл, 
			Реквизиты.ВалютаВзаиморасчетов, 
			Реквизиты.Период,
			Реквизиты.ВалютаРегл);
		ЗначенияПараметровПроведения.Вставить("КоэффициентПересчетаИзВалютыРегл", КоэффициентПересчетаИзВалютыРегл);
		
		ЗначенияПараметровПроведения.Вставить("ДокументЗаключенияДоговораАренды", Справочники.ДоговорыАренды.ДокументЗаключенияДоговораАренды(Реквизиты.Договор));
	
		ЗначенияПараметровПроведения.Вставить("ДосрочныйЧастичныйВыкуп", Реквизиты.ДокументНаОсновании);
	
	КонецЕсли;
	
	Возврат ЗначенияПараметровПроведения;
	
КонецФункции

Процедура СформироватьРасширеннуюТаблицуОС(Запрос, ТекстыЗапроса)

	ВнеоборотныеАктивыСлужебный.ТекстЗапросаТаблицаВтРасширеннаяТаблицаОС(ТекстыЗапроса);

КонецПроцедуры

Функция ТекстЗапросаТаблицаРеестрДокументов(ТекстыЗапроса, Регистры)
	
	ИмяРегистра = "РеестрДокументов";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли;
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	&Ссылка                                 КАК Ссылка,
	|	&Период                                 КАК ДатаДокументаИБ,
	|	&Номер                                  КАК НомерДокументаИБ,
	|	&ИдентификаторМетаданных                КАК ТипСсылки,
	|	&Организация                            КАК Организация,
	|	&Партнер                                КАК Партнер,
	|	&Контрагент                             КАК Контрагент,
	|	&Договор                                КАК Договор,
	|	&НаправлениеДеятельности                КАК НаправлениеДеятельности,
	|	&СуммаДокумента                         КАК Сумма,
	|	&Валюта                                 КАК Валюта,
	|	&ХозяйственнаяОперация                  КАК ХозяйственнаяОперация,
	|	&Подразделение                          КАК Подразделение,
	|	&Ответственный                          КАК Ответственный,
	|	&Комментарий                            КАК Комментарий,
	|	&Проведен                               КАК Проведен,
	|	&ПометкаУдаления                        КАК ПометкаУдаления,
	|	ЛОЖЬ                                    КАК ДополнительнаяЗапись,
	|	&ДатаВходящегоДокумента                 КАК ДатаПервичногоДокумента,
	|	&НомерВходящегоДокумента                КАК НомерПервичногоДокумента,
	|	&НаименованиеВходящегоДокумента         КАК НаименованиеПервичногоДокумента,
	|	&Период                                 КАК ДатаОтраженияВУчете";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции

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

Процедура ТекстЗапросаТаблицаСтоимостьОС(Запрос, ТекстыЗапроса)

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

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

Процедура ТекстЗапросаТаблицаАмортизацияОС(ТекстыЗапроса)

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

Процедура ТекстЗапросаТаблицаПорядокУчетаОС(Запрос, ТекстыЗапроса, Регистры)

	ИмяРегистра = "ПорядокУчетаОС";
	
	Если Не ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат;
	КонецЕсли;
	
	ВнеоборотныеАктивыСлужебный.ТекстЗапросаТаблицаВтПорядокУчетаОС(ТекстыЗапроса);
	ВнеоборотныеАктивыСлужебный.ТекстЗапросаТаблицаВтУзлыКомпонентыАмортизации(ТекстыЗапроса);

	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период                                   КАК Период,
	|	&Организация                              КАК Организация,
	|	ИСТИНА                                    КАК ОтражатьВРеглУчете,
	|	ИСТИНА                                    КАК ОтражатьВУпрУчете,
	|	ТаблицаОС.ОсновноеСредство                КАК ОсновноеСредство,
	|
	|	ТаблицаОС.ГруппаФинансовогоУчета          КАК ГруппаФинансовогоУчета,
	|	ПорядокУчетаОС.НаправлениеДеятельности    КАК НаправлениеДеятельности,
	|	ПорядокУчетаОС.ПоказательНаработки        КАК ПоказательНаработки,
	|	ПорядокУчетаОС.ОбъемНаработки             КАК ОбъемНаработки
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК ТаблицаОС
	|
	|		ЛЕВОЕ СОЕДИНЕНИЕ втПорядокУчетаОС КАК ПорядокУчетаОС
	|		ПО (ПорядокУчетаОС.ОсновноеСредство = ТаблицаОС.ОсновноеСредство)
	|ГДЕ
	|	ТаблицаОС.Ссылка = &Ссылка
	|	И ТаблицаОС.ГруппаФинансовогоУчета <> ПорядокУчетаОС.ГруппаФинансовогоУчета
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период                                   КАК Период,
	|	&Организация                              КАК Организация,
	|	ИСТИНА                                    КАК ОтражатьВРеглУчете,
	|	ИСТИНА                                    КАК ОтражатьВУпрУчете,
	|	УзлыКомпоненты.УзелКомпонент              КАК ОсновноеСредство,
	|
	|	ТаблицаОС.ГруппаФинансовогоУчета          КАК ГруппаФинансовогоУчета,
	|	ПорядокУчетаОС.НаправлениеДеятельности    КАК НаправлениеДеятельности,
	|	ПорядокУчетаОС.ПоказательНаработки        КАК ПоказательНаработки,
	|	ПорядокУчетаОС.ОбъемНаработки             КАК ОбъемНаработки
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК ТаблицаОС
	|
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтУзлыКомпонентыАмортизации КАК УзлыКомпоненты
	|		ПО ТаблицаОС.ОсновноеСредство = УзлыКомпоненты.ОсновноеСредство
	|
	|		ЛЕВОЕ СОЕДИНЕНИЕ втПорядокУчетаОС КАК ПорядокУчетаОС
	|		ПО (ПорядокУчетаОС.ОсновноеСредство = УзлыКомпоненты.ОсновноеСредство)
	|ГДЕ
	|	ТаблицаОС.Ссылка = &Ссылка
	|	И ТаблицаОС.ГруппаФинансовогоУчета <> ПорядокУчетаОС.ГруппаФинансовогоУчета";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
КонецПроцедуры

Функция ТекстЗапросаТаблицаРасчетыПоФинансовымИнструментам(Запрос, ТекстыЗапроса, Регистры)
	
	ИмяРегистра = "РасчетыПоФинансовымИнструментам";
	
	Если Не ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли;
	
	ИнициализироватьКлючиАналитикиУчетаПоПартнерам(Запрос);

	ОтложенноеФормированиеДвиженийВНА.ТекстЗапросаПустыеТаблицыОтложенныхДвижений(Запрос, ТекстыЗапроса);
	ТекстЗапросаТаблицаВтНачисленияВсего(ТекстыЗапроса);
	ТекстЗапросаТаблицаВтИзменениеАрендныхОбязательств(ТекстыЗапроса);
	ТекстЗапросаТаблицаВтСуммыДокументовВВалютахУчета(ТекстыЗапроса);
	УчетАрендованныхОС.ТекстЗапросаТаблицаВтРасходыПриПрекращенииДоговораАренды(Запрос, ТекстыЗапроса);
	УчетАрендованныхОС.ТекстЗапросаТаблицаВтДоходыПриПрекращенииДоговораАренды(Запрос, ТекстыЗапроса);
	
	СписокЗапросовОбъединение = Новый Массив;
	
	#Область УслугаБезНДС // Дт <76.07.1> - Кт <70.07.4>
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)                                  КАК ВидДвижения,
	|	
	|	ЕСТЬNULL(АналитикаПоПартнерам.КлючАналитики, НЕОПРЕДЕЛЕНО)              КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.АрендныеОбязательства)       КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                                            КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	втНачисленияВсего.СуммаВзаиморасчетов - втНачисленияВсего.СуммаНДСВзаиморасчетов КАК Сумма,
	|	втНачисленияВсего.СуммаУпр - втНачисленияВсего.СуммаНДСУпр              КАК СуммаУпр,
	|	втНачисленияВсего.СуммаРегл - втНачисленияВсего.СуммаНДСРегл            КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                                            КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                                            КАК ИдентификаторСтроки,	
	|	&ИдентификаторДокумента                                                 КАК ИдентификаторФинЗаписи,
	|	&ХО_ВыкупАрендованныхОС                                                 КАК ХозяйственнаяОперация,
	|	&НастройкаХО_ВыкупАрендованныхОС                                        КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	втНачисленияВсего КАК втНачисленияВсего
	|
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК АналитикаПоПартнерам
	|		ПО АналитикаПоПартнерам.Организация = &Организация
	|			И АналитикаПоПартнерам.Партнер = &Партнер
	|			И АналитикаПоПартнерам.Контрагент = &Контрагент
	|			И АналитикаПоПартнерам.Договор = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И АналитикаПоПартнерам.НаправлениеДеятельности = ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)                                  КАК ВидДвижения,
	|	
	|	ЕСТЬNULL(АналитикаПоПартнерам.КлючАналитики, НЕОПРЕДЕЛЕНО)              КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ВыкупнаяСтоимость)           КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                                            КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	втНачисленияВсего.СуммаВзаиморасчетов - втНачисленияВсего.СуммаНДСВзаиморасчетов КАК Сумма,
	|	втНачисленияВсего.СуммаУпр - втНачисленияВсего.СуммаНДСУпр              КАК СуммаУпр,
	|	втНачисленияВсего.СуммаРегл - втНачисленияВсего.СуммаНДСРегл            КАК СуммаРегл,
	|	
	|	ЗНАЧЕНИЕ(Перечисление.ТипыГрафиковФинансовыхИнструментов.Начисления)    КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                                            КАК ИдентификаторСтроки,	
	|	&ИдентификаторДокумента                                                 КАК ИдентификаторФинЗаписи,
	|	&ХО_ВыкупАрендованныхОС                                                 КАК ХозяйственнаяОперация,
	|	&НастройкаХО_ВыкупАрендованныхОС                                        КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	втНачисленияВсего КАК втНачисленияВсего
	|
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК АналитикаПоПартнерам
	|		ПО АналитикаПоПартнерам.Организация = &Организация
	|			И АналитикаПоПартнерам.Партнер = &Партнер
	|			И АналитикаПоПартнерам.Контрагент = &Контрагент
	|			И АналитикаПоПартнерам.Договор = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И АналитикаПоПартнерам.НаправлениеДеятельности = ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	#КонецОбласти

	#Область УслугаНДС // Дт <76.07.1> - Кт <76.07.9>
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)                                  КАК ВидДвижения,
	|	
	|	ЕСТЬNULL(АналитикаПоПартнерам.КлючАналитики, НЕОПРЕДЕЛЕНО)              КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.АрендныеОбязательства)       КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                                            КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	втНачисленияВсего.СуммаНДСВзаиморасчетов                                КАК Сумма,
	|	втНачисленияВсего.СуммаНДСУпр                                           КАК СуммаУпр,
	|	втНачисленияВсего.СуммаНДСРегл                                          КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                                            КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                                            КАК ИдентификаторСтроки,	
	|	&ИдентификаторДокумента                                                 КАК ИдентификаторФинЗаписи,
	|	&ХО_НачислениеНДСВЧастиВыкупнойСтоимости                                КАК ХозяйственнаяОперация,
	|	&НастройкаХО_НачислениеНДСВЧастиВыкупнойСтоимости                       КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	втНачисленияВсего КАК втНачисленияВсего
	|		
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК АналитикаПоПартнерам
	|		ПО АналитикаПоПартнерам.Организация = &Организация
	|			И АналитикаПоПартнерам.Партнер = &Партнер
	|			И АналитикаПоПартнерам.Контрагент = &Контрагент
	|			И АналитикаПоПартнерам.Договор = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И АналитикаПоПартнерам.НаправлениеДеятельности = ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
	|
	|ГДЕ
	|	НЕ &ДосрочныйЧастичныйВыкуп
	|	И (втНачисленияВсего.СуммаНДСВзаиморасчетов <> 0
	|		ИЛИ втНачисленияВсего.СуммаНДСУпр <> 0
	|		ИЛИ втНачисленияВсего.СуммаНДСРегл <> 0)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)                                  КАК ВидДвижения,
	|	
	|	ЕСТЬNULL(АналитикаПоПартнерам.КлючАналитики, НЕОПРЕДЕЛЕНО)              КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.НДС)                         КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                                            КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	втНачисленияВсего.СуммаНДСВзаиморасчетов                                КАК Сумма,
	|	втНачисленияВсего.СуммаНДСУпр                                           КАК СуммаУпр,
	|	втНачисленияВсего.СуммаНДСРегл                                          КАК СуммаРегл,
	|	
	|	ЗНАЧЕНИЕ(Перечисление.ТипыГрафиковФинансовыхИнструментов.Начисления)    КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                                            КАК ИдентификаторСтроки,	
	|	&ИдентификаторДокумента                                                 КАК ИдентификаторФинЗаписи,
	|	&ХО_НачислениеНДСВЧастиВыкупнойСтоимости                                КАК ХозяйственнаяОперация,
	|	&НастройкаХО_НачислениеНДСВЧастиВыкупнойСтоимости                       КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	втНачисленияВсего КАК втНачисленияВсего
	|
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК АналитикаПоПартнерам
	|		ПО АналитикаПоПартнерам.Организация = &Организация
	|			И АналитикаПоПартнерам.Партнер = &Партнер
	|			И АналитикаПоПартнерам.Контрагент = &Контрагент
	|			И АналитикаПоПартнерам.Договор = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И АналитикаПоПартнерам.НаправлениеДеятельности = ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
	|
	|ГДЕ
	|	НЕ &ДосрочныйЧастичныйВыкуп
	|	И (втНачисленияВсего.СуммаНДСВзаиморасчетов <> 0
	|		ИЛИ втНачисленияВсего.СуммаНДСУпр <> 0
	|		ИЛИ втНачисленияВсего.СуммаНДСРегл <> 0)";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	#КонецОбласти
	
	#Область УслугаНДС // Дт <19.ХХ> - Кт <70.07.4>
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)                                  КАК ВидДвижения,
	|	
	|	ЕСТЬNULL(АналитикаПоПартнерам.КлючАналитики, НЕОПРЕДЕЛЕНО)              КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ВыкупнаяСтоимость)           КАК ТипСуммы,
	|
	|	НЕОПРЕДЕЛЕНО                                                            КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	ТаблицаСуммы.СуммаНДСВзаиморасчетов                                     КАК Сумма,
	|	ТаблицаСуммы.СуммаНДСУпр                                                КАК СуммаУпр,
	|	ТаблицаСуммы.СуммаНДСРегл                                               КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                                            КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	ТаблицаНачислений.ИдентификаторСтроки                                   КАК ИдентификаторСтроки,	
	|	ТаблицаНачислений.ИдентификаторСтроки                                   КАК ИдентификаторФинЗаписи,
	|	&ХО_ПоступлениеНДСВЧастиВыкупнойСтоимости                               КАК ХозяйственнаяОперация,
	|	&НастройкаХО_ПоступлениеНДСВЧастиВыкупнойСтоимости                      КАК НастройкаХозяйственнойОперации	
	|
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК ТаблицаНачислений
	|
	|		ЛЕВОЕ СОЕДИНЕНИЕ ВтСуммыДокументовВВалютахУчета КАК ТаблицаСуммы
	|		ПО ТаблицаСуммы.ИдентификаторСтроки = ТаблицаНачислений.ИдентификаторСтроки
	|		
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК АналитикаПоПартнерам
	|		ПО АналитикаПоПартнерам.Организация = &Организация
	|			И АналитикаПоПартнерам.Партнер = &Партнер
	|			И АналитикаПоПартнерам.Контрагент = &Контрагент
	|			И АналитикаПоПартнерам.Договор = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И АналитикаПоПартнерам.НаправлениеДеятельности = ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
	|
	|ГДЕ
	|	ТаблицаНачислений.Ссылка = &Ссылка
	|
	|	И (ТаблицаСуммы.СуммаНДСВзаиморасчетов <> 0
	|		ИЛИ ТаблицаСуммы.СуммаНДСУпр <> 0
	|		ИЛИ ТаблицаСуммы.СуммаНДСРегл <> 0)";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	#КонецОбласти

	#Область ЗачетАвансов // Дт <70.07.4> - Кт <70.07.2, 70.07.3, 70.07.4>
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)                                  КАК ВидДвижения,
	|	
	|	ЕСТЬNULL(АналитикаПоПартнерам.КлючАналитики, НЕОПРЕДЕЛЕНО)              КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ВыкупнаяСтоимость)           КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                                            КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	ТаблицаНачислений.СуммаВзаиморасчетов                                   КАК Сумма,
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|			ТОГДА ТаблицаНачислений.СуммаВзаиморасчетов
	|		ИНАЧЕ ВЫРАЗИТЬ(ТаблицаНачислений.Сумма * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
	|	КОНЕЦ КАК СуммаУпр,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|			ТОГДА ТаблицаНачислений.СуммаВзаиморасчетов
	|		ИНАЧЕ ВЫРАЗИТЬ(ТаблицаНачислений.Сумма * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
	|	КОНЕЦ КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                                            КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	ТаблицаНачислений.ИдентификаторСтроки                                   КАК ИдентификаторСтроки,	
	|	ТаблицаНачислений.ИдентификаторСтроки                                   КАК ИдентификаторФинЗаписи,
	|
	|	ВЫБОР ТаблицаНачислений.ТипПлатежа
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.УслугаПоАренде)
	|			ТОГДА &ХО_ЗачетОплатыУслугиПоАрендеВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.УслугаПоАрендеАванс)
	|			ТОГДА &ХО_ЗачетОплатыУслугиПоАрендеВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ОбеспечительныйПлатеж)
	|			ТОГДА &ХО_ЗачетОбеспечительногоПлатежаВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ВыкупнаяСтоимостьАванс)
	|			ТОГДА &ХО_ЗачетАвансаВыкупнойСтоимостиВСчетВыкупнойСтоимости
	|	КОНЕЦ КАК ХозяйственнаяОперация,
	|
	|	ВЫБОР ТаблицаНачислений.ТипПлатежа
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.УслугаПоАренде)
	|			ТОГДА &НастройкаХО_ЗачетОплатыУслугиПоАрендеВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.УслугаПоАрендеАванс)
	|			ТОГДА &НастройкаХО_ЗачетОплатыУслугиПоАрендеВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ОбеспечительныйПлатеж)
	|			ТОГДА &НастройкаХО_ЗачетОбеспечительногоПлатежаВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ВыкупнаяСтоимостьАванс)
	|			ТОГДА &НастройкаХО_ЗачетАвансаВыкупнойСтоимостиВСчетВыкупнойСтоимости
	|	КОНЕЦ КАК НастройкаХозяйственнойОперации	
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ЗачетАвансов КАК ТаблицаНачислений
	|
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК АналитикаПоПартнерам
	|		ПО АналитикаПоПартнерам.Организация = &Организация
	|			И АналитикаПоПартнерам.Партнер = &Партнер
	|			И АналитикаПоПартнерам.Контрагент = &Контрагент
	|			И АналитикаПоПартнерам.Договор = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И АналитикаПоПартнерам.НаправлениеДеятельности = ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
	|ГДЕ
	|	ТаблицаНачислений.Ссылка = &Ссылка
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)                                  КАК ВидДвижения,
	|	
	|	ЕСТЬNULL(АналитикаПоПартнерам.КлючАналитики, НЕОПРЕДЕЛЕНО)              КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|	ТаблицаНачислений.ТипПлатежа                                            КАК ТипСуммы,
	|	ТаблицаНачислений.РасчетныйДокумент                                     КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	ТаблицаНачислений.СуммаВзаиморасчетов                                   КАК Сумма,
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|			ТОГДА ТаблицаНачислений.СуммаВзаиморасчетов
	|		ИНАЧЕ ВЫРАЗИТЬ(ТаблицаНачислений.Сумма * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
	|	КОНЕЦ КАК СуммаУпр,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|			ТОГДА ТаблицаНачислений.СуммаВзаиморасчетов
	|		ИНАЧЕ ВЫРАЗИТЬ(ТаблицаНачислений.Сумма * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
	|	КОНЕЦ КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                                            КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	ТаблицаНачислений.ИдентификаторСтроки                                   КАК ИдентификаторСтроки,	
	|	ТаблицаНачислений.ИдентификаторСтроки                                   КАК ИдентификаторФинЗаписи,
	|
	|	ВЫБОР ТаблицаНачислений.ТипПлатежа
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.УслугаПоАренде)
	|			ТОГДА &ХО_ЗачетОплатыУслугиПоАрендеВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.УслугаПоАрендеАванс)
	|			ТОГДА &ХО_ЗачетОплатыУслугиПоАрендеВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ОбеспечительныйПлатеж)
	|			ТОГДА &ХО_ЗачетОбеспечительногоПлатежаВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ВыкупнаяСтоимостьАванс)
	|			ТОГДА &ХО_ЗачетАвансаВыкупнойСтоимостиВСчетВыкупнойСтоимости
	|	КОНЕЦ КАК ХозяйственнаяОперация,
	|
	|	ВЫБОР ТаблицаНачислений.ТипПлатежа
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.УслугаПоАренде)
	|			ТОГДА &НастройкаХО_ЗачетОплатыУслугиПоАрендеВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.УслугаПоАрендеАванс)
	|			ТОГДА &НастройкаХО_ЗачетОплатыУслугиПоАрендеВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ОбеспечительныйПлатеж)
	|			ТОГДА &НастройкаХО_ЗачетОбеспечительногоПлатежаВСчетВыкупнойСтоимости
	|		КОГДА ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.ВыкупнаяСтоимостьАванс)
	|			ТОГДА &НастройкаХО_ЗачетАвансаВыкупнойСтоимостиВСчетВыкупнойСтоимости
	|	КОНЕЦ КАК НастройкаХозяйственнойОперации	
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ЗачетАвансов КАК ТаблицаНачислений
	|
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК АналитикаПоПартнерам
	|		ПО АналитикаПоПартнерам.Организация = &Организация
	|			И АналитикаПоПартнерам.Партнер = &Партнер
	|			И АналитикаПоПартнерам.Контрагент = &Контрагент
	|			И АналитикаПоПартнерам.Договор = ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	|			И АналитикаПоПартнерам.НаправлениеДеятельности = ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
	|ГДЕ
	|	ТаблицаНачислений.Ссылка = &Ссылка";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	#КонецОбласти

	#Область СписаниеПроцентовПоАренде // Дт <76.07.1> - Кт <70.07.5>
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период                                             КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)              КАК ВидДвижения,
	|	
	|	РасчетыОстатки.АналитикаУчетаПоПартнерам            КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                            КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.АрендныеОбязательства) КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                        КАК РасчетныйДокумент,
	|	РасчетыОстатки.Валюта                               КАК Валюта,
	|	
	|	РасчетыОстатки.Сумма                                КАК Сумма,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|			ТОГДА РасчетыОстатки.СуммаУпр
	|		ИНАЧЕ РасчетыОстатки.Сумма * &КоэффициентПересчетаВВалютуУпр
	|	КОНЕЦ КАК СуммаУпр,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|			ТОГДА РасчетыОстатки.СуммаРегл
	|		ИНАЧЕ РасчетыОстатки.Сумма * &КоэффициентПересчетаВВалютуРегл
	|	КОНЕЦ КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                        КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                        КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                        КАК ИдентификаторСтроки,	
	|	&ИдентификаторДокумента                             КАК ИдентификаторФинЗаписи,
	|
	|	&ХО_СписаниеПроцентовПоАренде                       КАК ХозяйственнаяОперация,
	|	&НастройкаХО_СписаниеПроцентовПоАренде              КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	ВТ_РасчетыПоФинансовымИнструментам КАК РасчетыОстатки
	|ГДЕ
	|	НЕ &ДосрочныйЧастичныйВыкуп И
	|	РасчетыОстатки.Ссылка = &Ссылка
	|	И РасчетыОстатки.Договор = &Договор
	|	И РасчетыОстатки.ТипСуммы = ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.Проценты)
	|
	|	И (РасчетыОстатки.Сумма <> 0
	|		ИЛИ ВЫБОР
	|				КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|					ТОГДА РасчетыОстатки.СуммаУпр
	|				ИНАЧЕ РасчетыОстатки.Сумма * &КоэффициентПересчетаВВалютуУпр
	|			КОНЕЦ <> 0
	|
	|		ИЛИ ВЫБОР
	|				КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|					ТОГДА РасчетыОстатки.СуммаРегл
	|				ИНАЧЕ РасчетыОстатки.Сумма * &КоэффициентПересчетаВВалютуРегл
	|			КОНЕЦ <> 0)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период                                             КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)              КАК ВидДвижения,
	|	
	|	РасчетыОстатки.АналитикаУчетаПоПартнерам            КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                            КАК Договор,
	|	РасчетыОстатки.ТипСуммы                             КАК ТипСуммы,
	|	РасчетыОстатки.РасчетныйДокумент                    КАК РасчетныйДокумент,
	|	РасчетыОстатки.Валюта                               КАК Валюта,
	|	
	|	РасчетыОстатки.Сумма                                КАК Сумма,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|			ТОГДА РасчетыОстатки.СуммаУпр
	|		ИНАЧЕ РасчетыОстатки.Сумма * &КоэффициентПересчетаВВалютуУпр
	|	КОНЕЦ КАК СуммаУпр,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|			ТОГДА РасчетыОстатки.СуммаРегл
	|		ИНАЧЕ РасчетыОстатки.Сумма * &КоэффициентПересчетаВВалютуРегл
	|	КОНЕЦ КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                        КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                        КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                        КАК ИдентификаторСтроки,	
	|	&ИдентификаторДокумента                             КАК ИдентификаторФинЗаписи,
	|
	|	&ХО_СписаниеПроцентовПоАренде                       КАК ХозяйственнаяОперация,
	|	&НастройкаХО_СписаниеПроцентовПоАренде              КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	ВТ_РасчетыПоФинансовымИнструментам КАК РасчетыОстатки
	|ГДЕ
	|	НЕ &ДосрочныйЧастичныйВыкуп И
	|	РасчетыОстатки.Ссылка = &Ссылка
	|	И РасчетыОстатки.Договор = &Договор
	|	И РасчетыОстатки.ТипСуммы = ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.Проценты)
	|
	|	И (РасчетыОстатки.Сумма <> 0
	|		ИЛИ ВЫБОР
	|				КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|					ТОГДА РасчетыОстатки.СуммаУпр
	|				ИНАЧЕ РасчетыОстатки.Сумма * &КоэффициентПересчетаВВалютуУпр
	|			КОНЕЦ <> 0
	|
	|		ИЛИ ВЫБОР
	|				КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|					ТОГДА РасчетыОстатки.СуммаРегл
	|				ИНАЧЕ РасчетыОстатки.Сумма * &КоэффициентПересчетаВВалютуРегл
	|			КОНЕЦ <> 0)";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	#КонецОбласти

	#Область СписаниеНДСПоАренде // Дт <76.07.1> - Кт <76.07.9>
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период                                             КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)              КАК ВидДвижения,
	|	
	|	РасчетыОстатки.АналитикаУчетаПоПартнерам            КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                            КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.АрендныеОбязательства) КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                        КАК РасчетныйДокумент,
	|	РасчетыОстатки.Валюта                               КАК Валюта,
	|	
	|	РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов КАК Сумма,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|			ТОГДА РасчетыОстатки.СуммаУпр - втНачисленияВсего.СуммаНДСУпр
	|		ИНАЧЕ (РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) * &КоэффициентПересчетаВВалютуУпр
	|	КОНЕЦ КАК СуммаУпр,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|			ТОГДА РасчетыОстатки.СуммаРегл - втНачисленияВсего.СуммаНДСРегл
	|		ИНАЧЕ (РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) * &КоэффициентПересчетаВВалютуРегл
	|	КОНЕЦ КАК СуммаРегл,
	|
	|	НЕОПРЕДЕЛЕНО                                        КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                        КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                        КАК ИдентификаторСтроки,	
	|	&ИдентификаторДокумента                             КАК ИдентификаторФинЗаписи,
	|
	|	&ХО_СписаниеНДСПоАренде                             КАК ХозяйственнаяОперация,
	|	&НастройкаХО_СписаниеНДСПоАренде                    КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	ВТ_РасчетыПоФинансовымИнструментам КАК РасчетыОстатки
	|
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ втНачисленияВсего КАК втНачисленияВсего
	|		ПО ИСТИНА
	|
	|ГДЕ
	|	НЕ &ДосрочныйЧастичныйВыкуп 
	|	И РасчетыОстатки.Ссылка = &Ссылка
	|	И РасчетыОстатки.Договор = &Договор
	|	И РасчетыОстатки.ТипСуммы = ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.НДС)
	|
	|	И ((РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) <> 0
	|
	|		ИЛИ ВЫБОР
	|				КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|					ТОГДА РасчетыОстатки.СуммаУпр - втНачисленияВсего.СуммаНДСУпр
	|				ИНАЧЕ (РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) * &КоэффициентПересчетаВВалютуУпр
	|			КОНЕЦ <> 0
	|
	|		ИЛИ ВЫБОР
	|				КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|					ТОГДА РасчетыОстатки.СуммаРегл - втНачисленияВсего.СуммаНДСРегл
	|				ИНАЧЕ (РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) * &КоэффициентПересчетаВВалютуРегл
	|			КОНЕЦ <> 0)
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Период                                             КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)              КАК ВидДвижения,
	|	
	|	РасчетыОстатки.АналитикаУчетаПоПартнерам            КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                            КАК Договор,
	|	РасчетыОстатки.ТипСуммы                             КАК ТипСуммы,
	|	РасчетыОстатки.РасчетныйДокумент                    КАК РасчетныйДокумент,
	|	РасчетыОстатки.Валюта                               КАК Валюта,
	|	
	|	РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов  КАК Сумма,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|			ТОГДА РасчетыОстатки.СуммаУпр - втНачисленияВсего.СуммаНДСУпр
	|		ИНАЧЕ (РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) * &КоэффициентПересчетаВВалютуУпр
	|	КОНЕЦ КАК СуммаУпр,
	|
	|	ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|			ТОГДА РасчетыОстатки.СуммаРегл - втНачисленияВсего.СуммаНДСРегл
	|		ИНАЧЕ (РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) * &КоэффициентПересчетаВВалютуРегл
	|	КОНЕЦ КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                        КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                        КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                        КАК ИдентификаторСтроки,	
	|	&ИдентификаторДокумента                             КАК ИдентификаторФинЗаписи,
	|
	|	&ХО_СписаниеНДСПоАренде                             КАК ХозяйственнаяОперация,
	|	&НастройкаХО_СписаниеНДСПоАренде                    КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	ВТ_РасчетыПоФинансовымИнструментам КАК РасчетыОстатки
	|
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ втНачисленияВсего КАК втНачисленияВсего
	|		ПО ИСТИНА
	|ГДЕ
	|	НЕ &ДосрочныйЧастичныйВыкуп 
	|	И РасчетыОстатки.Ссылка = &Ссылка
	|	И РасчетыОстатки.Договор = &Договор
	|	И РасчетыОстатки.ТипСуммы = ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.НДС)
	|
	|	И ((РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) <> 0
	|
	|		ИЛИ ВЫБОР
	|				КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|					ТОГДА РасчетыОстатки.СуммаУпр - втНачисленияВсего.СуммаНДСУпр
	|				ИНАЧЕ (РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) * &КоэффициентПересчетаВВалютуУпр
	|			КОНЕЦ <> 0
	|
	|		ИЛИ ВЫБОР
	|				КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|					ТОГДА РасчетыОстатки.СуммаРегл - втНачисленияВсего.СуммаНДСРегл
	|				ИНАЧЕ (РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) * &КоэффициентПересчетаВВалютуРегл
	|			КОНЕЦ <> 0)";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	#КонецОбласти

	#Область ОтражениеАрендныхОбязательствВРасходах // Дт <Расходы> - Кт <76.07.1>
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)                                  КАК ВидДвижения,
	|	
	|	ТаблицаРасходы.АналитикаУчетаПоПартнерам                                КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.АрендныеОбязательства)       КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                                            КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	ТаблицаРасходы.Сумма                                                    КАК Сумма,
	|	ТаблицаРасходы.СуммаУпр                                                 КАК СуммаУпр,
	|	ТаблицаРасходы.СуммаРегл                                                КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                                            КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                                            КАК ИдентификаторСтроки,	
	|	ТаблицаРасходы.ИдентификаторФинЗаписи                                   КАК ИдентификаторФинЗаписи,
	|	ТаблицаРасходы.ХозяйственнаяОперация                                    КАК ХозяйственнаяОперация,
	|	ТаблицаРасходы.НастройкаХозяйственнойОперации                           КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	втРасходыПриПрекращенииДоговораАренды КАК ТаблицаРасходы";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	#КонецОбласти

	#Область ОтражениеАрендныхОбязательствВДоходах // Дт <76.07.1> - Кт <Доходы>
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период                                                                 КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)                                  КАК ВидДвижения,
	|	
	|	ТаблицаДоходы.АналитикаУчетаПоПартнерам                                 КАК АналитикаУчетаПоПартнерам,
	|	&Договор                                                                КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.АрендныеОбязательства)       КАК ТипСуммы,
	|	НЕОПРЕДЕЛЕНО                                                            КАК РасчетныйДокумент,
	|	&ВалютаВзаиморасчетов                                                   КАК Валюта,
	|	
	|	ТаблицаДоходы.Сумма                                                     КАК Сумма,
	|	ТаблицаДоходы.СуммаУпр                                                  КАК СуммаУпр,
	|	ТаблицаДоходы.СуммаРегл                                                 КАК СуммаРегл,
	|	
	|	НЕОПРЕДЕЛЕНО                                                            КАК ТипГрафика,
	|	НЕОПРЕДЕЛЕНО                                                            КАК СтатьяАналитики,
	|	НЕОПРЕДЕЛЕНО                                                            КАК ИдентификаторСтроки,	
	|	ТаблицаДоходы.ИдентификаторФинЗаписи                                    КАК ИдентификаторФинЗаписи,
	|	ТаблицаДоходы.ХозяйственнаяОперация                                     КАК ХозяйственнаяОперация,
	|	ТаблицаДоходы.НастройкаХозяйственнойОперации                            КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	втДоходыПриПрекращенииДоговораАренды КАК ТаблицаДоходы
	|ГДЕ НЕ &ДосрочныйЧастичныйВыкуп";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	#КонецОбласти

	ВыкупАрендованныхОСЛокализация.ДополнитьТекстЗапросаТаблицаРасчетыПоФинансовымИнструментам(СписокЗапросовОбъединение);
	
	ТекстЗапроса = СтрСоединить(СписокЗапросовОбъединение, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции

Процедура ТекстЗапросаТаблицаОтраженияВУчетеНДС(Запрос, ТекстыЗапроса, Регистры)
	
	ТекстЗапросаТаблицаВтТаблицаАналитикУчетаПартий(Запрос, ТекстыЗапроса);
	
	ТекстЦенности =
	"ВЫБРАТЬ
	|	Начисления.Ссылка.Дата КАК Период,
	|	Начисления.Ссылка КАК Ссылка,
	|	Начисления.Ссылка.Организация КАК Организация,
	|	Начисления.Ссылка.Подразделение КАК Подразделение,
	|	Начисления.Ссылка.Контрагент КАК Контрагент,
	|	Начисления.Ссылка.Договор КАК Договор,
	|	НЕОПРЕДЕЛЕНО КАК Грузоотправитель,
	|	Начисления.Ссылка КАК ДокументПриобретения,
	|	Начисления.Ссылка КАК ИсходныйТорговыйДокумент,
	|	ЛОЖЬ КАК ИсправлениеОшибок,
	|	ЛОЖЬ КАК КорректировкаПоСогласованиюСторон,
	|	ЛОЖЬ КАК УменьшитьСуммуНДСКВычету,
	|	НЕОПРЕДЕЛЕНО КАК ДокументКорректировкиПриобретения,
	|	Начисления.Ссылка.НалогообложениеНДС КАК НалогообложениеНДС,
	|	Начисления.Ссылка.ЗакупкаПодДеятельность КАК ВидДеятельностиНДС,
	|	Начисления.СтавкаНДС КАК СтавкаНДС,
	|	НЕОПРЕДЕЛЕНО КАК Номенклатура,
	|	НЕОПРЕДЕЛЕНО КАК ВидЗапасов,
	|	НЕОПРЕДЕЛЕНО КАК НомерГТД,
	|	Начисления.Ссылка.Подразделение КАК ПодразделениеУчета,
	|	Начисления.Ссылка.Договор.НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	ЛОЖЬ КАК ПриобретениеНаПартиюПроизводства,
	|	НЕОПРЕДЕЛЕНО КАК НаправлениеДеятельностиПартииПроизводства,
	|	НЕОПРЕДЕЛЕНО КАК СписатьНаРасходы,
	|	НЕОПРЕДЕЛЕНО КАК СтатьяРасходов,
	|	НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
	|	НЕОПРЕДЕЛЕНО КАК СтатьяПрочихАктивов,
	|	НЕОПРЕДЕЛЕНО КАК АналитикаПрочихАктивов,
	|	НЕОПРЕДЕЛЕНО КАК Назначение,
	|	Начисления.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	НЕОПРЕДЕЛЕНО КАК АналитикаУчетаНоменклатуры,
	|	ТаблицаАналитикУчетаПартий.АналитикаУчетаПартий КАК АналитикаУчетаПартий,
	|	Начисления.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
	|	&НастройкаХО_ПоступлениеНДСВЧастиВыкупнойСтоимости КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК Начисления
	|		ЛЕВОЕ СОЕДИНЕНИЕ ВтТаблицаАналитикУчетаПартий КАК ТаблицаАналитикУчетаПартий
	|		ПО ТаблицаАналитикУчетаПартий.НомерСтроки = Начисления.НомерСтроки
	|ГДЕ
	|	Начисления.Ссылка = &Ссылка";
	УчетНДСУП.ОтразитьПриобретениеУПоставщика(Запрос, ТекстыЗапроса, Регистры, ТекстЦенности);
	
КонецПроцедуры

Функция ТекстЗапросаТаблицаПрочиеРасходы(Запрос, ТекстыЗапроса, Регистры)
	
	ИмяРегистра = "ПрочиеРасходы";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат "";
	КонецЕсли;
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтПрочиеРасходы", ТекстыЗапроса) Тогда
		ТекстЗапросаТаблицаВтПрочиеРасходы(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = РегистрыНакопления.ПрочиеРасходы.ТекстЗапросаТаблицаПрочиеРасходы();
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаТаблицаПартииПрочихРасходов(Запрос, ТекстыЗапроса, Регистры) Экспорт
	
	ИмяРегистра = "ПартииПрочихРасходов";
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтПартииПрочихРасходов", ТекстыЗапроса) Тогда
		ТекстЗапросаТаблицаВтПартииПрочихРасходов(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = РегистрыНакопления.ПартииПрочихРасходов.ТекстЗапросаТаблицаПартииПрочихРасходов();
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаТаблицаПрочиеДоходы(Запрос, ТекстыЗапроса, Регистры)

	ИмяРегистра = "ПрочиеДоходы";
	
	УчетАрендованныхОС.ТекстЗапросаТаблицаВтДоходыПриПрекращенииДоговораАренды(Запрос, ТекстыЗапроса);
	
	СписокЗапросовОбъединение = Новый Массив;
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)         КАК ВидДвижения,
	|	&Период                                        КАК Период,
	|	&Организация                                   КАК Организация,
	|	&Подразделение                                 КАК Подразделение,
	|	&НаправлениеДеятельности                       КАК НаправлениеДеятельности,
	|	&СтатьяДоходовВыкуп                            КАК СтатьяДоходов,
	|	&АналитикаДоходовВыкуп                         КАК АналитикаДоходов,
	|
	|	ТаблицаДоходы.СуммаУпр                         КАК Сумма,
	|	ТаблицаДоходы.СуммаУпр                         КАК СуммаУпр,
	|	ТаблицаДоходы.СуммаРегл                        КАК СуммаРегл,
	|
	|	ТаблицаДоходы.ИдентификаторФинЗаписи           КАК ИдентификаторФинЗаписи,
	|	ТаблицаДоходы.ХозяйственнаяОперация            КАК ХозяйственнаяОперация,
	|	ТаблицаДоходы.НастройкаХозяйственнойОперации   КАК НастройкаХозяйственнойОперации
	|	
	|ИЗ
	|	втДоходыПриПрекращенииДоговораАренды КАК ТаблицаДоходы
	|ГДЕ
	|	НЕ &ДосрочныйЧастичныйВыкуп";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	
	ВыкупАрендованныхОСЛокализация.ДополнитьТекстЗапросаТаблицаПрочиеДоходы(ТекстыЗапроса, СписокЗапросовОбъединение);

	ТекстЗапроса = СтрСоединить(СписокЗапросовОбъединение, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
	Возврат ТекстЗапроса;

КонецФункции

Процедура ТекстЗапросаТаблицаАрендованныеОС(ТекстыЗапроса, Регистры)

	ИмяРегистра = "АрендованныеОС";
	
	Если Не ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат;
	КонецЕсли;
	
	ВнеоборотныеАктивыСлужебный.ТекстЗапросаТаблицаВтУзлыКомпонентыАмортизации(ТекстыЗапроса);
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Ссылка                       КАК Регистратор,
	|	&Период                       КАК Период,
	|	ТаблицаОС.ОсновноеСредство    КАК ОсновноеСредство,
	|	&Организация                  КАК Организация,
	|	&Партнер                      КАК Партнер,
	|	&Контрагент                   КАК Контрагент,
	|	&Договор                      КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.СостоянияОС.СнятоСУчета) КАК Состояние
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК ТаблицаОС
	|ГДЕ
	|	ТаблицаОС.Ссылка = &Ссылка
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	&Ссылка                       КАК Регистратор,
	|	&Период                       КАК Период,
	|	УзлыКомпоненты.УзелКомпонент  КАК ОсновноеСредство,
	|	&Организация                  КАК Организация,
	|	&Партнер                      КАК Партнер,
	|	&Контрагент                   КАК Контрагент,
	|	&Договор                      КАК Договор,
	|	ЗНАЧЕНИЕ(Перечисление.СостоянияОС.СнятоСУчета) КАК Состояние
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК ТаблицаОС
	|
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтУзлыКомпонентыАмортизации КАК УзлыКомпоненты
	|		ПО ТаблицаОС.ОсновноеСредство = УзлыКомпоненты.ОсновноеСредство
	|
	|ГДЕ
	|	ТаблицаОС.Ссылка = &Ссылка";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
		
КонецПроцедуры

Процедура ТекстЗапросаТаблицаУсловияДоговоровАренды(ТекстыЗапроса, Регистры)

	ИмяРегистра = "УсловияДоговоровАренды";
	
	Если Не ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат;
	КонецЕсли;
	
	ВнеоборотныеАктивыСлужебный.ТекстЗапросаТаблицаВтУсловияДоговоровАренды(ТекстыЗапроса);
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Ссылка                                                      КАК Регистратор,
	|	&Период                                                      КАК Период,
	|	&Договор                                                     КАК Договор,
	|	УсловияДоговоровАренды.СуммаОбеспечительногоПлатежа          КАК СуммаОбеспечительногоПлатежа,
	|	УсловияДоговоровАренды.СуммаУслугПоАренде                    КАК СуммаУслугПоАренде,
	|	УсловияДоговоровАренды.СуммаВыкупаПредметовАренды            КАК СуммаВыкупаПредметовАренды,
	|	УсловияДоговоровАренды.СуммаПроцентов                        КАК СуммаПроцентов,
	|	УсловияДоговоровАренды.СуммаНДС                              КАК СуммаНДС,
	|	УсловияДоговоровАренды.СтавкаНДС                             КАК СтавкаНДС,
	|	УсловияДоговоровАренды.СрокЛет                               КАК СрокЛет,
	|	УсловияДоговоровАренды.СрокМес                               КАК СрокМес,
	|	УсловияДоговоровАренды.СрокДней                              КАК СрокДней,
	|	УсловияДоговоровАренды.ДатаНачалаАренды                      КАК ДатаНачалаАренды,
	|	УсловияДоговоровАренды.ДатаПервогоПлатежа                    КАК ДатаПервогоПлатежа,
	|	УсловияДоговоровАренды.ДатаПервогоОбеспечительногоПлатежа    КАК ДатаПервогоОбеспечительногоПлатежа,
	|	УсловияДоговоровАренды.ДатаВыкупа                            КАК ДатаВыкупа,
	|	УсловияДоговоровАренды.ПроцентнаяСтавка                      КАК ПроцентнаяСтавка,
	|	УсловияДоговоровАренды.ПериодичностьОплат                    КАК ПериодичностьОплат,
	|	УсловияДоговоровАренды.ПериодичностьНачислений               КАК ПериодичностьНачислений,
	|	УсловияДоговоровАренды.СтоимостьПредметовАренды              КАК СтоимостьПредметовАренды,
	|	УсловияДоговоровАренды.ОплатаУслугиПоАренде                  КАК ОплатаУслугиПоАренде,
	|	УсловияДоговоровАренды.НачислениеУслугиПоАренде              КАК НачислениеУслугиПоАренде,
	|	УсловияДоговоровАренды.АктуальныеУсловияДоговора             КАК АктуальныеУсловияДоговора,
	|	ЗНАЧЕНИЕ(Перечисление.СостоянияДоговоровКонтрагентов.Закрыт) КАК Состояние
	|ИЗ
	|	втУсловияДоговоровАренды КАК УсловияДоговоровАренды
	|ГДЕ
	|	НЕ &ДосрочныйЧастичныйВыкуп";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
		
КонецПроцедуры

Процедура ТекстЗапросаТаблицаТоварыКОформлениюДокументовИмпорта(ТекстыЗапроса, Регистры)
	
	ИмяРегистра = "ТоварыКОформлениюДокументовИмпорта";
	
	Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
		Возврат;
	КонецЕсли;
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	КОНЕЦПЕРИОДА(ТоварыКОформлениюДокументовИмпортаОстаткиИОбороты.Период, МЕСЯЦ) КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
	|	&Ссылка КАК Регистратор,
	|	&Организация КАК Организация,
	|	&Партнер КАК Поставщик,
	|	ТоварыКОформлениюДокументовИмпортаОстаткиИОбороты.ДокументПоступления КАК ДокументПоступления,
	|	ТоварыКОформлениюДокументовИмпортаОстаткиИОбороты.ТипДокументаИмпорта КАК ТипДокументаИмпорта,
	|	0 КАК Количество,
	|	ТоварыКОформлениюДокументовИмпортаОстаткиИОбороты.СуммаОборот КАК Сумма
	|ИЗ
	|	РегистрНакопления.ТоварыКОформлениюДокументовИмпорта.ОстаткиИОбороты(
	|			,
	|			,
	|			Месяц,
	|			,
	|			ДокументПоступления = &ДокументЗаключенияДоговораАренды
	|				И ТипДокументаИмпорта = &ИдентификаторЗаявлениеОВвозеТоваров) КАК ТоварыКОформлениюДокументовИмпортаОстаткиИОбороты
	|ГДЕ
	|	&ТребуетсяОформлениеЗаявленийОВвозе
	|	И ТоварыКОформлениюДокументовИмпортаОстаткиИОбороты.СуммаОборот > 0
	|	И КОНЕЦПЕРИОДА(ТоварыКОформлениюДокументовИмпортаОстаткиИОбороты.Период, МЕСЯЦ) > КОНЕЦПЕРИОДА(&Период, МЕСЯЦ)"; 
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	
КонецПроцедуры


#Область ФормированиеВременныхТаблицыДляПроведения

Процедура ТекстЗапросаТаблицаВтНачисленияВсего(ТекстыЗапроса)
	
	ИмяТаблицы = "ВтНачисленияВсего";
	
	Если ПроведениеДокументов.ЕстьТаблицаЗапроса(ИмяТаблицы, ТекстыЗапроса) Тогда
		Возврат;
	КонецЕсли;

	ТекстЗапроса =
	"ВЫБРАТЬ
	|	СУММА(Начисления.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
	|	СУММА(Начисления.СуммаНДСВзаиморасчетов) КАК СуммаНДСВзаиморасчетов,
	|
	|	СУММА(ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|			ТОГДА Начисления.СуммаВзаиморасчетов
	|		ИНАЧЕ ВЫРАЗИТЬ(Начисления.СуммаСНДС * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
	|	КОНЕЦ) КАК СуммаРегл,
	|
	|	СУММА(ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|			ТОГДА Начисления.СуммаВзаиморасчетов
	|		ИНАЧЕ ВЫРАЗИТЬ(Начисления.СуммаСНДС * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
	|	КОНЕЦ) КАК СуммаУпр,
	|
	|	СУММА(ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
	|			ТОГДА Начисления.СуммаНДСВзаиморасчетов
	|		ИНАЧЕ ВЫРАЗИТЬ(Начисления.СуммаНДС * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
	|	КОНЕЦ) КАК СуммаНДСРегл,
	|
	|	СУММА(ВЫБОР
	|		КОГДА &ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
	|			ТОГДА Начисления.СуммаНДСВзаиморасчетов
	|		ИНАЧЕ ВЫРАЗИТЬ(Начисления.СуммаНДСВзаиморасчетов * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
	|	КОНЕЦ) КАК СуммаНДСУпр
	|
	|ПОМЕСТИТЬ втНачисленияВсего
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК Начисления
	|ГДЕ
	|	Начисления.Ссылка = &Ссылка";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяТаблицы);
	
КонецПроцедуры

Процедура ТекстЗапросаТаблицаВтИзменениеАрендныхОбязательств(ТекстыЗапроса)
	
	ИмяТаблицы = "втИзменениеАрендныхОбязательств";
	
	Если ПроведениеДокументов.ЕстьТаблицаЗапроса(ИмяТаблицы, ТекстыЗапроса) Тогда
		Возврат;
	КонецЕсли;
	
	ТекстЗапросаТаблицаВтНачисленияВсего(ТекстыЗапроса);
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	СУММА(Таблица.Сумма) КАК Сумма,
	|	СУММА(Таблица.СуммаРегл) КАК СуммаРегл,
	|	СУММА(Таблица.СуммаУпр) КАК СуммаУпр
	|ПОМЕСТИТЬ втИзменениеАрендныхОбязательств
	|ИЗ
	|	(ВЫБРАТЬ
	|		втНачисленияВсего.СуммаВзаиморасчетов   КАК Сумма,
	|		втНачисленияВсего.СуммаУпр              КАК СуммаУпр,
	|		втНачисленияВсего.СуммаРегл             КАК СуммаРегл
	|	ИЗ
	|		втНачисленияВсего КАК втНачисленияВсего
	|
	|	ОБЪЕДИНИТЬ ВСЕ
	|
	|	ВЫБРАТЬ
	|		РасчетыОстатки.Сумма                    КАК Сумма,
	|		РасчетыОстатки.СуммаУпр                 КАК СуммаУпр,
	|		РасчетыОстатки.СуммаРегл                КАК СуммаРегл
	|	ИЗ
	|		ВТ_РасчетыПоФинансовымИнструментам КАК РасчетыОстатки
	|	ГДЕ
	|		РасчетыОстатки.Ссылка = &Ссылка
	|		И РасчетыОстатки.Договор = &Договор
	|		И РасчетыОстатки.ТипСуммы = ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.Проценты)
	|		И (РасчетыОстатки.Сумма <> 0
	|			ИЛИ РасчетыОстатки.СуммаУпр <> 0
	|			ИЛИ РасчетыОстатки.СуммаРегл <> 0)
	|
	|	ОБЪЕДИНИТЬ ВСЕ
	|
	|	ВЫБРАТЬ
	|		РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов  КАК Сумма,
	|		РасчетыОстатки.СуммаУпр - втНачисленияВсего.СуммаНДСУпр          КАК СуммаУпр,
	|		РасчетыОстатки.СуммаРегл - втНачисленияВсего.СуммаНДСРегл        КАК СуммаРегл
	|	ИЗ
	|		ВТ_РасчетыПоФинансовымИнструментам КАК РасчетыОстатки
	|
	|			ВНУТРЕННЕЕ СОЕДИНЕНИЕ втНачисленияВсего КАК втНачисленияВсего
	|			ПО ИСТИНА
	|
	|	ГДЕ
	|		РасчетыОстатки.Ссылка = &Ссылка
	|		И РасчетыОстатки.Договор = &Договор
	|		И РасчетыОстатки.ТипСуммы = ЗНАЧЕНИЕ(Перечисление.ТипыПлатежейПоАренде.НДС)
	|		И ((РасчетыОстатки.Сумма - втНачисленияВсего.СуммаНДСВзаиморасчетов) <> 0
	|			ИЛИ (РасчетыОстатки.СуммаУпр - втНачисленияВсего.СуммаНДСУпр) <> 0
	|			ИЛИ (РасчетыОстатки.СуммаРегл - втНачисленияВсего.СуммаНДСРегл) <> 0)
	|
	|	) КАК Таблица";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяТаблицы);
	
КонецПроцедуры

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

Процедура ТекстЗапросаТаблицаВтДанныеАвансов(ТекстыЗапроса)
	
	ИмяТаблицы = "втДанныеАвансов";

	Если ПроведениеДокументов.ЕстьТаблицаЗапроса(ИмяТаблицы, ТекстыЗапроса) Тогда
		Возврат;
	КонецЕсли;
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	&ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	ДанныеАвансов.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	ВЫБОР
	|		КОГДА ДанныеАвансов.РасчетныйДокумент ССЫЛКА Документ.СписаниеБезналичныхДенежныхСредств
	|			ТОГДА ВЫРАЗИТЬ(ДанныеАвансов.РасчетныйДокумент КАК Документ.СписаниеБезналичныхДенежныхСредств).Дата
	|		КОГДА ДанныеАвансов.РасчетныйДокумент ССЫЛКА Документ.РасходныйКассовыйОрдер
	|			ТОГДА ВЫРАЗИТЬ(ДанныеАвансов.РасчетныйДокумент КАК Документ.РасходныйКассовыйОрдер).Дата
	|		КОГДА ДанныеАвансов.РасчетныйДокумент ССЫЛКА Документ.ПервичныйДокумент
	|			ТОГДА ВЫРАЗИТЬ(ДанныеАвансов.РасчетныйДокумент КАК Документ.ПервичныйДокумент).Дата
	|	КОНЕЦ КАК Дата
	|ПОМЕСТИТЬ втДанныеАвансов
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ЗачетАвансов КАК ДанныеАвансов
	|ГДЕ
	|	ДанныеАвансов.Ссылка = &Ссылка
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	Дата";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяТаблицы);
	
КонецПроцедуры

Процедура ТекстЗапросаТаблицаВтКоэффициентыПересчетаВалют(ТекстыЗапроса)

	ИмяТаблицы = "втКоэффициентыПересчетаВалют";

	Если ПроведениеДокументов.ЕстьТаблицаЗапроса(ИмяТаблицы, ТекстыЗапроса) Тогда
		Возврат;
	КонецЕсли;
	
	ТекстЗапросаТаблицаВтДанныеАвансов(ТекстыЗапроса);
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	ДатыДокументов.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	ДатыДокументов.Дата КАК Дата
	|ПОМЕСТИТЬ ТаблицаПериодов
	|ИЗ
	|	(ВЫБРАТЬ
	|		ДанныеДокумента.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|		ДанныеДокумента.Дата КАК Дата
	|	ИЗ
	|		Документ.ВыкупАрендованныхОС КАК ДанныеДокумента
	|	ГДЕ
	|		ДанныеДокумента.Ссылка = &Ссылка
	|	
	|	ОБЪЕДИНИТЬ ВСЕ
	|	
	|	ВЫБРАТЬ
	|		ДанныеАвансов.ВалютаВзаиморасчетов,
	|		ДанныеАвансов.Дата
	|	ИЗ
	|		втДанныеАвансов КАК ДанныеАвансов) КАК ДатыДокументов
	|
	|СГРУППИРОВАТЬ ПО
	|	ДатыДокументов.ВалютаВзаиморасчетов,
	|	ДатыДокументов.Дата
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	ВалютаВзаиморасчетов,
	|	Дата";
	ТекстыЗапроса.Добавить(ТекстЗапроса, "ТаблицаПериодов");
	
	ФинансовыеИнструменты.ТекстЗапросаВтКоэффициентыПересчетаВалют(ТекстыЗапроса, ИмяТаблицы);

КонецПроцедуры

Процедура ТекстЗапросаТаблицаВтСуммыДокументовВВалютахУчета(ТекстыЗапроса) Экспорт
	
	ИмяТаблицы = "ВтСуммыДокументовВВалютахУчета";
	
	Если ПроведениеДокументов.ЕстьТаблицаЗапроса(ИмяТаблицы, ТекстыЗапроса) Тогда
		Возврат;
	КонецЕсли;
	
	// Для валютных договоров аренды расчет НДС происходит следующим образом:
	//    Авансы считаются по курсу на дату аванса получаем базу для расчета НДС по авансам, 
	//    эта сумма вычитается из выкупной стоимости по курсу на дату выкупа - получаем базу для расчета НДС 
	//    по остатку выкупной стоимости.
	//    Обе базы суммируются и рассчитывается НДС по ставке.
	// Для договоров аренды в У.Е. расчет НДС происходит следующим образом:
	//    Авансы считаются по курсу на дату аванса, суммируем с суммой авансов по курсу на дату выкупа, делим пополам -
	//    получаем базу для расчета НДС по авансам, 
	//    эта сумма вычитается из выкупной стоимости  по курсу на дату выкупа - получаем базу для расчета НДС 
	//    по остатку выкупной стоимости.
	//    Обе базы суммируются и рассчитывается НДС по ставке.
	// Формируем итоговую ВтСуммыДокументовВВалютахУчета.

	ТекстЗапросаТаблицаВтДанныеАвансов(ТекстыЗапроса);
	ТекстЗапросаТаблицаВтКоэффициентыПересчетаВалют(ТекстыЗапроса);
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	ДанныеОС.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ДанныеОС.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	ДанныеОС.СуммаНДСВзаиморасчетов КАК СуммаНДСВзаиморасчетов,
	|	ДанныеОС.СтавкаНДС КАК СтавкаНДС,
	|	ВЫРАЗИТЬ(ДанныеОС.СтавкаНДС КАК Справочник.СтавкиНДС).Ставка КАК СтавкаНДСЗначение
	|ПОМЕСТИТЬ ДанныеОС
	|ИЗ
	|	Документ.ВыкупАрендованныхОС.ОС КАК ДанныеОС
	|ГДЕ
	|	ДанныеОС.Ссылка = &Ссылка
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	ИдентификаторСтроки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	СУММА(ДанныеОС.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов
	|ПОМЕСТИТЬ ДанныеОССуммарно
	|ИЗ
	|	ДанныеОС КАК ДанныеОС
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ДанныеОС.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ДанныеАвансов.Дата КАК Дата,
	|	ВЫБОР
	|		КОГДА ДанныеОССуммарно.СуммаВзаиморасчетов <> 0
	|			ТОГДА ВЫРАЗИТЬ(ДанныеАвансов.СуммаВзаиморасчетов * ДанныеОС.СуммаВзаиморасчетов / ДанныеОССуммарно.СуммаВзаиморасчетов КАК ЧИСЛО(31, 2))
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК СуммаВзаиморасчетов,
	|	ВЫБОР
	|		КОГДА ДанныеОССуммарно.СуммаВзаиморасчетов <> 0
	|			ТОГДА ВЫРАЗИТЬ(ДанныеАвансов.СуммаВзаиморасчетов * ДанныеОС.СуммаВзаиморасчетов / ДанныеОССуммарно.СуммаВзаиморасчетов
	|				* ДанныеОС.СтавкаНДСЗначение / (ДанныеОС.СтавкаНДСЗначение + 100) КАК ЧИСЛО(31, 2))
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК СуммаНДСВзаиморасчетов
	|ПОМЕСТИТЬ АвансыПоОС
	|ИЗ
	|	ДанныеОС КАК ДанныеОС
	|		ЛЕВОЕ СОЕДИНЕНИЕ втДанныеАвансов КАК ДанныеАвансов
	|		ПО (ИСТИНА)
	|		ЛЕВОЕ СОЕДИНЕНИЕ ДанныеОССуммарно КАК ДанныеОССуммарно
	|		ПО (ИСТИНА)
	|ГДЕ
	|	НЕ ДанныеАвансов.СуммаВзаиморасчетов ЕСТЬ NULL
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	Дата
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	АвансыПоОС.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	СУММА(АвансыПоОС.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
	|	СУММА(АвансыПоОС.СуммаНДСВзаиморасчетов) КАК СуммаНДСВзаиморасчетов
	|ПОМЕСТИТЬ АвансыПоОССуммарно
	|ИЗ
	|	АвансыПоОС КАК АвансыПоОС
	|
	|СГРУППИРОВАТЬ ПО
	|	АвансыПоОС.ИдентификаторСтроки
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	ИдентификаторСтроки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ДанныеОС.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	ВЫБОР
	|		КОГДА ДанныеОС.СуммаВзаиморасчетов - ЕСТЬNULL(АвансыПоОССуммарно.СуммаВзаиморасчетов, 0) > 0
	|			ТОГДА ДанныеОС.СуммаВзаиморасчетов - ЕСТЬNULL(АвансыПоОССуммарно.СуммаВзаиморасчетов, 0)
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК Сумма,
	|	ВЫБОР
	|		КОГДА ДанныеОС.СуммаНДСВзаиморасчетов - ЕСТЬNULL(АвансыПоОССуммарно.СуммаНДСВзаиморасчетов, 0) > 0
	|			ТОГДА ДанныеОС.СуммаНДСВзаиморасчетов - ЕСТЬNULL(АвансыПоОССуммарно.СуммаНДСВзаиморасчетов, 0)
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК СуммаНДС
	|ПОМЕСТИТЬ ОстаткиВзаиморасчетов
	|ИЗ
	|	ДанныеОС КАК ДанныеОС
	|		ЛЕВОЕ СОЕДИНЕНИЕ АвансыПоОССуммарно КАК АвансыПоОССуммарно
	|		ПО ДанныеОС.ИдентификаторСтроки = АвансыПоОССуммарно.ИдентификаторСтроки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ВложенныйЗапрос.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	СУММА(ВложенныйЗапрос.СуммаВзаиморасчетов) КАК СуммаВзаиморасчетов,
	|	СУММА(ВложенныйЗапрос.СуммаНДСВзаиморасчетов) КАК СуммаНДСВзаиморасчетов,
	|	СУММА(ВложенныйЗапрос.СуммаРегл) КАК СуммаРегл,
	|	СУММА(ВложенныйЗапрос.СуммаНДСРегл) КАК СуммаНДСРегл,
	|	СУММА(ВложенныйЗапрос.СуммаУпр) КАК СуммаУпр,
	|	СУММА(ВложенныйЗапрос.СуммаНДСУпр) КАК СуммаНДСУпр
	|ПОМЕСТИТЬ ДанныеРасчета
	|ИЗ
	|	(ВЫБРАТЬ
	|		АвансыПоОС.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|		АвансыПоОС.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|		АвансыПоОС.СуммаНДСВзаиморасчетов КАК СуммаНДСВзаиморасчетов,
	|		ВЫБОР
	|			КОГДА &ВалютныйДоговор
	|				ТОГДА АвансыПоОС.СуммаВзаиморасчетов * ЕСТЬNULL(КурсыВалют.КоэффициентПересчетаРегл, 0)
	|			ИНАЧЕ ВЫРАЗИТЬ((АвансыПоОС.СуммаВзаиморасчетов * ЕСТЬNULL(КурсыВалют.КоэффициентПересчетаРегл, 0)
	|					+ АвансыПоОС.СуммаВзаиморасчетов * ЕСТЬNULL(КурсыНаДатуВыкупа.КоэффициентПересчетаРегл, 0)) / 2 КАК ЧИСЛО(31, 2))
	|		КОНЕЦ КАК СуммаРегл,
	|		ВЫБОР
	|			КОГДА &ВалютныйДоговор
	|				ТОГДА АвансыПоОС.СуммаНДСВзаиморасчетов * ЕСТЬNULL(КурсыВалют.КоэффициентПересчетаРегл, 0)
	|			ИНАЧЕ ВЫРАЗИТЬ((АвансыПоОС.СуммаНДСВзаиморасчетов * ЕСТЬNULL(КурсыВалют.КоэффициентПересчетаРегл, 0)
	|					+ АвансыПоОС.СуммаНДСВзаиморасчетов * ЕСТЬNULL(КурсыНаДатуВыкупа.КоэффициентПересчетаРегл, 0)) / 2 КАК ЧИСЛО(31, 2))
	|		КОНЕЦ КАК СуммаНДСРегл,
	|		ВЫБОР
	|			КОГДА &ВалютныйДоговор
	|				ТОГДА АвансыПоОС.СуммаВзаиморасчетов * ЕСТЬNULL(КурсыВалют.КоэффициентПересчетаУпр, 0)
	|			ИНАЧЕ ВЫРАЗИТЬ((АвансыПоОС.СуммаВзаиморасчетов * ЕСТЬNULL(КурсыВалют.КоэффициентПересчетаУпр, 0)
	|					+ АвансыПоОС.СуммаВзаиморасчетов * ЕСТЬNULL(КурсыНаДатуВыкупа.КоэффициентПересчетаУпр, 0)) / 2 КАК ЧИСЛО(31, 2))
	|		КОНЕЦ КАК СуммаУпр,
	|		ВЫБОР
	|			КОГДА &ВалютныйДоговор
	|				ТОГДА АвансыПоОС.СуммаНДСВзаиморасчетов * ЕСТЬNULL(КурсыВалют.КоэффициентПересчетаУпр, 0)
	|			ИНАЧЕ ВЫРАЗИТЬ((АвансыПоОС.СуммаНДСВзаиморасчетов * ЕСТЬNULL(КурсыВалют.КоэффициентПересчетаУпр, 0)
	|					+ АвансыПоОС.СуммаНДСВзаиморасчетов * ЕСТЬNULL(КурсыНаДатуВыкупа.КоэффициентПересчетаУпр, 0)) / 2 КАК ЧИСЛО(31, 2))
	|		КОНЕЦ КАК СуммаНДСУпр
	|	ИЗ
	|		АвансыПоОС КАК АвансыПоОС
	|			ЛЕВОЕ СОЕДИНЕНИЕ ВтКоэффициентыПересчетаВалют КАК КурсыВалют
	|			ПО АвансыПоОС.Дата = КурсыВалют.Дата
	|			ЛЕВОЕ СОЕДИНЕНИЕ ВтКоэффициентыПересчетаВалют КАК КурсыНаДатуВыкупа
	|			ПО (КурсыНаДатуВыкупа.Дата = &Период)
	|	
	|	ОБЪЕДИНИТЬ ВСЕ
	|	
	|	ВЫБРАТЬ
	|		ОстаткиВзаиморасчетов.ИдентификаторСтроки,
	|		ОстаткиВзаиморасчетов.Сумма,
	|		ОстаткиВзаиморасчетов.СуммаНДС,
	|		ОстаткиВзаиморасчетов.Сумма * ЕСТЬNULL(КурсыНаДатуВыкупа.КоэффициентПересчетаРегл, 0),
	|		ОстаткиВзаиморасчетов.СуммаНДС * ЕСТЬNULL(КурсыНаДатуВыкупа.КоэффициентПересчетаРегл, 0),
	|		ОстаткиВзаиморасчетов.Сумма * ЕСТЬNULL(КурсыНаДатуВыкупа.КоэффициентПересчетаУпр, 0),
	|		ОстаткиВзаиморасчетов.СуммаНДС * ЕСТЬNULL(КурсыНаДатуВыкупа.КоэффициентПересчетаУпр, 0)
	|	ИЗ
	|		ОстаткиВзаиморасчетов КАК ОстаткиВзаиморасчетов
	|			ЛЕВОЕ СОЕДИНЕНИЕ ВтКоэффициентыПересчетаВалют КАК КурсыНаДатуВыкупа
	|			ПО (КурсыНаДатуВыкупа.Дата = &Период)) КАК ВложенныйЗапрос
	|
	|СГРУППИРОВАТЬ ПО
	|	ВложенныйЗапрос.ИдентификаторСтроки
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	ИдентификаторСтроки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ДанныеОС.ИдентификаторСтроки КАК ИдентификаторСтроки,
	|	&Ссылка КАК Ссылка,
	|	&Период КАК Период,
	|	&Валюта КАК Валюта,
	|	&Валюта КАК ВалютаДокумента,
	|	&ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	&Период КАК ПериодБазыНДС,
	|	НЕОПРЕДЕЛЕНО КАК ОбъектРасчетов,
	|	ДанныеРасчета.СуммаВзаиморасчетов КАК СуммаСНДС,
	|	ДанныеРасчета.СуммаВзаиморасчетов - ДанныеРасчета.СуммаНДСВзаиморасчетов КАК СуммаБезНДС,
	|	ДанныеРасчета.СуммаНДСВзаиморасчетов КАК СуммаНДС,
	|	ДанныеОС.СтавкаНДС КАК СтавкаНДС,
	|	ДанныеРасчета.СуммаРегл - ДанныеРасчета.СуммаНДСРегл КАК СуммаБезНДСРегл,
	|	ДанныеРасчета.СуммаРегл - ДанныеРасчета.СуммаНДСРегл КАК БазаНДСРегл,
	|	ДанныеРасчета.СуммаНДСРегл КАК СуммаНДСРегл,
	|	ДанныеРасчета.СуммаУпр - ДанныеРасчета.СуммаНДСУпр КАК СуммаБезНДСУпр,
	|	ДанныеРасчета.СуммаНДСУпр КАК СуммаНДСУпр,
	|	ДанныеРасчета.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
	|	ДанныеРасчета.СуммаВзаиморасчетов - ДанныеРасчета.СуммаНДСВзаиморасчетов КАК СуммаБезНДСВзаиморасчетов,
	|	ДанныеРасчета.СуммаНДСВзаиморасчетов КАК СуммаНДСВзаиморасчетов
	|ПОМЕСТИТЬ ВтСуммыДокументовВВалютахУчета
	|ИЗ
	|	ДанныеОС КАК ДанныеОС
	|		ЛЕВОЕ СОЕДИНЕНИЕ ДанныеРасчета КАК ДанныеРасчета
	|		ПО ДанныеОС.ИдентификаторСтроки = ДанныеРасчета.ИдентификаторСтроки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ДанныеОС
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ДанныеОССуммарно
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ АвансыПоОС
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ АвансыПоОССуммарно
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ОстаткиВзаиморасчетов
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|УНИЧТОЖИТЬ ДанныеРасчета";
	
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяТаблицы);
	
КонецПроцедуры

Функция ТекстЗапросаТаблицаВтПрочиеРасходы(Запрос, ТекстыЗапроса)
	
	ИмяРегистра = "ВтПрочиеРасходы";
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтИсходныеПрочиеРасходы", ТекстыЗапроса) Тогда
		ТекстЗапросаТаблицаВтИсходныеПрочиеРасходы(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = РегистрыНакопления.ПрочиеРасходы.ТекстЗапросаТаблицаВтПрочиеРасходы();
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	Возврат ТекстЗапроса;
	
КонецФункции

Процедура ТекстЗапросаТаблицаВтИсходныеПрочиеРасходы(Запрос, ТекстыЗапроса)
	
	ИмяРегистра = "ВтИсходныеПрочиеРасходы";
	
	УчетАрендованныхОС.ТекстЗапросаТаблицаВтРасходыПриПрекращенииДоговораАренды(Запрос, ТекстыЗапроса);
	
	СписокЗапросовОбъединение = Новый Массив;
	СписокЗапросовОбъединение.Добавить(РегистрыНакопления.ПрочиеРасходы.ТекстОписаниеВтИсходныеПрочиеРасходы());
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
	|	
	|	&Организация КАК Организация,
	|	&Подразделение КАК Подразделение,
	|	&СтатьяРасходовВыкуп КАК СтатьяРасходов,
	|	&АналитикаРасходовВыкуп КАК АналитикаРасходов,
	|	&НаправлениеДеятельности КАК НаправлениеДеятельности,
	|	НЕОПРЕДЕЛЕНО КАК ВидДеятельностиНДС,
	|	
	|	ТаблицаРасходы.СуммаУпр КАК СуммаСНДС,
	|	ТаблицаРасходы.СуммаУпр КАК СуммаБезНДС,
	|	ТаблицаРасходы.СуммаУпр КАК СуммаБезНДСУпр,
	|	0 КАК СуммаСНДСРегл,
	|	ТаблицаРасходы.СуммаРегл КАК СуммаБезНДСРегл,
	|	0 КАК ПостояннаяРазница,
	|	ТаблицаРасходы.СуммаРегл КАК ВременнаяРазница,
	|	
	|	НЕОПРЕДЕЛЕНО КАК ХозяйственнаяОперация,
	|	НЕОПРЕДЕЛЕНО КАК АналитикаУчетаНоменклатуры,
	|
	|	ТаблицаРасходы.ИдентификаторФинЗаписи КАК ИдентификаторФинЗаписи,
	|	ТаблицаРасходы.НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации
	|ИЗ
	|	втРасходыПриПрекращенииДоговораАренды КАК ТаблицаРасходы";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	
	ВыкупАрендованныхОСЛокализация.ДополнитьТекстЗапросаТаблицаВтИсходныеПрочиеРасходы(Запрос, ТекстыЗапроса, СписокЗапросовОбъединение);
	
	ТекстЗапроса = СтрСоединить(СписокЗапросовОбъединение, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());

	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра, Истина);
	
КонецПроцедуры

Функция ТекстЗапросаТаблицаВтПартииПрочихРасходов(Запрос, ТекстыЗапроса)
	
	ИмяРегистра = "ВтПартииПрочихРасходов";
	
	Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтИсходныеПартииПрочихРасходов", ТекстыЗапроса) Тогда
		ТекстЗапросаТаблицаВтИсходныеПартииПрочихРасходов(Запрос, ТекстыЗапроса);
	КонецЕсли;
	
	ТекстЗапроса = РегистрыНакопления.ПартииПрочихРасходов.ТекстЗапросаТаблицаВтПартииПрочихРасходов();
	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
	Возврат ТекстЗапроса;
	
КонецФункции

Функция ТекстЗапросаТаблицаВтИсходныеПартииПрочихРасходов(Запрос, ТекстыЗапроса)
	
	ИмяРегистра = "ВтИсходныеПартииПрочихРасходов";
	
	УчетАрендованныхОС.ТекстЗапросаТаблицаВтРасходыПриПрекращенииДоговораАренды(Запрос, ТекстыЗапроса);
	
	СписокЗапросовОбъединение = Новый Массив;
	СписокЗапросовОбъединение.Добавить(РегистрыНакопления.ПартииПрочихРасходов.ТекстОписаниеВтИсходныеПартииПрочихРасходов());

	ТекстЗапроса =
	"ВЫБРАТЬ
	|	&Период                                         КАК Период,
	|	ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)          КАК ВидДвижения,
	|	&Организация                                    КАК Организация,
	|	&Подразделение                                  КАК Подразделение,
	|	&СтатьяРасходовВыкуп                            КАК СтатьяРасходов,
	|	&АналитикаРасходовВыкуп                         КАК АналитикаРасходов,
	|	НЕОПРЕДЕЛЕНО                                    КАК АналитикаАктивовПассивов,
	|	&Ссылка                                         КАК ДокументПоступленияРасходов,
	|	ЗНАЧЕНИЕ(Справочник.КлючиАналитикиУчетаПартий.ПустаяСсылка) КАК АналитикаУчетаПартий,
	|	&НаправлениеДеятельности                        КАК НаправлениеДеятельности,
	|	НЕОПРЕДЕЛЕНО                                    КАК АналитикаУчетаНоменклатуры,
	|	НЕОПРЕДЕЛЕНО                                    КАК ВидДеятельностиНДС,
	|
	|	ТаблицаРасходы.СуммаУпр                         КАК Стоимость,
	|	ТаблицаРасходы.СуммаУпр                         КАК СтоимостьБезНДС,
	|	0                                               КАК НДСУпр,
	|	ТаблицаРасходы.СуммаРегл                        КАК СтоимостьРегл,
	|	0                                               КАК НДСРегл,
	|	0                                               КАК ПостояннаяРазница,
	|	0                                               КАК ВременнаяРазница,
	|
	|	ТаблицаРасходы.ХозяйственнаяОперация            КАК ХозяйственнаяОперация,
	|	ТаблицаРасходы.ИдентификаторФинЗаписи           КАК ИдентификаторФинЗаписи,
	|	ТаблицаРасходы.НастройкаХозяйственнойОперации   КАК НастройкаХозяйственнойОперации
	|
	|ИЗ
	|	втРасходыПриПрекращенииДоговораАренды КАК ТаблицаРасходы
	|		ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.СтатьиРасходов КАК ПВХСтатьиРасходов
	|		ПО &СтатьяРасходовВыкуп = ПВХСтатьиРасходов.Ссылка
	|ГДЕ
	|	&ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ДосрочныйВыкупАрендованныхОС)
	|	И ПВХСтатьиРасходов.ВариантРаспределенияРасходовРегл В (ЗНАЧЕНИЕ(Перечисление.ВариантыРаспределенияРасходов.НаСебестоимостьТоваров))";
	СписокЗапросовОбъединение.Добавить(ТекстЗапроса);
	
	ВыкупАрендованныхОСЛокализация.ДополнитьТекстЗапросаТаблицаПартииПрочихРасходов(Запрос, ТекстыЗапроса, СписокЗапросовОбъединение);
	
	ТекстЗапроса = СтрСоединить(СписокЗапросовОбъединение, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());

	ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);

	Возврат ТекстЗапроса;
	
КонецФункции

#КонецОбласти

#КонецОбласти

#Область ПроведениеПоРеглУчету

Функция ТекстЗапросаВТОтраженияВРеглУчете() Экспорт

	Возврат "";

КонецФункции

Функция ТекстОтраженияВРеглУчете() Экспорт

	Возврат ВыкупАрендованныхОСЛокализация.ТекстОтраженияВРеглУчете();

КонецФункции

#КонецОбласти

#Область УчетныеМеханизмы

Функция ПараметрыВыбораСтатейИАналитик() Экспорт
	
	ПараметрыВыбораСтатьиИАналитики = Новый Массив;
	
	ВыкупАрендованныхОСЛокализация.ДополнитьПараметрыВыбораСтатейИАналитик(ПараметрыВыбораСтатьиИАналитики);
	
	#Область Расходы
	ПараметрыВыбора = ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики();
	ПараметрыВыбора.ПутьКДанным = "Объект";
	ПараметрыВыбора.Статья = "СтатьяРасходовВыкуп";
	
	ПараметрыВыбора.ВыборСтатьиРасходов = Истина;
	ПараметрыВыбора.АналитикаРасходов = "АналитикаРасходовВыкуп";
	
	ПараметрыВыбора.ЭлементыФормы.Статья.Добавить("СтатьяРасходовВыкуп");
	ПараметрыВыбора.ЭлементыФормы.АналитикаРасходов.Добавить("АналитикаРасходовВыкуп");
	
	ПараметрыВыбораСтатьиИАналитики.Добавить(ПараметрыВыбора);
	#КонецОбласти
	
	#Область Доходы
	ПараметрыВыбора = ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики();
	ПараметрыВыбора.ПутьКДанным = "Объект";
	ПараметрыВыбора.Статья = "СтатьяДоходовВыкуп";
	
	ПараметрыВыбора.ВыборСтатьиДоходов = Истина;
	ПараметрыВыбора.АналитикаДоходов = "АналитикаДоходовВыкуп";

	ПараметрыВыбора.ЭлементыФормы.Статья.Добавить("СтатьяДоходовВыкуп");
	ПараметрыВыбора.ЭлементыФормы.АналитикаДоходов.Добавить("АналитикаДоходовВыкуп");
	
	ПараметрыВыбораСтатьиИАналитики.Добавить(ПараметрыВыбора);
	#КонецОбласти
	
	Возврат ПараметрыВыбораСтатьиИАналитики;
	
КонецФункции

// Возвращает параметры механизма взаиморасчетов.
//
// Параметры:
// 	ДанныеЗаполнения - ДокументОбъект, СправочникОбъект, ДокументСсылка, СправочникСсылка, Структура, ДанныеФормыСтруктура - Объект или коллекция для
//              расчета параметров взаиморасчетов.
//
// Возвращаемое значение:
// 	См. ВзаиморасчетыСервер.ПараметрыМеханизма
//
Функция ПараметрыВзаиморасчеты(ДанныеЗаполнения = Неопределено) Экспорт
	
	Если ОбщегоНазначения.ЗначениеСсылочногоТипа(ДанныеЗаполнения) Тогда
		СтруктураДанныеЗаполнения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(
			ДанныеЗаполнения, 
			"Договор");
		Договор = СтруктураДанныеЗаполнения.Договор;
	ИначеЕсли ДанныеЗаполнения = Неопределено Тогда
		Договор = Неопределено;
	Иначе
		Договор = ДанныеЗаполнения.Договор;
	КонецЕсли;
	
	СтруктураПараметров = ВзаиморасчетыСервер.ПараметрыМеханизма();
	
	СтруктураПараметров.ЭтоПродажаЗакупка                = Истина;
	СтруктураПараметров.ИзменяетПланОплаты               = Ложь;
	СтруктураПараметров.ИзменяетПланОтгрузкиПоставки     = Ложь;

	#Область НеобязательныеПараметры
	
	// Отличные от валюты и суммы документа реквизиты. Если не заполнен, то для чтения будет взята валюта документа.
	СтруктураПараметров.ВалютаВзаиморасчетов             = "Объект.ВалютаВзаиморасчетов";
	СтруктураПараметров.СуммаВзаиморасчетов              = "Объект.СуммаВзаиморасчетов";
	СтруктураПараметров.НаправлениеДеятельности          = "";
	СтруктураПараметров.ПорядокРасчетов                  = "";
	СтруктураПараметров.ПутьКДаннымТЧ                    = "Объект.ОС";
	СтруктураПараметров.Соглашение                       = "";
	СтруктураПараметров.БанковскийСчетОрганизации        = "";
	СтруктураПараметров.БанковскийСчетКонтрагента        = "";
	СтруктураПараметров.Касса                            = "";
	СтруктураПараметров.ФормаОплаты                      = "";
	СтруктураПараметров.ОплатаВВалюте                    = "";
	СтруктураПараметров.ИдентификаторПлатежа             = "";
	СтруктураПараметров.Договор                          = "";
	
	// Реквизиты для объекта расчетов, используются в проведении.
	СтруктураПараметров.ГруппаФинансовогоУчета           = "";
	СтруктураПараметров.Подразделение                    = "";
	СтруктураПараметров.КурсЧислитель                    = "Объект.КурсЧислитель";
	СтруктураПараметров.КурсЗнаменатель                  = "Объект.КурсЗнаменатель";
	
	СтруктураПараметров.ЭлементыФормы.НадписьВалюты = "ДекорацияВалюты";
	СтруктураПараметров.ВалютыИКурсДокументаТолькоПросмотр = Ложь;
	
	СтруктураПараметров.ВалютаДокументаТолькоПросмотр = Ложь;
	СтруктураПараметров.ВалютаВзаиморасчетовТолькоПросмотр = Истина;
	
	#КонецОбласти
	
	Возврат СтруктураПараметров;

КонецФункции

#Область УчетНДС

// Инициализирует параметры заполнения вида деятельности НДС
//
// Параметры:
//  Объект		- ДокументОбъект.ВыкупАрендованныхОС, ДанныеФормыСтруктура	- документ, для которого необходимо получить параметры.
//
// Возвращаемое значение:
//  См. УчетНДСУПКлиентСервер.ПараметрыЗаполненияВидаДеятельностиНДС
//
Функция ПараметрыЗаполненияВидаДеятельностиНДС(Объект) Экспорт
	
	РеквизитыДоговора = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект.Договор, "НаправлениеДеятельности,Балансодержатель");
	
	ПараметрыЗаполнения = УчетНДСУПКлиентСервер.ПараметрыЗаполненияВидаДеятельностиНДС();
	ПараметрыЗаполнения.Организация = Объект.Организация;
	ПараметрыЗаполнения.Дата = Объект.Дата;
	ПараметрыЗаполнения.Договор = Объект.Договор;
	ПараметрыЗаполнения.НаправлениеДеятельности = РеквизитыДоговора.НаправлениеДеятельности;
	ПараметрыЗаполнения.ПриобретениеНаСтатьи = Истина;
	ПараметрыЗаполнения.ЛизинговоеИмуществоНаБалансе =
		(РеквизитыДоговора.Балансодержатель = Перечисления.БалансодержательПредметовАренды.Арендатор);
	
	Возврат ПараметрыЗаполнения;
	
КонецФункции

// Инициализирует параметры заполнения налогообложения НДС закупки
//
// Параметры:
//  Объект		- ДокументОбъект.ВыкупАрендованныхОС, ДанныеФормыСтруктура	- документ, для которого необходимо получить параметры.
//
// Возвращаемое значение:
//  См. УчетНДСУПКлиентСервер.ПараметрыЗаполненияНалогообложенияНДСЗакупки
//
Функция ПараметрыЗаполненияНалогообложенияНДСЗакупки(Объект) Экспорт
	
	ПараметрыЗаполнения = УчетНДСУПКлиентСервер.ПараметрыЗаполненияНалогообложенияНДСЗакупки();
	ПараметрыЗаполнения.Контрагент = Объект.Контрагент;
	ПараметрыЗаполнения.Договор = Объект.Договор;
	ПараметрыЗаполнения.Период  = Объект.Дата;
	
	ПараметрыЗаполнения.УслугаПоАренде = Истина;
	
	Возврат ПараметрыЗаполнения;
	
КонецФункции

// Инициализирует параметры проверки заполнения налогообложения НДС закупки
//
// Параметры:
//  Объект		- ДокументОбъект.ВыкупАрендованныхОС, ДанныеФормыСтруктура	- документ, для которого необходимо получить параметры.
//
// Возвращаемое значение:
//  Структура - см. УчетНДСУП.ПараметрыПроверкиЗаполнениеДокументаПоНалогообложениюНДСЗакупки
//
Функция ПараметрыПроверкиЗаполнениеДокументаПоНалогообложениюНДСЗакупки(Объект) Экспорт
	
	ПараметрыЗаполнения = УчетНДСУП.ПараметрыПроверкиЗаполнениеДокументаПоНалогообложениюНДСЗакупки();
	ПараметрыЗаполнения.ИмяТабличнойЧасти = "ОС";
	
	Возврат ПараметрыЗаполнения;
	
КонецФункции

// Инициализирует параметры проверки заполнения документа по виду деятельности НДС
//
// Параметры:
//  Объект		- ДокументОбъект.ВыкупАрендованныхОС, ДанныеФормыСтруктура	- документ, для которого необходимо получить параметры.
//
// Возвращаемое значение:
//  Структура - см. УчетНДСУП.ПараметрыПроверкиЗаполненияДокументаПоВидуДеятельностиНДС
//
Функция ПараметрыПроверкиЗаполненияДокументаПоВидуДеятельностиНДС(Объект) Экспорт
	
	ПараметрыЗаполнения = УчетНДСУП.ПараметрыПроверкиЗаполненияДокументаПоВидуДеятельностиНДС();
	ПараметрыЗаполнения.ИмяТабличнойЧасти = "ОС";
	
	Возврат ПараметрыЗаполнения;
	
КонецФункции

// Инициализирует параметры регистрации счетов-фактур (полученных)
//
// Параметры:
//  Объект		- ДокументОбъект.ВыкупАрендованныхОС, ДанныеФормыСтруктура	- документ, для которого необходимо получить параметры.
//
// Возвращаемое значение:
//  См. УчетНДСУПКлиентСервер.ПараметрыРегистрацииСчетовФактурПолученных
//
Функция ПараметрыРегистрацииСчетовФактурПолученных(Объект) Экспорт
	
	ПараметрыРегистрации = УчетНДСУПКлиентСервер.ПараметрыРегистрацииСчетовФактурПолученных();
	ПараметрыРегистрации.Ссылка = Объект.Ссылка;
	ПараметрыРегистрации.Дата = Объект.Дата;
	ПараметрыРегистрации.Организация = Объект.Организация;
	ПараметрыРегистрации.Контрагент = Объект.Контрагент;
	ПараметрыРегистрации.НалогообложениеНДС = Объект.НалогообложениеНДС;
	ПараметрыРегистрации.ПриобретениеТоваровРаботУслуг = Истина;
	
	Возврат ПараметрыРегистрации;
	
КонецФункции

#КонецОбласти

#КонецОбласти

#Область Заполнение

// Заполняет документ на основании договора аренды.
// 
// Параметры:
// 	Объект - ДокументОбъект.ВыкупАрендованныхОС, ДанныеФормыСтруктура -
//  ВыводитьСообщения - Булево -
Процедура ЗаполнитьНаОснованииДоговораАренды(Объект, ВыводитьСообщения = Ложь) Экспорт
	
	Если НЕ ЗначениеЗаполнено(Объект.Договор) Тогда
		Возврат;
	КонецЕсли;

	Объект.ОС.Очистить();

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

// Заполняет документ на основании документа Изменения условий договора аренды.
// 
// Параметры:
// 	Объект - ДокументОбъект.ВыкупАрендованныхОС, ДанныеФормыСтруктура -
//  Основание - ДокументСсылка.ИзменениеУсловийДоговораАренды -
// Возвращаемое значение:
//  Строка, Неопределено - текст сообщения об ошибке.
Функция ЗаполнитьНаОснованииИзмененияУсловийДоговораАренды(Объект, Основание) Экспорт
	
	Если НЕ ЗначениеЗаполнено(Основание) Тогда
		Объект.ДокументОснование = Неопределено;
		Объект.ДокументНаОсновании = Ложь;
		Возврат Неопределено;
	КонецЕсли;
	
	Объект.ДокументОснование = Основание;
	Объект.ДокументНаОсновании = Истина;

	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	ИзменениеУсловийДоговораАренды.Организация КАК Организация,
	|	ИзменениеУсловийДоговораАренды.Партнер КАК Партнер,
	|	ИзменениеУсловийДоговораАренды.Контрагент КАК Контрагент,
	|	ИзменениеУсловийДоговораАренды.Договор КАК Договор,
	|	ИзменениеУсловийДоговораАренды.ВалютаВзаиморасчетов КАК Валюта,
	|	ИзменениеУсловийДоговораАренды.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
	|	ИзменениеУсловийДоговораАренды.СтавкаНДС КАК СтавкаНДС,
	|	ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ДосрочныйВыкупАрендованныхОС) КАК ХозяйственнаяОперация,
	|	ИСТИНА КАК ЦенаВключаетНДС
	|ИЗ
	|	Документ.ИзменениеУсловийДоговораАренды КАК ИзменениеУсловийДоговораАренды
	|ГДЕ
	|	ИзменениеУсловийДоговораАренды.Ссылка = &Основание
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ИзменениеУсловийДоговораАрендыОС.ОсновноеСредство КАК ОсновноеСредство,
	|	ИзменениеУсловийДоговораАрендыОС.ВыкупнаяСтоимость КАК Сумма,
	|	ИзменениеУсловийДоговораАрендыОС.ВыкупнаяСтоимость КАК СуммаСНДС,
	|	ИзменениеУсловийДоговораАрендыОС.Ссылка.СтавкаНДС КАК СтавкаНДС
	|ИЗ
	|	Документ.ИзменениеУсловийДоговораАренды.ОС КАК ИзменениеУсловийДоговораАрендыОС
	|ГДЕ
	|	ИзменениеУсловийДоговораАрендыОС.Ссылка = &Основание
	|	И ИзменениеУсловийДоговораАрендыОС.ДействиеСПредметомАренды 
	|		= ЗНАЧЕНИЕ(Перечисление.ДействияСПредметамиАренды.ДосрочныйВыкуп)";
	
	Запрос = Новый Запрос(ТекстЗапроса);
	Запрос.УстановитьПараметр("Основание", Объект.ДокументОснование);
	Результат = Запрос.ВыполнитьПакет();
	
	Если Результат[0].Пустой() Тогда
		Возврат Неопределено;
	КонецЕсли;
	
	Если Результат[1].Пустой() Тогда
		ТекстОшибки = НСтр("ru = 'В документе нет основных средств, выкупаемых досрочно'");
		Возврат ТекстОшибки;
	КонецЕсли;
	
	Выборка = Результат[0].Выбрать();
	Выборка.Следующий();
	
	ЗаполнитьЗначенияСвойств(Объект, Выборка);
	
	Объект.ОС.Очистить();
	
	Выборка = Результат[1].Выбрать();

	Пока Выборка.Следующий() Цикл
		
		ДанныеСтроки = Объект.ОС.Добавить();
		ЗаполнитьЗначенияСвойств(ДанныеСтроки, Выборка);
		ДанныеСтроки.СуммаНДС = УчетНДСУПКлиентСервер.РассчитатьСуммуНДС(
			ДанныеСтроки.Сумма,
			УчетНДСУПКлиентСервер.ЗначениеСтавкиНДС(ДанныеСтроки.СтавкаНДС),
			Объект.ЦенаВключаетНДС,
			Объект.НалогообложениеНДС);
		ДанныеСтроки.СуммаНДСВзаиморасчетов = ДанныеСтроки.СуммаНДС;
		
	КонецЦикла;
	
КонецФункции

#КонецОбласти

#КонецОбласти

#КонецЕсли

Связанные материалы