Рассылка актов сверки

Публикация № 1071122 03.06.19

Учет и отчетность - Дебиторская и кредиторская задолженность

Пакетная отправка актов сверки взаиморасчетов на электронную почту партнеров.

Разработка пригодится для компаний с достаточно большим количеством партнеров, осуществляющим регламентную сверку с партнерами с некоторой периодичностью. Принцип работы: в журнале документов актов сверок помечается произвольное количество документов и по кнопке "Отправить" производится отправка на адреса электронной почты партнеров, указанных в карточке, файлов сверки расчетов в формате PDF. Возможен предварительный просмотр печатной формы, которая будет отправлена. В настройках возможно указать учетную запись, от которой будет производиться отправка, тему и текст письма. Возможна отправка печатной формы актов с прикреплением факсимиле. Разработка тестировалась на релизах Управление торговлей 11.3 (11.3.4.124), Управление торговлей 11.4 (11.4.6.166). Отличия печатной форма, по сравнению с штатной - выведена секция "Обороты за период". Для получения факсимиле необходимо для организации добавить присоединенный файл с наименованием "ФаксимилеСверкаВзаиморасчетов":

Вид форма списка (возможно дополнительно вывести колонки Организация, Контрагент, Менеджер (из документа), Основной менеджер (из карточки партнера)):

Описание принципа работы

Выполнено в форме внешней обработки. 

Функция СведенияОВнешнейОбработке() Экспорт

	ПараметрыРегистрации=дополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.3.2.56");	
    ПараметрыРегистрации.Вид=дополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиЗаполнениеОбъекта();
	ПараметрыРегистрации.Информация="Отправка актов сверки";
	ПараметрыРегистрации.Назначение.Добавить("Документ.СверкаВзаиморасчетов");
	ПараметрыРегистрации.Версия="19.04.19";
	ПараметрыРегистрации.БезопасныйРежим=ложь;
	Команда=ПараметрыРегистрации.Команды.Добавить();
	Команда.Представление="Отправка актов сверки";
	Команда.Идентификатор="ОтправкаАктовСверкиУТ11_4_is";
	Команда.Использование=дополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
	возврат ПараметрыРегистрации;
	
	
КонецФункции

 

 
 Запрос динамического списка

Свойство для хранения признака, что акт отправлен - создается один раз при первом открытии формы:

 
 При создании на сервере

 

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

 

 

Скрин формы обработки в конфигураторе

 

Процедуры и функции, используемые в форме обработки:

 
 Основные функции отправки
 
 Вспомогательные процедуры

Модуль обработки - здесь формируется сам Табличный документ, который будет впоследствии отправлен

 
 Модуль обработки

 

Перем ЭтоУТ11_4;

Функция СведенияОВнешнейОбработке() Экспорт

	ПараметрыРегистрации=дополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.3.2.56");	
    ПараметрыРегистрации.Вид=дополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиЗаполнениеОбъекта();
	ПараметрыРегистрации.Информация="Отправка актов сверки";
	ПараметрыРегистрации.Назначение.Добавить("Документ.СверкаВзаиморасчетов");
	ПараметрыРегистрации.Версия="19.04.19";
	ПараметрыРегистрации.БезопасныйРежим=ложь;
	Команда=ПараметрыРегистрации.Команды.Добавить();
	Команда.Представление="Отправка актов сверки";
	Команда.Идентификатор="ОтправкаАктовСверкиУТ11_4_is";
	Команда.Использование=дополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
	возврат ПараметрыРегистрации;
	
	// история
	// 01.06.19: создан 
	
	
КонецФункции

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

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


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

	Возврат ЗапросДанныеДокумента.Выполнить().Выбрать();
	
КонецФункции

Функция ДетальныеРасчеты_11_4(ДанныеДокумента)
	
	ЗапросНашихДанных = Новый Запрос;

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

	Возврат ВыборкаНашихДанных;
	
КонецФункции

Функция ДетальныеРасчеты(ДанныеДокумента)
	
	если ЭтоУТ11_4 тогда 
		попытка
			// если слишком ранний релиз 11.4 - может не сработать
			возврат ДетальныеРасчеты_11_4(ДанныеДокумента);
		исключение
		КонецПопытки;
	КонецЕсли;	
	
	ЗапросНашихДанных = Новый Запрос;

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

	Возврат ВыборкаНашихДанных;
	
КонецФункции

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

Функция ТекстЗапросаОтборПоАналитике()

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

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

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

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

Функция УбратьЛидирующиеНули(Строка)
	
	Рез = СокрЛП(Строка);
	Пока Лев(Рез, 1) = "0" Цикл 
		Рез = Сред(Рез, 2);
	КонецЦикла;
	Возврат Рез;
	
КонецФункции

Функция ПредставленияВладельцевДокументов()
	
	ВидыДокументовКонтрагента = Новый Структура;

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

Функция ОстаткиРасчетов(ДанныеДокумента) Экспорт

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

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

	// { ol     адаптация под УТ 11.4
	если не Метаданные.Документы.Найти("ПриобретениеТоваровУслуг")=неопределено тогда
		ЗапросНашихДанных.Текст=стрзаменить(врег(ЗапросНашихДанных.Текст),врег("Документ.ПоступлениеТоваровУслуг"),"Документ.ПриобретениеТоваровУслуг");	
	КонецЕсли;
	если не Метаданные.Документы.Найти("ПриобретениеУслугПрочихАктивов")=неопределено тогда
		ЗапросНашихДанных.Текст=стрзаменить(врег(ЗапросНашихДанных.Текст),врег("Документ.ПоступлениеУслугПрочихАктивов"),"Документ.ПриобретениеУслугПрочихАктивов");	
	КонецЕсли;
	если не Метаданные.Документы.Найти("КорректировкаПриобретения")=неопределено тогда
		ЗапросНашихДанных.Текст=стрзаменить(врег(ЗапросНашихДанных.Текст),врег("Документ.КорректировкаПоступления"),"Документ.КорректировкаПриобретения");	
	КонецЕсли;
	// ol }
	
	
	РезультатЗапросаНашихДанных = ЗапросНашихДанных.Выполнить();
	
	Если НЕ РезультатЗапросаНашихДанных.Пустой() Тогда
		ТаблицаНашихДанных = РезультатЗапросаНашихДанных.Выгрузить();
		
		СписокПолейГруппировки = "ВалютаВзаиморасчетов,ЭтоВходящийНомер";
		Если ДанныеДокумента.РасшифровкаПоЗаказам Тогда
			СписокПолейГруппировки = СписокПолейГруппировки + ", РасчетныйДокумент, НомерРасчетногоДокумента, ДатаРасчетногоДокумента";
		КонецЕсли; 
		Если ДанныеДокумента.РасшифровкаПоПартнерам Тогда
			СписокПолейГруппировки = СписокПолейГруппировки + ", Партнер";
		КонецЕсли;
		Если ДанныеДокумента.РасшифровкаПоДоговорам Тогда
			СписокПолейГруппировки = СписокПолейГруппировки + ", Договор";
		КонецЕсли;
		ТаблицаНашихДанных.Свернуть(СписокПолейГруппировки, "СуммаДолгПартнера, СуммаНашДолг");
	Иначе
		ТаблицаНашихДанных = Неопределено;
	КонецЕсли;

	Возврат ТаблицаНашихДанных;
	
КонецФункции

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

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

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

		ПредставленияДокументов.Свойство(ДокументСсылка.Метаданные().Имя, ПредставлениеДокумента);
		
		ОписаниеДокумента = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
			НСтр("ru='%1 №%2 от %3'"),
			?(ПредставлениеДокумента <> Неопределено, ПредставлениеДокумента, ""),
			?(ЗначениеЗаполнено(Номер), ?(ЭтоВходящийНомер, 
				УбратьЛидирующиеНули(Номер),
				ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(Номер)), "_______"),
			?(ЗначениеЗаполнено(Дата), Формат(Дата, "ДЛФ=D") + " " + НСтр("ru='г.'"), "'  .  .    '"));
			
		ПредставленияВладельцевДокументов.Свойство(ДокументСсылка.Метаданные().Имя, ПредставлениеВладельцаДокумента);
		
		Если ЗначениеЗаполнено(ПредставлениеВладельцаДокумента) Тогда
			
			Если МассивДокументовКонтрагента.Найти(ДокументСсылка.Метаданные().Имя) <> Неопределено Тогда
				ВладелецДокумента = СтруктураПредставленийУчастников.КонтрагентНаименование;
			Иначе
				ВладелецДокумента = СтруктураПредставленийУчастников.ПредставлениеОрганизации;
			КонецЕсли;
			
			ОписаниеДокумента = ОписаниеДокумента + " (" + ПредставлениеВладельцаДокумента + " " + ВладелецДокумента + ")";
		КонецЕсли;
		
	Иначе
		
		ПредставлениеДебитора = "";
		Если ЭтоДолгПартнера <> Неопределено Тогда
			ПредставлениеДебитора = ?(ЭтоДолгПартнера,
				СтруктураПредставленийУчастников.ПредставлениеОрганизации,
				СтруктураПредставленийУчастников.КонтрагентНаименование);
		КонецЕсли;
		
		ОписаниеДокумента = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
			НСтр("ru='Предоплата от %1'"), ПредставлениеДебитора);
		
	КонецЕсли;

	Возврат ОписаниеДокумента;

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

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

Функция СформироватьПечатнуюФормуАктСверкиВзаимныхРасчетов(МассивОбъектов, ОбъектыПечати,ВыводитьФаксимиле=ложь)

	УстановитьПривилегированныйРежим(Истина);
	
	ДанныеДокумента = ВыборкаДанныхДокумента(МассивОбъектов);
	
	ТабличныйДокумент = Новый ТабличныйДокумент;

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

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

			ПервыйСимволПредставлениеПериода = Лев(ПредставлениеПериода, 1);
			Если  КодСимвола(ПервыйСимволПредставлениеПериода) >= 48
				И КодСимвола(ПервыйСимволПредставлениеПериода) <= 57 Тогда
				
				ПредставлениеПериода = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
					НСтр("ru='за период: %1'"), ПредставлениеПериода);
				
			Иначе
				
				ПредставлениеПериода = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
					НСтр("ru='за %1'"), ПредставлениеПериода);
				
			КонецЕсли;
			
			ПредставлениеПериодаРасчетов = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
				НСтр("ru = 'В период с %1 по %2'"),
				Формат(ДанныеДокумента.НачалоПериода, "ДЛФ=ДД"),
				Формат(ДанныеДокумента.КонецПериода, "ДЛФ=ДД"),);
			
		КонецЕсли;

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

	ТабличныйДокумент.АвтоМасштаб = Истина;
	
	Если ПривилегированныйРежим() Тогда
		УстановитьПривилегированныйРежим(Ложь);
	КонецЕсли;

	Возврат ТабличныйДокумент;
	
КонецФункции
#КонецОбласти


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

ЭтоУТ11_4=лев(Метаданные.Версия,4)="11.4";

 

 

Скачать файлы

Наименование Файл Версия Размер
Рассылка актов сверки

.epf 38,44Kb
20
.epf 26.12.19 38,44Kb 20 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. user604957_bap-omsk 30.11.19 12:36 Сейчас в теме
Интересно, НО - а нельзя ли ГРУППОВОЕ получение АКТОВ сверки по АРЕНДЕ недвижимости получить (1С БУХ +модуль Аренда), а потом по полученному списку эти акты и отправить... У нас проблема по получению ГРУППОВЫМ методом актов сверок
3. waol 280 30.11.19 17:53 Сейчас в теме
2. waol 280 30.11.19 17:51 Сейчас в теме
(1) Это вам нужно писать четкое ТЗ и нанять специалиста. Или просто нанять специалиста, все ему пояснив
4. user604957_bap-omsk 01.12.19 05:32 Сейчас в теме
(2) Спасибо! Я как раз пишу четкое ТЗ с образцами, просто - хотелось бы, чтобы откликнулся кто то, кто работал с модулем "АРЕНДА", ибо разработчик сказал, что задача не актуальна, но - если 1000 договоров у кого то, то неужели в каждый договор заходят и выпускают регулярно (например, раз в квартал) Акт сверки? Тем более - у них 5 групповых обработок начиная со счетов и счет фактур
5. yavezde 16.12.19 15:59 Сейчас в теме
Здравствуйте, Управление торговлей, редакция 11 (11.4.6.230).
Пишет вот такую ошибку.
Прикрепленные файлы:
6. waol 280 26.12.19 20:32 Сейчас в теме
(5) поправил ошибку - версия 26.12.19
7. yavezde 31.01.20 13:27 Сейчас в теме
(6) могли бы на почту прислать пожалуйста, а то не дает скачать обновленную версию. Спасибо
olesushka2005@mail.ru
8. waol 280 01.02.20 13:58 Сейчас в теме
(7) отправил. Пишите адреса, кому нужно
9. yavezde 02.02.20 13:07 Сейчас в теме
10. PortalC 20.02.20 08:27 Сейчас в теме
Почему печатная форма отличается от типовой? Такое чувство что она сделана из устаревшего макета "ПФ_MXL_УстаревшийАктСверкиВзаиморасчетов"
Прикрепленные файлы:
12. waol 280 20.02.20 11:42 Сейчас в теме
(10) макет брался из УТ 11.3.4.124.
13. PortalC 20.02.20 12:54 Сейчас в теме
(12) Планируете обновить публикацию под свежий релиз УТ?
14. waol 280 21.02.20 00:14 Сейчас в теме
(13) да нет, если честно - не планировал.
11. PortalC 20.02.20 08:28 Сейчас в теме
Акт сверки в актуальной УТ 11.4.11.67 выглядит так
Прикрепленные файлы:
Оставьте свое сообщение

См. также

Автоматическая рассылка прайс-листов Промо

Ценообразование, прайсы Email Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля v8 УТ10 Абонемент ($m)

Устали от утомительной рассылки прайс-листов своим клиентам? Тогда эта обработка как раз для вас, она сделает полностью все сама! Сформирует прайс с нужными настройками и отправит его по электронной почте, как, куда и когда надо.

1 стартмани

24.03.2014    45684    22    skyadmin    20    

УТ 11.4: Новая архитектура взаиморасчетов - отчеты и обработки

Дебиторская и кредиторская задолженность v8 v8::ОУ УТ11 УУ Абонемент ($m)

Краткое описание сути новой архитектуры, описание некоторых приемов работы с ней, вспомогательные утилиты для работы.

1 стартмани

19.04.2021    2443    18    waol    5    

Отправка писем на электронную почту типовой функцией 1С

Email v8 1cv8.cf Россия Абонемент ($m)

Если вам необходимо отправить письмо на почту из внешней обработки, вам поможет эта статья.

1 стартмани

04.07.2020    13697    11    Andrei_Ivanov    2    

Автоматическая загрузка накладных от поставщиков из электронной почты (Розница 2.2)

Обработка документов Розничная торговля Учет ТМЦ Интеграция Email v8 Розница Россия УУ Абонемент ($m)

Данная обработка предназначена для получения файлов (*.xls;*.xlsx;*.ods;*.dbf) с почтового сервера вашей электронной почты и загрузки прочитанных данных в документы «Поступление товаров». Так же присутствует возможность распаковки архивов, если поставщик шлет вам в письме архивированные файлы (RAR; ZIP; 7Z). Наличие установленного MS Office и Open Office не требуется.

5 стартмани

18.05.2020    5060    8    StiVitS    4    

Списание (корректировка) задолженности контрагентов УНФ 1.6 Промо

Дебиторская и кредиторская задолженность Обработка документов Дебиторская и кредиторская задолженность Закрытие периода v8 УНФ Украина БУ Абонемент ($m)

Обнуление задолженности контрагентов в конфигурации "Управление небольшой (нашей) фирмой" версии 1.6 с помощью документа "Корректировка регистров".

1 стартмани

24.07.2019    29817    20    DMon    1    

Обработка для группового взаимозачета. УТ 11.4, ERP

Дебиторская и кредиторская задолженность Обработка документов v8 ERP2 УТ11 Россия БУ Абонемент ($m)

Обработка для группового создания документов взаимозачета.

1 стартмани

11.12.2019    3611    54    eeeio    10    

Автоматическая рассылка произвольных отчетов по электронной почте (обычные формы)

Email v8 1cv8.cf Абонемент ($m)

Очень часто возникает необходимость на регулярной основе получать отчеты из 1С, но не всегда есть возможность зайти в программу. Например, директору удобно каждое утро анализировать состояние основных показателей организации за чашечкой кофе, у себя дома, открывая отчеты в почте со смартфона или планшета. В типовых конфигурациях на управляемых формах этот механизм достаточно хорошо реализован и имеет очень гибкую настройку. К сожалению, в конфигурациях на обычных формах приходится довольствоваться лишь рапортом руководителю, который предоставляет достаточно скудные возможности. Поэтому был реализован ниже следующий функционал.

3 стартмани

06.08.2019    11076    52    Nicholas    40    

[Расширение] Доработка рассылки отчетов, отчет в теле письма

Email v8 Розница ERP2 Абонемент ($m)

Я очень люблю механизм рассылки отчетов из БСП - достаточно гибкий, универсальный. Активно пользуюсь им для того, чтобы получать оповещения из программы о том, что "что-то идёт не так"... Однако, и в нем есть что улучшить.

1 стартмани

05.07.2019    9650    25    ardn    3    

Список заказов поставщикам (новая форма) + два ноу-хау для разработчиков Промо

Рабочее место Дебиторская и кредиторская задолженность Оптовая торговля Дебиторская и кредиторская задолженность Оптовая торговля v8 v8::ОУ КА1 УТ10 УУ Абонемент ($m)

Представлена внешняя обработка - "Список заказов поставщикам (новая форма)". Удобство заключается в том, что в одном окне списка отображается структура всех связанных документов с указанием контрагента (заказ поставщику - поступление товаров - заказ покупателя - реализация товаров - оплата товара покупателем). В этом же окне отображается список товаров с заказанным количеством и ценами. Имеется возможность видеть статусы заказов по цветам (исполнен, выполняется, черновик). Форму легко встроить в типовую конфигурацию.

2 стартмани

31.08.2017    27029    17    Rustig    18    

Универсальные уведомления для БСП

Email SMS рассылки БСП (Библиотека стандартных подсистем) v8 1cv8.cf Россия Абонемент ($m)

Расширение, позволяющее создавать настраиваемые уведомления, с использованием стандартного функционала БСП "Шаблоны сообщений".

1 стартмани

10.06.2019    12077    33    wizard.ilmir02    11    

Автоматическое формирование актов сверки (Бухгалтерия предприятия 3.0)

Дебиторская и кредиторская задолженность Обработка документов Дебиторская и кредиторская задолженность v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Внешняя обработка для автоматического формирования актов сверки по контрагентам. Причиной создания стало не удовлетворительное качество имеющихся на инфостарте обработок и желание закрыть этот вопрос навсегда. Возможности: формирование по оборотам в периоде и по справочнику договоров; управление дополнительными настройками заполнения актов сверки; представителей организации и контрагента; формирование актов по договорам и сводно по контрагентам; возможность убрать не нужные договоры; перезаполнение существующих актов сверки.

3 стартмани

16.05.2019    9998    82    Black-fog    4    

Функции для работы с почтой

Универсальные обработки Email v8 1cv8.cf Абонемент ($m)

Эта обработка создавалась для рассылки сообщений на e-mail. Но затем сфера ее применения оказалась более широкой. Модуль этой обработки представлен выше. Видно, что там всего 4 процедуры небольшого объема, о назначении которых можно догадаться по названию. Т.е. обработка довольно проста и разобраться в коде не представит большой сложности. А это имеет большое значение, так как кому-то конечно же захочется оптимизировать код, возможно, добавить что-то, расширить функционал или перевести на управляемые формы. Обработка тестировалась на платформе 8.3.12.

1 стартмани

06.02.2019    8087    11    vdv2701    4    

Отправка пакета документов по электронной почте (в формате PDF/XLS/HTML/MXL/ODS) Промо

Печатные формы документов Пакетная печать Email Оптовая торговля Оптовая торговля v8 БП2.0 КА1 УПП1 УТ10 Россия БУ Абонемент ($m)

С помощью обработки можно нажатием одной кнопки отправить пакет документов контрагенту по электронной почте. Теперь не надо заходить в каждый документ, формировать нужную печатную форму, сохранять на диск, а потом собирать в одном письме. Все это за вас сделает программа самостоятельно. Все, что требуется от пользователя - просто выбрать документ в программе! Доступны варианты обработки для обычного и управляемого приложения!

2 стартмани

22.04.2015    58263    36    trendy    22    

Красивые письма из 1С

Email v8 v8::БУ БП3.0 Россия Абонемент ($m)

Как отправлять из типовой конфигурации (БП 3.0) красивые электронные письма без редактирования конфигурации, регистрации и смс.

1 стартмани

02.02.2019    16718    33    maxkrezi    19    

Групповая отправка документов по электронной почте (Счет на оплату покупателя, Реализация товаров и услуг, Счет фактура выданный, Акт сверки)

Email Документооборот и делопроизводство Документооборот и делопроизводство Оптовая торговля v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Обработка "Групповая отправка документов по электронной почте" для конфигурации Бухгалтерия 3.0. Позволяет гибко выбирать документы и отправлять их контрагентам.

6 стартмани

29.01.2019    14196    93    MaxxiMiliSan    97    

Ошибки, предупреждения и прочее из журнала регистрации на почту и в Telegram автоматически (БП 3, ЗУП 3.1, УТ 11.4, ERP 2.4, Розница 2.2)

Журнал регистрации Поиск данных Тестирование и исправление Email v8 Розница УНФ ERP2 ЗКГУ3.0 БП3.0 УТ11 ЗУП3.x Абонемент ($m)

Данная обработка позволяет анализировать журнал регистрации с пользовательским отбором (4 критерия отбора) и высылать отчет пользователю с заданной периодичностью на электронную почту или в Телеграм. Возможно использовать как регламентное задание (автоматическая отправка отчетов по времени), непосредственно запускать из клиента, а также выгружать в форму обработки отфильтрованные данные из журнала регистрации без отправки.

2 стартмани

28.01.2019    13694    43    Redinternational    3    

Сравнение pdf-файлов актов сверки Промо

Универсальные обработки Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 v8::БУ БП2.0 Россия БУ Абонемент ($m)

Обработка сравнивает два pdf-файла, в которых находятся стандартные печатные формы актов сверки, и показывает на экране совпадающие и/или отличающиеся по суммам документы взаиморасчетов.

1 стартмани

19.12.2018    21296    17    Torin99    2    

Групповое создание актов сверки "Бухгалтерии предприятия" ред. 3.0

Обработка документов Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Простая, но полезная обработка по массовому созданию документов актов сверок за период в "Бухгалтерии предприятия 3.0". Есть отборы по группе контрагентов, остаткам и оборотам на счетах, доп.опции. В базе создаются документы "Акт сверки расчетов".

1 стартмани

19.01.2019    13492    84    maxx    3    

Год жизни с Яндекс.Почтой

Email v8 ДО Абонемент ($m)

Опишу свой опыт работы с Яндекс.Почтой из 1С:Документооборота. Ошибки, которые, видимо, редки и поэтому нигде не описаны, в основном побеждены и, может, мой опыт поможет кому-нибудь в его борьбе.

1 стартмани

05.01.2019    14163    5    soulner    0    

Отправка уведомлений при увольнении сотрудника на электронную почту из 1С: ЗУП 3.1

Управление персоналом (HRM) Email Управление персоналом (HRM) v8 v8::СПР ЗУП3.x Россия БУ Абонемент ($m)

Поступила задача реализовать отправку оповещений на электронную почту ответственным лицам (системным администраторам, которых нет в системе 1С:ЗУП) компании об увольнении сотрудников из организации. Это необходимо для того что бы сисадмины не забывали закрывать доступы для уволившихся сотрудников. Сообщение отправляется в день увольнения сотрудника. Для этого была разработана внешняя обработка. Скачивайте внешнюю обработку и проделывайте следующие шаги в системе для настройки работы. Релиз платформы: 8.3.10.2753 (на релизе 8.3.12.1529 тоже работает) Релиз конфигурации ЗУП: 3.1.6.54 (неизмененная)

1 стартмани

31.08.2018    13700    30    mityushov.vv    19    

Отправка электронной почты с помощью локального почтового клиента из 1С, развернутой под удаленным рабочим столом Промо

Печатные формы документов Универсальные функции Email v8 КА1 БП2.0 УТ10 УПП1 Абонемент ($m)

Решение для интерактивной (нажал-отредактировал) отправки электронных писем и печатных форм через почтовый клиент (Thunderbird, Outlook) находящийся на локальном компьютере, из конфигурации 1С, развернутой под удаленным рабочим столом (RDP, remote-app). Подходит также для локального развертывания 1С. Представлен пример быстрой интеграции с конфигурациями "Управление торговлей 10.3", "Управление производственным предприятием 1.3", "Комплексная автоматизация 1.1", "Бухгалтерия предприятия 2.0".

1 стартмани

21.09.2018    29119    22    stvorl    0    

Уведомление пользователей о кадровых изменениях (прием на работу, увольнение, отпуск, командировка, перемещение, больничный) сотрудников с определенной должностью. ЗУП 3.1

Управление персоналом (HRM) Email Управление персоналом (HRM) v8 ЗУП3.x БУ Абонемент ($m)

Не нашел в 1с ЗУП 3.1 штатную возможность информировать по средством электронного письма о кадровых изменениях (прием на работу, увольнение, отпуск, командировка, больничный) сотрудников с определенной должностью. Список должностей берется из созданного регистра сведений (заполняется пользователем вручную) Информация о кадровом изменении содержится в теле письма (не вложенный файл). Тестировалось на версии 1С ЗУП 3.1.7.87, платформа 1С:Предприятие 8.3 (8.3.12.1469)

2 стартмани

29.08.2018    10042    23    user978221    9    

Отправка печатных форм документов на почту в pdf. Без изменения конфигурации

Печатные формы документов Email v8 БП2.0 УТ10 УПП1 БП1.6 Абонемент ($m)

Пример внешней печатной формы с отправкой в pdf.

2 стартмани

03.08.2018    12922    22    SITR-utyos    1    

Отправка уведомлений об окончании испытательного срока сотрудника на электронную почту из 1С: ЗУП 3.1

Управление персоналом (HRM) Email Управление персоналом (HRM) v8 v8::СПР ЗУП3.x Россия БУ Абонемент ($m)

Поступила задача реализовать отправку оповещений на электронную почту ответственным лицам компании об окончании испытательного срока сотрудников. Сообщение отправляется за 5 и 10 дней до даты окончания испытательного срока. Штатный функционал по напоминаниям не устроил, другого штатного функционала по отправке сообщений я не нашел в системе 1С: ЗУП 3.1, через отправку сообщение это не удалось сделать. Для этого была разработана внешняя обработка. Скачивайте внешнюю обработку и проделывайте следующие шаги в системе для настройки работы.

1 стартмани

06.07.2018    11613    39    mityushov.vv    1    

Автоматическая рассылка расчетных листков для ЗУП 3.1, ERP 2 и КА 2

Зарплата Email Зарплата v8 ERP2 КА2 ЗУП3.x Россия БУ Абонемент ($m)

Доработанная типовая рассылка расчетных листков с автоматическим заполнением получатеалей.

1 стартмани

25.06.2018    17083    86    asdas9111    6    

Отправка уведомлений о предстоящих днях рождения сотрудников на электронную почту из 1С: ЗУП 3.1

Email Управление персоналом (HRM) Управление персоналом (HRM) v8 v8::СПР ЗУП3.x Россия Абонемент ($m)

Релиз платформы: 8.3.10.2753 Релиз конфигурации ЗУП: 3.1.6.38 (не измененная) Поступила задача реализовать отправку оповещений на электронную почту ответственным лицам компании о приближающихся днях рождения сотрудников. Сообщение отправляется за 5 дней до даты дня рождения сотрудника. Штатный функционал по напоминаниям не устроил, другого штатного функционала по отправке сообщений по дням рождения я не нашел в системе 1С: ЗУП 3.1, через отправку сообщение это не удалось сделать. Для этого была разработана внешняя обработка. Скачивайте внешнюю обработку и проделывайте следующие шаги в системе для настройки работы.

1 стартмани

29.05.2018    14395    74    mityushov.vv    18    

Сбой во взаиморасчетах в КА и ERP

Дебиторская и кредиторская задолженность Обработка документов Дебиторская и кредиторская задолженность v8 КА2 БУ Абонемент ($m)

Недавно столкнулся с проблемой во взаиморасчетах в комплексной автоматизации. Взаиморасчеты в КА полностью аналогичны ERP. Опишу свой опыт на примере 1С:Комплексная автоматизация 2.4.2.123, возможно, это кому-то поможет.

1 стартмани

03.04.2018    33159    200    human_new    20    

Упрощение работы с актами сверки в УТ/КА/УПП - вывод номеров счетов в документе и печатной форме Промо

Обработка документов Печатные формы документов Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 КА1 УТ10 УПП1 БУ УУ Абонемент ($m)

Обычно акт сверки с клиентами содержат информацию о документах реализации товаров (накладных) и выполненных платежах. Но платежи делаются на основании счетов, номера которых отсутствуют в актах, что затрудняет собственно сверку. Данная обработка находит соответствующие расходным накладным счета/заказы, показывает их в форме документа и выводит в печатную форму акта.

2 стартмани

12.05.2017    36394    4    denmax    7    

Массовая рассылка документов контрагентам на почту для Бухгалтерии 3.0

Email Документооборот и делопроизводство Документооборот и делопроизводство v8 v8::БУ БП3.0 БУ Абонемент ($m)

Рассылка всех документов из 1С, в которых есть реквизиты контрагент и договор (счет, акт, счет-фактура, реализация... ) Используем уже имеющиеся печатные формы. Рассылаем через встроенную учетную запись или Outlook. Настраиваем тему и текст письма с параметрами. Формат вложений pdf.

1 стартмани

16.02.2018    21063    177    bgalin    62    

Рассылка расчетных листков. ЗУП 3.1

Email Зарплата Зарплата v8 v8::СПР ЗУП3.x Россия БУ Абонемент ($m)

Рассылка расчетных листков. Простая. С подбором списком и журналом рассылки сообщений.

1 стартмани

02.02.2018    24422    287    bgalin    65    

Отправка почты из 1С с картинками в теле письма

Email v8 1cv8.cf Россия Абонемент ($m)

Красивое письмо. Пример отправки почты из 1С с картинками в теле письма. Письмо формируется с использованием макета - как в печатных формах.

1 стартмани

10.10.2017    13838    31    lukashov_as    0    

Акт сверки с номерами счетов-фактур, начальными остатками по договорам и заполнением по головному контрагенту [Расширение] Промо

Обработка документов Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 БП3.0 Россия БУ Абонемент ($m)

Акт сверки взаиморасчетов (БП 3.0): - Вывод начальных и конечных остатков по договорам в печатную форму; - Вывод валютной суммы для договоров в условных единицах; - Заполнение данных счетов-фактур или УПД; - Заполнение данных по головному контрагенту и всем обособленным подразделениям; - Заполнение представителя организации из ответственных лиц; - Факсимильная подпись и печать. Не требует снятия с поддержки и подходит для базовых конфигураций

1 стартмани

15.12.2015    63762    96    mrXoxot    40    

Рассылка уведомлений о приближающихся отпусках из графика отпусков для ЗУП КОРП 3

Email Управление персоналом (HRM) Управление персоналом (HRM) v8 v8::СПР ЗУП3.x БУ Абонемент ($m)

Внешняя подключаемая обработка. Рассылает уведомления о приближении отпуска по графику отпусков по настраиваемым шаблонам. Уведомление может отправляться: а) Сотруднику, отпуск которого приближается; б) Ответственным лицам (например, руководитель сотрудника, кадровик). Также может создавать в базе задачи кадровику на оформление отпуска. С обработкой можно работать в интерактивном режиме или настроить автоматический запуск рассылки по расписанию.

2 стартмани

25.09.2017    22335    88    wonderboy    18    

Простые подсистемы. Управление контактными сообщениями: регистрация и последующая отправка сообщений из 1С (E-Mail, SMS)

SMS рассылки Email Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Вариант реализации интерфейса рассылки сообщений из 1С, удобная "обёртка" для методов БСП. Подсистема, умеющая отправлять по регламентному заданию зарегистрированные ранее к отправке сообщения SMS или E-Mail.

1 стартмани

06.09.2017    13649    5    pbabincev    0    

Заполнение счетов учета в документах значениями по умолчанию

Обработка документов Дебиторская и кредиторская задолженность Учет ТМЦ Дебиторская и кредиторская задолженность Учет ТМЦ v8 v8::БУ БП3.0 БУ Абонемент ($m)

Заполняет пустые и перезаполняет ранее заполненные счета учета контрагентов и номенклатуры значениями по умолчанию, заданными записями регистров сведений СчетаУчетаНоменклатуры и СчетаУчетаРасчетовСКонтрагентами соответственно.

1 стартмани

19.07.2017    10555    42    VGHOST    1    

УПП. Реализация товаров в у.е. Формирование рублевых сумм проводок и регистров накопления с учетом ранее поступивших авансов : сразу при проведении документа Промо

Дебиторская и кредиторская задолженность Закрытие периода Обработка документов Дебиторская и кредиторская задолженность Закрытие периода v8 УПП1 Россия БУ НУ Налог на прибыль НДС Абонемент ($m)

Договор с покупателем ведется в условных единицах. Вид взаиморасчетов : по договору. Ведем взаиморасчеты в разрезе документов расчетов. Ранее поступил аванс на 2 000 EUR. Курс был 45 руб Теперь производим отгрузку на 5 000 EUR. Курс изменился и стал : 60 руб. Проводки по отгрузке формируются с учетом ранее поступившего аванса. Сумма реализации должна составить : 2 000 х 45 + 3 000 х 60 = 90 000 + 180 000 = 270 000 руб.е В типовой реализации проведение дает сумму по реализации 270 000 только для регистра накопления "Взаиморасчеты с контрагентами по документам расчетов" После внесения доработок в обработку проведения (процедура "Движения Регистров") данные по другим регистрам тоже выходят на сумму с учетом поступившего ранее аванса. Проверено для вариантов настройки программы: 1.Валюта упр.учета - Рубли 2.Валюта упр.учета НЕ Рубли

2 стартмани

08.09.2015    44135    18    Designer1C    9    

Обновление Бухгалтерии 2.0 для работы с 54-ФЗ Онлайн кассы

Кассовые операции ККМ SMS рассылки Email Кассовые операции v8 v8::БУ БП2.0 Россия БУ Абонемент ($m)

Типовая конфигурация БП 2.0 не поддерживает работу с онлайн кассами. Это обновление конфигурации БП 2.0 позволяет подключить онлайн кассы, печатать чеки, отправлять их по email или SMS.

1 стартмани

08.06.2017    37340    292    Zorkon    126    

Рассылка расчетных листков. ЗУП 3.1

Email Зарплата Зарплата v8 v8::СПР ЗУП3.x БУ Абонемент ($m)

Обработка сделана на основе http://infostart.ru/public/305066/ приношу свои ++ Можно подключить как внешнюю стандартными механизмами и настроить рассылку с исключениями - для этого добавьте один регистр в конфигурацию абИсключенияДляРассылкиРасчетныхЛистов с одним измерением ФизЛицо, прежде чем добавлять обработку. Проверено на релизе 3.1.14.436 на платформе от 8.3.14 исправление сделано 31 марта 2021 г Можно работать как на клиенте, так и на сервере любому пользователю с правами на ее запуск и формирование расчетных листков.

1 стартмани

07.04.2017    12893    37    ser6702    18    

Конфигурация "Почтовый клиент" на УФ (8.2, 8.3) Промо

WEB Email v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Конфигурация для работы с почтой на управляемых формах для платформы 8.2, 8.3.

1 стартмани

23.01.2014    60206    560    alexkon    108    

Рассылка расчетных листков по почте (+ руководителю) для ЗУП 3.1

Email Зарплата Зарплата v8 ЗУП3.x Россия БУ Абонемент ($m)

Обработка предназначена для формирования и отправки расчетных листков сотрудникам и руководителю по электронной почте.

1 стартмани

21.03.2017    17511    100    Джуниор    16    

Сверка (выверка) данных УТ10.3 и БП 2.0

Банковские операции Дебиторская и кредиторская задолженность Закрытие периода Учет ТМЦ Анализ учета Банковские операции Дебиторская и кредиторская задолженность Закрытие периода Учет ТМЦ v8 БП2.0 УТ10 БУ УУ Абонемент ($m)

Обработка позволяет произвести онлайн сравнение (выверку) данных за определенный период по разделам учета между конфигурациями 1С:УТ10.3 и 1С:БП 2.0.

1 стартмани

10.01.2017    12876    26    chibor    5    

Интеграция 1С:Предприятия и email-сервиса sendpulse

Email WEB v8 1cv8.cf Украина Абонемент ($m)

Email-сервисы - это сервисы в интернете, которые позволяют вести базу электронных адресов, осуществлять тематические рассылки, и т.д. У большинства современных сервисов есть API интерфейс. С одним из таких сервисов у меня была задача сделать обмен: https://sendpulse.com. Описание API у них есть, но, как оказалось, при попытке интеграции с 1С подводных камней больше, чем абзацев в том описании. Я потратил пару дней, надеюсь, кому-то поможет моя публикация, и время будет сэкономлено.

1 стартмани

02.12.2016    16115    52    bulpi    20    

Автопрайс: Конструктор прайс-листов с автоматической рассылкой по шаблонам Промо

Ценообразование, прайсы Email Оптовая торговля Оптовая торговля v8 УТ10 Оптовая торговля, дистрибуция, логистика Россия УУ Абонемент ($m)

Гибкая и удобная система для формирования и автоматической рассылки прайс-листов. Быстрая рассылка - прайсы на 100+ тыс. строк уходят десяткам клиентов с индивидуальными настройками менее чем за 10 мин. Форматы:.XLS, .XLSX, .TXT /CSV(UTF-8/ANSI), .MXL, .HTML, .DOCX, .PDF, .ODS. Поддерживает картинки в прайсе. Создание макетов прайсов, рассылка по почте и FTP, архивация в ZIP, шаблоны, гибкая настройка и расписание, отчеты о рассылке.

10 стартмани

08.06.2016    27313    73    taurus__    1    

Отправка сообщений "Связь с IT"

Email v8 1cv8.cf Россия Абонемент ($m)

Обработка для отправки заявок ИТ-отделу (разработчикам)

1 стартмани

29.10.2016    11627    11    VL_admin    6    

Конфигурация для партнеров "Инфостарт" для ведения публикаций, рассылки обновлений Промо

Email Управление услугами и сервисом Управление взаимоотношениями с клиентами (СRM) Управление взаимоотношениями с клиентами (СRM) v8 1cv8.cf УУ Абонемент ($m)

Для упрощения жизни своей я разработал конфигурацию «База клиентов и публикаций», которая практически решает мои «проблемы» с рассылкой обновлений и учетом продаж на сайте «Инфостарт», с возможностью загрузки данных с сайта (авторского раздела) . Обновление от 18.06.2019, версия 1.5!

5 стартмани

28.09.2014    34470    55    hakerxp    20