Счет-фактура налогового агента / Модуль менеджера

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

#Область ПрограммныйИнтерфейс

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

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

	//++ НЕ УТ
	МеханизмыДокумента.Добавить("РегламентированныйУчет");
	//-- НЕ УТ
	МеханизмыДокумента.Добавить("РеестрДокументов");
	МеханизмыДокумента.Добавить("СебестоимостьИПартионныйУчет");
	МеханизмыДокумента.Добавить("УчетДоходовРасходов");
	МеханизмыДокумента.Добавить("УчетНДС");
	МеханизмыДокумента.Добавить("УчетПрочихАктивовПассивов");
	
КонецПроцедуры

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

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

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

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

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

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

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

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

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

//++ НЕ УТ

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

// Функция возвращает текст запроса для отражения документа в регламентированном учете.
//
// Возвращаемое значение:
//	ТекстЗапроса - Строка - Текст запроса отражения в регл. учете.
//
Функция ТекстОтраженияВРеглУчете() Экспорт
	
	ТекстНачислениеНДС = 
	"ВЫБРАТЬ // Начисление НДС налогового агента <Дт 76.НА :: Кт 68.32>
	|	Операция.Ссылка КАК Ссылка,
	|	Операция.Дата КАК Период,
	|	Операция.Организация КАК Организация,
	|	НЕОПРЕДЕЛЕНО КАК ИдентификаторСтроки,
	|
	|	ЕСТЬNULL(Строки.СуммаНДС,0) КАК Сумма,
	|	ЕСТЬNULL(Строки.СуммаНДС,0) / КурсВалютыУпрУчета.Курс КАК СуммаУУ,
	|
	|	НЕОПРЕДЕЛЕНО КАК ВидСчетаДт,
	|	НЕОПРЕДЕЛЕНО КАК ГруппаФинансовогоУчетаДт,
	|	НЕОПРЕДЕЛЕНО КАК МестоУчетаДт,
	|
	|	ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) КАК ВалютаДт,
	|	ЗНАЧЕНИЕ(Справочник.СтруктураПредприятия.ПустаяСсылка) КАК ПодразделениеДт,
	|	ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельностиДт,
	|
	|	ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыНДСНалоговогоАгента) КАК СчетДт,
	|
	|	Операция.Поставщик КАК СубконтоДт1,
	|	Операция.Договор КАК СубконтоДт2,
	|	НЕОПРЕДЕЛЕНО КАК СубконтоДт3,
	|
	|	0 КАК ВалютнаяСуммаДт,
	|	0 КАК КоличествоДт,
	|	0 КАК СуммаНУДт,
	|	0 КАК СуммаПРДт,
	|	0 КАК СуммаВРДт,
	|
	|	НЕОПРЕДЕЛЕНО КАК ВидСчетаКт,
	|	НЕОПРЕДЕЛЕНО КАК ГруппаФинансовогоУчетаКт,
	|	НЕОПРЕДЕЛЕНО КАК МестоУчетаКт,
	|
	|	&ВалютаРеглУчета КАК ВалютаКт,
	|	ЗНАЧЕНИЕ(Справочник.СтруктураПредприятия.ПустаяСсылка) КАК ПодразделениеКт,
	|	ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельностиКт,
	|
	|	ВЫБОР КОГДА Операция.ДокументОснование ССЫЛКА Документ.ПервичныйДокумент ТОГДА
	|		ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Вспомогательный)
	|	ИНАЧЕ
	|		ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.НДСНалоговогоАгента)
	|	КОНЕЦ КАК СчетКт,
	|
	|	Операция.Поставщик КАК СубконтоКт1,
	|	Операция.Договор КАК СубконтоКт2,
	|	Операция.ДокументОснование КАК СубконтоКт3,
	|	
	|	ЕСТЬNULL(Строки.СуммаНДС,0) КАК ВалютнаяСуммаКт,
	|	0 КАК КоличествоКт,
	|	0 КАК СуммаНУКт,
	|	0 КАК СуммаПРКт,
	|	0 КАК СуммаВРКт,
	|	""Начисление НДС налогового агента"" КАК Содержание
	|ИЗ
	|	ДокументыКОтражению КАК ДокументыКОтражению
	|	
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ
	|		Документ.СчетФактураНалоговыйАгент КАК Операция
	|	ПО
	|		ДокументыКОтражению.Ссылка = Операция.Ссылка
	|	
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ
	|		Документ.СчетФактураНалоговыйАгент.РасшифровкаСуммы КАК Строки
	|	ПО
	|		Строки.Ссылка = Операция.Ссылка
	|
	|	ЛЕВОЕ СОЕДИНЕНИЕ
	|		КурсыВалют КАК КурсВалютыУпрУчета
	|	ПО
	|		КурсВалютыУпрУчета.Валюта = &ВалютаУпрУчета
	|		И КурсВалютыУпрУчета.Дата = НАЧАЛОПЕРИОДА(Операция.Дата, День)
	|
	|";
	
	ТекстВходящийНДС = "
	|ВЫБРАТЬ // НДС, уплачиваемый налоговым агентом <Дт 19.11 :: Кт 76.НА>
	|	Операция.Ссылка КАК Ссылка,
	|	Операция.Дата КАК Период,
	|	Операция.Организация КАК Организация,
	|	НЕОПРЕДЕЛЕНО КАК ИдентификаторСтроки,
	|
	|	Строки.СуммаНДС КАК Сумма,
	|	Строки.СуммаНДС / КурсВалютыУпрУчета.Курс КАК СуммаУУ,
	|
	|	НЕОПРЕДЕЛЕНО КАК ВидСчетаДт,
	|	НЕОПРЕДЕЛЕНО КАК ГруппаФинансовогоУчетаДт,
	|	НЕОПРЕДЕЛЕНО КАК МестоУчетаДт,
	|
	|	ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) КАК ВалютаДт,
	|	ЗНАЧЕНИЕ(Справочник.СтруктураПредприятия.ПустаяСсылка) КАК ПодразделениеДт,
	|	ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельностиДт,
	|
	|	ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.НДСУплачиваемыйНалоговымАгентом) КАК СчетДт,
	|
	|	Операция.Поставщик КАК СубконтоДт1,
	|	Операция.Ссылка КАК СубконтоДт2,
	|	НЕОПРЕДЕЛЕНО КАК СубконтоДт3,
	|
	|	0 КАК ВалютнаяСуммаДт,
	|	0 КАК КоличествоДт,
	|	0 КАК СуммаНУДт,
	|	0 КАК СуммаПРДт,
	|	0 КАК СуммаВРДт,
	|
	|	НЕОПРЕДЕЛЕНО КАК ВидСчетаКт,
	|	НЕОПРЕДЕЛЕНО КАК ГруппаФинансовогоУчетаКт,
	|	НЕОПРЕДЕЛЕНО КАК МестоУчетаКт,
	|
	|	ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) КАК ВалютаКт,
	|	ЗНАЧЕНИЕ(Справочник.СтруктураПредприятия.ПустаяСсылка) КАК ПодразделениеКт,
	|	ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельностиКт,
	|
	|	ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыНДСНалоговогоАгента) КАК СчетКт,
	|
	|	Операция.Поставщик КАК СубконтоКт1,
	|	Операция.Договор КАК СубконтоКт2,
	|	НЕОПРЕДЕЛЕНО КАК СубконтоКт3,
	|
	|	0 КАК ВалютнаяСуммаКт,
	|	0 КАК КоличествоКт,
	|	0 КАК СуммаНУКт,
	|	0 КАК СуммаПРКт,
	|	0 КАК СуммаВРКт,
	|	""НДС, уплачиваемый налоговым агентом"" КАК Содержание
	|ИЗ
	|	ДокументыКОтражению КАК ДокументыКОтражению
	|	
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ
	|		Документ.СчетФактураНалоговыйАгент КАК Операция
	|	ПО
	|		ДокументыКОтражению.Ссылка = Операция.Ссылка
	|	
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ
	|		Документ.СчетФактураНалоговыйАгент.РасшифровкаСуммы КАК Строки
	|	ПО
	|		Строки.Ссылка = Операция.Ссылка
	|
	|	ЛЕВОЕ СОЕДИНЕНИЕ
	|		КурсыВалют КАК КурсВалютыУпрУчета
	|	ПО
	|		КурсВалютыУпрУчета.Валюта = &ВалютаУпрУчета
	|		И КурсВалютыУпрУчета.Дата = НАЧАЛОПЕРИОДА(Операция.Дата, День)
	|";
	
	ТекстВключениеНДСВРасходы = "
	|ВЫБРАТЬ // Включение НДС в расходы <Дт 26,44,91 :: Кт 19.11>
	|	Операция.Ссылка КАК Ссылка,
	|	Строки.Период КАК Период,
	|	Операция.Организация КАК Организация,
	|	НЕОПРЕДЕЛЕНО КАК ИдентификаторСтроки,
	|
	|	Строки.СуммаРегл КАК Сумма,
	|	Строки.СуммаУпр КАК СуммаУУ,
	|
	|	ЗНАЧЕНИЕ(Перечисление.ВидыСчетовРеглУчета.Расходы) КАК ВидСчетаДт,
	|	Строки.СтатьяРасходов КАК АналитикаУчетаДт,
	|	Строки.Подразделение КАК МестоУчетаДт,
	|
	|	ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) КАК ВалютаДт,
	|	Строки.Подразделение КАК ПодразделениеДт,
	|	Строки.НаправлениеДеятельности КАК НаправлениеДеятельностиДт,
	|
	|	ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ПустаяСсылка) КАК СчетДт,
	|
	|	Строки.АналитикаРасходов КАК СубконтоДт1,
	|	Строки.СтатьяРасходов КАК СубконтоДт2,
	|	НЕОПРЕДЕЛЕНО КАК СубконтоДт3,
	|
	|	0 КАК ВалютнаяСуммаДт,
	|	0 КАК КоличествоДт,
	|	0 КАК СуммаНУДт,
	|	0 КАК СуммаПРДт,
	|	0 КАК СуммаВРДт,
	|
	|	НЕОПРЕДЕЛЕНО КАК ВидСчетаКт,
	|	НЕОПРЕДЕЛЕНО КАК ГруппаФинансовогоУчетаКт,
	|	НЕОПРЕДЕЛЕНО КАК МестоУчетаКт,
	|
	|	ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) КАК ВалютаКт,
	|	ЗНАЧЕНИЕ(Справочник.СтруктураПредприятия.ПустаяСсылка) КАК ПодразделениеКт,
	|	ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельностиКт,
	|
	|	ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.НДСУплачиваемыйНалоговымАгентом) КАК СчетКт,
	|
	|	Операция.Поставщик КАК СубконтоКт1,
	|	Операция.Ссылка КАК СубконтоКт2,
	|	НЕОПРЕДЕЛЕНО КАК СубконтоКт3,
	|	
	|	0 КАК ВалютнаяСуммаКт,
	|	0 КАК КоличествоКт,
	|	0 КАК СуммаНУКт,
	|	0 КАК СуммаПРКт,
	|	0 КАК СуммаВРКт,
	|	""Включение НДС в расходы"" КАК Содержание
	|ИЗ
	|	ДокументыКОтражению КАК ДокументыКОтражению
	|	
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ
	|		Документ.СчетФактураНалоговыйАгент КАК Операция
	|	ПО
	|		ДокументыКОтражению.Ссылка = Операция.Ссылка
	|
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ
	|		РегистрНакопления.ПрочиеРасходы КАК Строки
	|
	|	ПО
	|		Операция.Ссылка = Строки.Регистратор
	|		И (Строки.СуммаРегл <> 0 ИЛИ Строки.СуммаУпр <> 0)
	|		И НЕ Строки.РасчетСебестоимости
	|		И Строки.РасчетПартий
	|	
	|";

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

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

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

//-- НЕ УТ

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

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

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

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

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

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

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

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

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

#Область СлужебныеПроцедурыИФункции

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

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

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

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

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

Процедура ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка)

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

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

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

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

	Возврат ЗначенияПараметровПроведения;
	
КонецФункции

//++ НЕ УТ

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

//-- НЕ УТ

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

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

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

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

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

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

//++ НЕ УТ

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

//-- НЕ УТ

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

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

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

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

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

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

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

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

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

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

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

//++ НЕ УТ

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

//-- НЕ УТ

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

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

//++ НЕ УТ

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

//-- НЕ УТ

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

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

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

#Область Печать

Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт

	// Счет-фактура
	КомандаПечати = КомандыПечати.Добавить();
	КомандаПечати.МенеджерПечати = "Обработка.ПечатьОбщихФорм";
	КомандаПечати.Идентификатор = "СчетФактура";
	КомандаПечати.Представление = НСтр("ru = 'Счет-фактура'");
	КомандаПечати.ПроверкаПроведенияПередПечатью = Истина;
	КомандаПечати.ДополнительныеПараметры.Вставить("ПечатьВВалюте", Ложь);
	
КонецПроцедуры

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

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

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

#Область Прочее

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

Функция РаспределитьПропорционально(Знач ИсхСумма, МассивКоэф, Знач Точность = 2)

	Если МассивКоэф.Количество() = 0 Или ИсхСумма = 0 Или ИсхСумма = Null Тогда
		Возврат Неопределено;
	КонецЕсли;

	ИндексМакс = МассивКоэф.Количество() - 1;
	РаспрСумма = 0;
	СуммаКоэф  = 0;

	Для Счетчик = 0 По МассивКоэф.Количество() - 1 Цикл

		СуммаКоэф = СуммаКоэф + МассивКоэф[Счетчик];

	КонецЦикла;

	Если СуммаКоэф = 0 Тогда
		Возврат Неопределено;
	КонецЕсли;

	МассивСумм = Новый Массив(МассивКоэф.Количество());

	Для Счетчик = 0 По МассивКоэф.Количество() - 1 Цикл
		МассивСумм[Счетчик] = Окр(ИсхСумма * МассивКоэф[Счетчик] / СуммаКоэф, Точность, 1);
		РаспрСумма = РаспрСумма + МассивСумм[Счетчик];
	КонецЦикла;

	// Погрешности округления отнесем на последний коэффициент
	Если Не РаспрСумма = ИсхСумма Тогда
		МассивСумм[ИндексМакс] = МассивСумм[ИндексМакс] + ИсхСумма - РаспрСумма;
	КонецЕсли;

	Возврат МассивСумм;

КонецФункции // РаспределитьПропорционально()

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

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

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

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

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

#Область ФормированиеГиперссылкиВЖурналеДокументовНДС

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

Функция ИмяФормыСчетФактураНалоговыйАгент() Экспорт
	
	Возврат "Документ.СчетФактураНалоговыйАгент.Форма.ФормаРабочееМесто";
	
КонецФункции

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

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

#КонецЕсли

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