Доброго дня, у меня есть переменная типа Дата, подскажите пожалуйста как мне к Этой дате прибавить 7 дней?) спасибо

```1c
    ...
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Дата КАК СрокПоставки,
    ...

    СрокПоставки = ВыборкаСтрок.СрокПоставки + 7;
```

такой вариант не работает)
---
Пробуй! Жду)

```1c
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ РЕГИСТРАЦИИ ОБРАБОТКИ
    Функция СведенияОВнешнейОбработке() Экспорт

    ПараметрыРегистрации = Новый Структура;
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); // ДополнительнаяОбработка, ДополнительныйОтчет, ЗаполнениеОбъекта, Отчет, ПечатнаяФорма, СозданиеСвязанныхОбъектов
    ПараметрыРегистрации.Вставить("Назначение", ПолучитьНазначениеОбработки());
    ПараметрыРегистрации.Вставить("Наименование", "***МАВ печать спецификации");
    ПараметрыРегистрации.Вставить("Версия", "1.0");
    ПараметрыРегистрации.Вставить("Информация", "Печать спецификации(внешняя печатная форма)");
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
    ПараметрыРегистрации.Вставить("ВерсияБСП", "2.2.2.25"); // Версия проверяется !!!

    Команды = ПолучитьТаблицуКоманд();

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

    Возврат ПараметрыРегистрации;

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

    Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = ")

    НоваяКоманда = ТаблицаКоманд.Добавить();

    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;

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

    Функция ПолучитьНазначениеОбработки()

    Массив = Новый Массив;
    Массив.Добавить("Документ.РеализацияТоваровУслуг");

    Возврат Массив;

    КонецФункции // ПолучитьНазначениеОбработки()

    Функция ПолучитьТаблицуКоманд()

    Команды = Новый ТаблицаЗначений;

    //Представление команды в пользовательском интерфейсе
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));

    //Уникальный идентификатор команды или имя макета печати
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));

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

    //Показывать оповещение.
    //Если Истина, требуется показать оповещение при начале и при завершении работы обработки.
    //Имеет смысл только при запуске обработки без открытия формы
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));

    //Дополнительный модификатор команды.
    //Используется для дополнительных обработок печатных форм на основе табличных макетов.
    //Для таких команд должен содержать строку ПечатьMXL
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));

    Возврат Команды;

    КонецФункции // ПолучитьТаблицуКоманд()

    // Процедура печати
    Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПечатьНакладной") Тогда
    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм
    , "ПечатьНакладной"
    , "М-15 (Накладная)"
    , ПечатьМ15(МассивОбъектов, ОбъектыПечати)
    ,
    ,"ПФ_MXL_М15");
    //
    КонецЕсли;

    ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов,
    КоллекцияПечатныхФорм,
    ОбъектыПечати,
    ПараметрыВывода);
    //

    КонецПроцедуры
    ////////////////////////////////////////////////////////////­/////////////////////////////////////////////////////
    // ПРОЦЕДУРЫ, ФУНКЦИИ обработки

    Функция ПолучитьТекстЗапросаДляФормированияПечатнойФормыМ15()

    ТекстЗапроса =
    "ВЫБРАТЬ
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор КАК Регистратор,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента КАК НомерСтрокиДокумента,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента КАК ТабличнаяЧастьДокумента,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС
    |ПОМЕСТИТЬ РегистрСведенийРублевыеСуммыДокументовВВалюте
    |ИЗ
    | РегистрСведений.РублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    |ГДЕ
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор В(&МассивОбъектов)
    |
    |ИНДЕКСИРОВАТЬ ПО
    | Регистратор,
    | НомерСтрокиДокумента,
    | ТабличнаяЧастьДокумента
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер КАК Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка КАК Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата КАК ДатаСоставления,
    | ДокументРеализацияТоваровУслуг.Дата КАК ДатаДокумента,
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7) КАК СрокПоставки,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация КАК ЮрФизЛицо,
    | ДокументРеализацияТоваровУслуг.Организация КАК Руководители,
    | ДокументРеализацияТоваровУслуг.Склад КАК Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование КАК СкладНаименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код КАК КонтрагентКод,
    | ДокументРеализацияТоваровУслуг.Контрагент КАК Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов КАК Курс,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК Кратность,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование КАК ДоговорНаименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора КАК ДоговорВид,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах КАК РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации КАК БанковскийСчет,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное КАК ТоварНаименование,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ КАК НоменклатурныйНомер,
    | РеализацияТоваровУслуг.СчетУчета.Код КАК СчетУчетаКод,
    | РеализацияТоваровУслуг.ПереданныеСчетУчета.Код КАК ПереданныеСчетУчетаКод,
    | РеализацияТоваровУслуг.СчетРасходов.Код КАК СчетРасходовКод,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмеренияНаименование,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код КАК ЕдиницаИзмеренияКод,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК Цена,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК Сумма,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК СуммаНДС,
    | РеализацияТоваровУслуг.Сумма КАК СуммаВВалютеДокумента,
    | РеализацияТоваровУслуг.СуммаНДС КАК СуммаНДСВВалютеДокумента,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 1 КАК ID,
    | РеализацияТоваровУслуг.НомерСтроки КАК НомерСтроки,
    | РеализацияТоваровУслуг.СчетДоходов,
    | ЕСТЬNULL(РеализацияТоваровУслуг.СчетУчета.Забалансовый, ЛОЖЬ) КАК ЭтоКомиссия,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0) КАК ВсегоРуб,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0) КАК НДСРуб,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0) КАК СуммаБезНДСРуб
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.Товары))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7),
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код,
    | ДокументРеализацияТоваровУслуг.Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ,
    | NULL,
    | NULL,
    | РеализацияТоваровУслуг.СчетРасходов.Код,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | РеализацияТоваровУслуг.Сумма,
    | РеализацияТоваровУслуг.СуммаНДС,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 3,
    | РеализацияТоваровУслуг.НомерСтроки,
    | РеализацияТоваровУслуг.СчетДоходов,
    | ЛОЖЬ,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0)
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.Услуги))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7),
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код,
    | ДокументРеализацияТоваровУслуг.Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ,
    | NULL,
    | NULL,
    | NULL,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | РеализацияТоваровУслуг.Сумма,
    | РеализацияТоваровУслуг.СуммаНДС,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 4,
    | РеализацияТоваровУслуг.НомерСтроки,
    | NULL,
    | ИСТИНА,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0)
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.АгентскиеУслуги КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.АгентскиеУслуги))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |УПОРЯДОЧИТЬ ПО
    | ДатаДокумента,
    | Ссылка,
    | ID,
    | НомерСтроки";

    Возврат ТекстЗапроса;

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

    Функция ПодготовитьТаблицуДокументаДляПечати(ВыборкаСтрок, ТаблицаПоТоварам, ПечататьТовары, ПечататьУслуги)

    ТаблицаПоТоварам.Очистить();

    ВалютаРегламентированногоУчета = ОбщегоНазначенияБПВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета();
    МассивРаспределения = Новый Массив;

    СуммаВзаиморасчетов = 0;
    СуммаВзаиморасчетовНДС = 0;
    ПерваяСтрокаДокумента = Истина;
    СуммаВключаетНДС = Неопределено;
    РасчетыВУсловныхЕдиницах= Неопределено;
    ДатаДокумента = Неопределено;

    Пока ВыборкаСтрок.Следующий() Цикл

    СтрокаТаблицы = ТаблицаПоТоварам.Добавить();
    ЗаполнитьЗначенияСвойств(СтрокаТаблицы, ВыборкаСтрок);
    // СрокПоставки = ВыборкаСтрок.СрокПоставки + 7 * 86400;
    //
    //Сообщить(СрокПоставки);

    Если ПерваяСтрокаДокумента Тогда

    СуммаВключаетНДС = ВыборкаСтрок.СуммаВключаетНДС;
    РасчетыВУсловныхЕдиницах = ВыборкаСтрок.РасчетыВУсловныхЕдиницах;
    ДатаДокумента = ВыборкаСтрок.ДатаДокумента;

    НуженПересчетВРубли = Ложь;

    Если ВыборкаСтрок.Проведен
    И (ВыборкаСтрок.РасчетыВУсловныхЕдиницах
    ИЛИ (ВыборкаСтрок.ВалютаДокумента <> ВалютаРегламентированногоУчета И ВыборкаСтрок.ДатаДокумента >= '20090101000000')) Тогда
    НуженПересчетВРубли = Истина;
    КонецЕсли;

    ПерваяСтрокаДокумента = Ложь;

    КонецЕсли;

    Если НуженПересчетВРубли Тогда

    Если СтрокаТаблицы.ВсегоРуб = 0 Тогда

    СтрокаТаблицы.Сумма = СтрокаТаблицы.Сумма;
    СтрокаТаблицы.СуммаНДС = СтрокаТаблицы.СуммаНДС;

    Иначе

    СтрокаТаблицы.Сумма = СтрокаТаблицы.ВсегоРуб - ?(СуммаВключаетНДС, 0, СтрокаТаблицы.НДСРуб);
    СтрокаТаблицы.СуммаНДС = СтрокаТаблицы.НДСРуб;

    КонецЕсли;

    СтрокаТаблицы.СуммаБезНДС = СтрокаТаблицы.Сумма - СтрокаТаблицы.СуммаНДС;

    СтрокаТаблицы.ВсегоНДС = СтрокаТаблицы.ВсегоНДС + СтрокаТаблицы.СуммаНДС;

    СтрокаТаблицы.Цена = ?(СтрокаТаблицы.Количество = 0, 0, Окр(СтрокаТаблицы.Сумма/СтрокаТаблицы.Количество,2));

    КонецЕсли;

    КонецЦикла;

    Если НЕ ПечататьТовары ИЛИ НЕ ПечататьУслуги Тогда
    // Исключим строки из табличный частей, которые не удовлетворяют условиям печати. При выборке запросом их необходимо получать,
    // чтобы распределять сумма взаиморасчетов в рублях на все строки документа.
    Инд = ТаблицаПоТоварам.Количество() - 1;
    Пока Инд >= 0 Цикл
    СтрокаТовар = ТаблицаПоТоварам[Инд];

    Если СтрокаТовар.ID = 1 ИЛИ СтрокаТовар.ID = 2 Тогда // Товары или ВозвратнаяТара
    Если НЕ ПечататьТовары Тогда
    ТаблицаПоТоварам.Удалить(Инд);
    КонецЕсли;
    ИначеЕсли СтрокаТовар.ID = 3 ИЛИ СтрокаТовар.ID = 4 Тогда // Услуги или АгентскиеУслуги
    Если НЕ ПечататьУслуги Тогда
    ТаблицаПоТоварам.Удалить(Инд);
    КонецЕсли;
    КонецЕсли;

    Инд = Инд - 1;
    КонецЦикла;
    КонецЕсли;

    Возврат ТаблицаПоТоварам;

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

    Функция ПечатьМ15(МассивОбъектов, ОбъектыПечати)

    Перем ПодразделениеОтветственныхЛиц;

    УстановитьПривилегированныйРежим(Истина);

    ВалютаРегламентированногоУчета = ОбщегоНазначенияБПВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета();

    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.АвтоМасштаб = Истина;
    ТабличныйДокумент.ПолеСверху = 10;
    ТабличныйДокумент.ПолеСнизу = 10;
    ТабличныйДокумент.ПолеСправа = 0;
    ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_М15";

    СисИнфо = Новый СистемнаяИнформация;
    Если ПустаяСтрока(СисИнфо.ИнформацияПрограммыПросмотра) Тогда
    ТабличныйДокумент.ПолеСлева = 0;
    Иначе
    ТабличныйДокумент.ПолеСлева = 10;
    КонецЕсли;

    Макет = ЭтотОбъект.ПолучитьМакет("ПФ_MXL_М15");

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

    ВыборкаШапки = Запрос.Выполнить().Выбрать();

    ПервыйДокумент = Истина;

    ОписаниеТиповЧисло15_2 = ОбщегоНазначения.ОписаниеТипаЧисло(15, 2);
    ОписаниеТиповЧисло15_3 = ОбщегоНазначения.ОписаниеТипаЧисло(15, 3);

    ВыборкаСтрок = Новый ТаблицаЗначений;

    ВыборкаСтрок.Колонки.Добавить("Номенклатура");
    ВыборкаСтрок.Колонки.Добавить("ТоварНаименование");
    ВыборкаСтрок.Колонки.Добавить("НоменклатурныйНомер");
    ВыборкаСтрок.Колонки.Добавить("СчетУчетаКод");
    ВыборкаСтрок.Колонки.Добавить("ПереданныеСчетУчетаКод");
    ВыборкаСтрок.Колонки.Добавить("СчетРасходовКод");
    ВыборкаСтрок.Колонки.Добавить("Количество", ОписаниеТиповЧисло15_3);
    ВыборкаСтрок.Колонки.Добавить("ЕдиницаИзмеренияНаименование");
    ВыборкаСтрок.Колонки.Добавить("ЕдиницаИзмеренияКод");
    ВыборкаСтрок.Колонки.Добавить("Цена");
    ВыборкаСтрок.Колонки.Добавить("СуммаВключаетНДС");
    ВыборкаСтрок.Колонки.Добавить("Сумма", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаВВалютеДокумента", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаНДСВВалютеДокумента", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СтавкаНДС");
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДСВВалютеДокумента",ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("КоррСчет");
    ВыборкаСтрок.Колонки.Добавить("КоррКод");
    ВыборкаСтрок.Колонки.Добавить("СуммаСНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ID");
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаРублевая", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ЭтоКомиссия", Новый ОписаниеТипов("Булево"));
    ВыборкаСтрок.Колонки.Добавить("ВсегоРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("НДСРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДСРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ВсегоНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ВсегоСуммаСНДС", ОписаниеТиповЧисло15_2);

    Пока ВыборкаШапки.СледующийПоЗначениюПоля("Ссылка") Цикл

    Если НЕ ПервыйДокумент Тогда
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ПервыйДокумент = Ложь;
    // Запомним номер строки, с которой начали выводить текущий документ.
    НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;

    ВыборкаСтрок = ПодготовитьТаблицуДокументаДляПечати(ВыборкаШапки, ВыборкаСтрок, Истина, Ложь);

    // Получаем области макета для вывода в табличный документ
    Шапка = Макет.ПолучитьОбласть("Шапка");
    ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаблицы");
    СтрокаТаблицы = Макет.ПолучитьОбласть("Строка");
    Подвал = Макет.ПолучитьОбласть("Подвал");
    СуммаТаблицы = Макет.ПолучитьОбласть("СуммаТабл");
    // Выведем шапку документа
    Шапка.Параметры.Заполнить(ВыборкаШапки);

    СведенияОбОрганизации = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(ВыборкаШапки.ЮрФизЛицо, ВыборкаШапки.ДатаСоставления, ВыборкаШапки.БанковскийСчет);
    СведенияОКонтрагенте = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(ВыборкаШапки.Контрагент, ВыборкаШапки.ДатаСоставления);

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

    ТабличныйДокумент.Вывести(Шапка);

    СуммаРублевая = 0;
    ВсегоСуммаСНДС = 0;

    Для каждого СтрокаВыборки Из ВыборкаСтрок Цикл

    СуммаНДС = ?(ЗначениеЗаполнено(СтрокаВыборки.СуммаНДС), СтрокаВыборки.СуммаНДС, 0);
    Количество = ?(ЗначениеЗаполнено(СтрокаВыборки.Количество), СтрокаВыборки.Количество, 0);
    СуммаСНДС = (?(ЗначениеЗаполнено(СтрокаВыборки.Сумма), СтрокаВыборки.Сумма, 0) + ?(ВыборкаШапки.СуммаВключаетНДС, 0, ?(ЗначениеЗаполнено(СтрокаВыборки.СуммаНДС), СтрокаВыборки.СуммаНДС, 0)));
    СуммаБезНДС = СуммаСНДС - СуммаНДС;
    // СуммаБезНДС = СуммаСНДС - СуммаНДС;
    СуммаРублевая = СуммаРублевая + СуммаНДС;
    ВсегоСуммаСНДС = ВсегоСуммаСНДС + СуммаСНДС;

    СтрокаВыборки.КоррСчет = ?((ВыборкаШапки.ДоговорВид = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером ИЛИ ВыборкаШапки.ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ОтгрузкаБезПереходаПраваСобственности), СтрокаВыборки.ПереданныеСчетУчетаКод, СтрокаВыборки.СчетРасходовКод);
    СтрокаВыборки.КоррКод = СтрокаВыборки.НоменклатурныйНомер;
    СтрокаВыборки.ТоварНаименование = СокрЛП(СтрокаВыборки.ТоварНаименование);
    СтрокаВыборки.СуммаСНДС = СуммаСНДС;
    СтрокаВыборки.СуммаБезНДС = СуммаБезНДС;
    СтрокаВыборки.Цена = СуммаБезНДС / ?(Количество = 0, 1, Количество);

    КонецЦикла;

    //конец заполнения суммы
    // Заполним подвал документа

    Подвал.Параметры.Заполнить(ВыборкаШапки);

    ПодразделениеОтветственныхЛиц = ВыборкаШапки.ПодразделениеОрганизации;

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

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

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

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

    ИтогНДС = ВыборкаСтрок.Итог("СуммаНДС");

    // Подвал.Параметры.КоличествоПорядковыхНомеровЗаписейПрописью = ЧислоПрописью(ВыборкаСтрок.Количество(), ,",,,с,,,,,0");
    Подвал.Параметры.СуммаПрописью = ОбщегоНазначенияБПВызовСервера.СформироватьСуммуПрописью(ВыборкаСтрок.Итог("СуммаСНДС"), ВалютаРегламентированногоУчета);
    Подвал.Параметры.ИтогНДС = ?(ЗначениеЗаполнено(ИтогНДС), Формат(Цел(ИтогНДС), "ЧДЦ=0") + " руб. " + Формат((ИтогНДС - Цел(ИтогНДС)) * 100, "ЧЦ=2; ЧВН=") + " коп. ", "______ руб. ______ коп.");
    Подвал.Параметры.Контрагент = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОКонтрагенте, "НаименованиеДляПечатныхФорм,");
    // Подвал.Параметры.Организация = Справочники.Организации.НайтиПоКоду("000000001");

    // Инициализируем счетчик страниц
    НомерСтраницы = 1;

    // Выведем заголовок табличной части
    ТабличныйДокумент.Вывести(ЗаголовокТаблицы);

    // Выведем выборку строк
    Для каждого СтрокаВыборки Из ВыборкаСтрок Цикл

    СтрокаТаблицы.Параметры.Заполнить(СтрокаВыборки);

    СтрокаСПодвалом = Новый Массив;
    СтрокаСПодвалом.Добавить(СтрокаТаблицы);
    //СтрокаСПодвалом.Добавить(ПодвалТаблицы);

    // Если обрабатываемая строка - последняя, будем проверять, помещается ли подвал документа
    Если ВыборкаСтрок.Индекс(СтрокаВыборки) = ВыборкаСтрок.Количество() - 1 Тогда
    СтрокаСПодвалом.Добавить(Подвал);
    КонецЕсли;

    Если НЕ ОбщегоНазначенияБПВызовСервера.ПроверитьВыводТабличногоДокумента(ТабличныйДокумент, СтрокаСПодвалом) Тогда
    //ТабличныйДокумент.Вывести(ПодвалТаблицы);
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    НомерСтраницы = НомерСтраницы + 1;
    ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы;
    ТабличныйДокумент.Вывести(ЗаголовокТаблицы);
    КонецЕсли;

    ТабличныйДокумент.Вывести(СтрокаТаблицы);

    КонецЦикла;

    //Заполним Сумму Таблицы
    СуммаТаблицы.Параметры.Заполнить(ВыборкаШапки);

    СуммаТаблицы.Параметры.ВсегоНДСп = Формат(СуммаРублевая, "ЧДЦ=2");
    СуммаТаблицы.Параметры.ВсегоСНДСп = Формат(ВсегоСуммаСНДС, "ЧДЦ=2");
    ТабличныйДокумент.Вывести(СуммаТаблицы);

    // Выведем все подвалы

    ТабличныйДокумент.Вывести(Подвал);

    // В табличном документе зададим имя области, в которую был
    // выведен объект. Нужно для возможности печати покомплектно.
    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент,
    НомерСтрокиНачало, ОбъектыПечати, ВыборкаШапки.Ссылка);

    КонецЦикла;

    Возврат ТабличныйДокумент;

    КонецФункции
```
---
нужен больший фрагмент кода, что бы понять косяк! Или тут нечистая завелась!)
---
```1c
    Функция ПолучитьТекстЗапросаДляФормированияПечатнойФормыМ15()

    ТекстЗапроса =
    "ВЫБРАТЬ
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор КАК Регистратор,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента КАК НомерСтрокиДокумента,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента КАК ТабличнаяЧастьДокумента,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС
    |ПОМЕСТИТЬ РегистрСведенийРублевыеСуммыДокументовВВалюте
    |ИЗ
    | РегистрСведений.РублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    |ГДЕ
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор В(&МассивОбъектов)
    |
    |ИНДЕКСИРОВАТЬ ПО
    | Регистратор,
    | НомерСтрокиДокумента,
    | ТабличнаяЧастьДокумента
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер КАК Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка КАК Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата КАК ДатаСоставления,
    | ДокументРеализацияТоваровУслуг.Дата КАК ДатаДокумента,
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7) КАК СрокПоставки,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация КАК ЮрФизЛицо,
    | ДокументРеализацияТоваровУслуг.Организация КАК Руководители,
    | ДокументРеализацияТоваровУслуг.Склад КАК Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование КАК СкладНаименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код КАК КонтрагентКод,
    | ДокументРеализацияТоваровУслуг.Контрагент КАК Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов КАК Курс,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК Кратность,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование КАК ДоговорНаименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора КАК ДоговорВид,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах КАК РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации КАК БанковскийСчет,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное КАК ТоварНаименование,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ КАК НоменклатурныйНомер,
    | РеализацияТоваровУслуг.СчетУчета.Код КАК СчетУчетаКод,
    | РеализацияТоваровУслуг.ПереданныеСчетУчета.Код КАК ПереданныеСчетУчетаКод,
    | РеализацияТоваровУслуг.СчетРасходов.Код КАК СчетРасходовКод,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмеренияНаименование,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код КАК ЕдиницаИзмеренияКод,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК Цена,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК Сумма,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК СуммаНДС,
    | РеализацияТоваровУслуг.Сумма КАК СуммаВВалютеДокумента,
    | РеализацияТоваровУслуг.СуммаНДС КАК СуммаНДСВВалютеДокумента,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 1 КАК ID,
    | РеализацияТоваровУслуг.НомерСтроки КАК НомерСтроки,
    | РеализацияТоваровУслуг.СчетДоходов,
    | ЕСТЬNULL(РеализацияТоваровУслуг.СчетУчета.Забалансовый, ЛОЖЬ) КАК ЭтоКомиссия,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0) КАК ВсегоРуб,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0) КАК НДСРуб,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0) КАК СуммаБезНДСРуб
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.Товары))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код,
    | ДокументРеализацияТоваровУслуг.Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ,
    | NULL,
    | NULL,
    | РеализацияТоваровУслуг.СчетРасходов.Код,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | РеализацияТоваровУслуг.Сумма,
    | РеализацияТоваровУслуг.СуммаНДС,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 3,
    | РеализацияТоваровУслуг.НомерСтроки,
    | РеализацияТоваровУслуг.СчетДоходов,
    | ЛОЖЬ,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0)
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.Услуги))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код,
    | ДокументРеализацияТоваровУслуг.Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ,
    | NULL,
    | NULL,
    | NULL,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | РеализацияТоваровУслуг.Сумма,
    | РеализацияТоваровУслуг.СуммаНДС,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 4,
    | РеализацияТоваровУслуг.НомерСтроки,
    | NULL,
    | ИСТИНА,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0)
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.АгентскиеУслуги КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.АгентскиеУслуги))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |УПОРЯДОЧИТЬ ПО
    | ДатаДокумента,
    | Ссылка,
    | ID,
    | НомерСтроки";

    Возврат ТекстЗапроса;

    КонецФункции
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Функция ПодготовитьТаблицуДокументаДляПечати(ВыборкаСтрок, ТаблицаПоТоварам, ПечататьТовары, ПечататьУслуги)

    ТаблицаПоТоварам.Очистить();

    ВалютаРегламентированногоУчета = ОбщегоНазначенияБПВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета();
    МассивРаспределения = Новый Массив;

    СуммаВзаиморасчетов = 0;
    СуммаВзаиморасчетовНДС = 0;
    ПерваяСтрокаДокумента = Истина;
    СуммаВключаетНДС = Неопределено;
    РасчетыВУсловныхЕдиницах= Неопределено;
    ДатаДокумента = Неопределено;

    Пока ВыборкаСтрок.Следующий() Цикл

    СтрокаТаблицы = ТаблицаПоТоварам.Добавить();
    ЗаполнитьЗначенияСвойств(СтрокаТаблицы, ВыборкаСтрок);

    Если ПерваяСтрокаДокумента Тогда

    СуммаВключаетНДС = ВыборкаСтрок.СуммаВключаетНДС;
    РасчетыВУсловныхЕдиницах = ВыборкаСтрок.РасчетыВУсловныхЕдиницах;
    ДатаДокумента = ВыборкаСтрок.ДатаДокумента;
    СрокПоставки = ВыборкаСтрок.СрокПоставки + 7 * 86400;

    НуженПересчетВРубли = Ложь;

    Если ВыборкаСтрок.Проведен
    И (ВыборкаСтрок.РасчетыВУсловныхЕдиницах
    ИЛИ (ВыборкаСтрок.ВалютаДокумента <> ВалютаРегламентированногоУчета И ВыборкаСтрок.ДатаДокумента >= '20090101000000')) Тогда
    НуженПересчетВРубли = Истина;
    КонецЕсли;

    ПерваяСтрокаДокумента = Ложь;

    КонецЕсли;

    Если НуженПересчетВРубли Тогда

    Если СтрокаТаблицы.ВсегоРуб = 0 Тогда

    СтрокаТаблицы.Сумма = СтрокаТаблицы.Сумма;
    СтрокаТаблицы.СуммаНДС = СтрокаТаблицы.СуммаНДС;

    Иначе

    СтрокаТаблицы.Сумма = СтрокаТаблицы.ВсегоРуб - ?(СуммаВключаетНДС, 0, СтрокаТаблицы.НДСРуб);
    СтрокаТаблицы.СуммаНДС = СтрокаТаблицы.НДСРуб;

    КонецЕсли;

    СтрокаТаблицы.СуммаБезНДС = СтрокаТаблицы.Сумма - СтрокаТаблицы.СуммаНДС;

    СтрокаТаблицы.ВсегоНДС = СтрокаТаблицы.ВсегоНДС + СтрокаТаблицы.СуммаНДС;

    СтрокаТаблицы.Цена = ?(СтрокаТаблицы.Количество = 0, 0, Окр(СтрокаТаблицы.Сумма/СтрокаТаблицы.Количество,2));

    КонецЕсли;

    КонецЦикла;

    Если НЕ ПечататьТовары ИЛИ НЕ ПечататьУслуги Тогда
    // Исключим строки из табличный частей, которые не удовлетворяют условиям печати. При выборке запросом их необходимо получать,
    // чтобы распределять сумма взаиморасчетов в рублях на все строки документа.
    Инд = ТаблицаПоТоварам.Количество() - 1;
    Пока Инд >= 0 Цикл
    СтрокаТовар = ТаблицаПоТоварам[Инд];

    Если СтрокаТовар.ID = 1 ИЛИ СтрокаТовар.ID = 2 Тогда // Товары или ВозвратнаяТара
    Если НЕ ПечататьТовары Тогда
    ТаблицаПоТоварам.Удалить(Инд);
    КонецЕсли;
    ИначеЕсли СтрокаТовар.ID = 3 ИЛИ СтрокаТовар.ID = 4 Тогда // Услуги или АгентскиеУслуги
    Если НЕ ПечататьУслуги Тогда
    ТаблицаПоТоварам.Удалить(Инд);
    КонецЕсли;
    КонецЕсли;

    Инд = Инд - 1;
    КонецЦикла;
    КонецЕсли;

    Возврат ТаблицаПоТоварам;

    КонецФункции
```
---
так этот код сработает только когда это "ПерваяСтрокаДокумента", вытащите его за пределы условия Если
---
переписал эту строку вообще перед циклом) всё равно не работает...

```1c
    Функция ПодготовитьТаблицуДокументаДляПечати(ВыборкаСтрок, ТаблицаПоТоварам, ПечататьТовары, ПечататьУслуги)

    ТаблицаПоТоварам.Очистить();

    ВалютаРегламентированногоУчета = ОбщегоНазначенияБПВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета();
    МассивРаспределения = Новый Массив;

    СуммаВзаиморасчетов = 0;
    СуммаВзаиморасчетовНДС = 0;
    ПерваяСтрокаДокумента = Истина;
    СуммаВключаетНДС = Неопределено;
    РасчетыВУсловныхЕдиницах= Неопределено;
    ДатаДокумента = Неопределено;
    СрокПоставки = ВыборкаСтрок.СрокПоставки + 7 * 86400;
```
---
поставьте эту строку сразу после этой "ЗаполнитьЗначенияСвойств(СтрокаТаблицы, ВыборкаСтрок);"
---
ставлю тапки, в макете название параметра соответствует не СрокПоставки, а ДатаДокумента. Так?
---
(10) не работает, для проверки я вывожу два параметра, ДатаЗаполнения и СрокПоставки, Срок поставки должен быть на 7 дней больше... а они выводятся одинаковые
---
так выводится
---
хочу еще больше кода, что бы увидеть косяк!)))
---
так, вывел сообщение что бы посмотреть значение переменной
---
вот весь код)

```1c
    ////////////////////////////////////////////////////////////­/////////////////////////////////////////////////////
    // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ РЕГИСТРАЦИИ ОБРАБОТКИ
    Функция СведенияОВнешнейОбработке() Экспорт

    ПараметрыРегистрации = Новый Структура;
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); // ДополнительнаяОбработка, ДополнительныйОтчет, ЗаполнениеОбъекта, Отчет, ПечатнаяФорма, СозданиеСвязанныхОбъектов
    ПараметрыРегистрации.Вставить("Назначение", ПолучитьНазначениеОбработки());
    ПараметрыРегистрации.Вставить("Наименование", "***МАВ печать спецификации");
    ПараметрыРегистрации.Вставить("Версия", "1.0");
    ПараметрыРегистрации.Вставить("Информация", "Печать спецификации(внешняя печатная форма)");
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
    ПараметрыРегистрации.Вставить("ВерсияБСП", "2.2.2.25"); // Версия проверяется !!!

    Команды = ПолучитьТаблицуКоманд();

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

    Возврат ПараметрыРегистрации;

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

    Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = ")

    НоваяКоманда = ТаблицаКоманд.Добавить();

    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;

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

    Функция ПолучитьНазначениеОбработки()

    Массив = Новый Массив;
    Массив.Добавить("Документ.РеализацияТоваровУслуг");

    Возврат Массив;

    КонецФункции // ПолучитьНазначениеОбработки()

    Функция ПолучитьТаблицуКоманд()

    Команды = Новый ТаблицаЗначений;

    //Представление команды в пользовательском интерфейсе
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));

    //Уникальный идентификатор команды или имя макета печати
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));

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

    //Показывать оповещение.
    //Если Истина, требуется показать оповещение при начале и при завершении работы обработки.
    //Имеет смысл только при запуске обработки без открытия формы
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));

    //Дополнительный модификатор команды.
    //Используется для дополнительных обработок печатных форм на основе табличных макетов.
    //Для таких команд должен содержать строку ПечатьMXL
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));

    Возврат Команды;

    КонецФункции // ПолучитьТаблицуКоманд()

    // Процедура печати
    Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПечатьНакладной") Тогда
    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм
    , "ПечатьНакладной"
    , "М-15 (Накладная)"
    , ПечатьМ15(МассивОбъектов, ОбъектыПечати)
    ,
    ,"ПФ_MXL_М15");
    //
    КонецЕсли;

    ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов,
    КоллекцияПечатныхФорм,
    ОбъектыПечати,
    ПараметрыВывода);
    //

    КонецПроцедуры
    ////////////////////////////////////////////////////////////­/////////////////////////////////////////////////////
    // ПРОЦЕДУРЫ, ФУНКЦИИ обработки

    Функция ПолучитьТекстЗапросаДляФормированияПечатнойФормыМ15()

    ТекстЗапроса =
    "ВЫБРАТЬ
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор КАК Регистратор,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента КАК НомерСтрокиДокумента,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента КАК ТабличнаяЧастьДокумента,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС
    |ПОМЕСТИТЬ РегистрСведенийРублевыеСуммыДокументовВВалюте
    |ИЗ
    | РегистрСведений.РублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    |ГДЕ
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор В(&МассивОбъектов)
    |
    |ИНДЕКСИРОВАТЬ ПО
    | Регистратор,
    | НомерСтрокиДокумента,
    | ТабличнаяЧастьДокумента
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер КАК Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка КАК Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата КАК ДатаСоставления,
    | ДокументРеализацияТоваровУслуг.Дата КАК ДатаДокумента,
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7) КАК СрокПоставки,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация КАК ЮрФизЛицо,
    | ДокументРеализацияТоваровУслуг.Организация КАК Руководители,
    | ДокументРеализацияТоваровУслуг.Склад КАК Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование КАК СкладНаименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код КАК КонтрагентКод,
    | ДокументРеализацияТоваровУслуг.Контрагент КАК Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов КАК Курс,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК Кратность,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование КАК ДоговорНаименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора КАК ДоговорВид,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах КАК РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации КАК БанковскийСчет,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное КАК ТоварНаименование,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ КАК НоменклатурныйНомер,
    | РеализацияТоваровУслуг.СчетУчета.Код КАК СчетУчетаКод,
    | РеализацияТоваровУслуг.ПереданныеСчетУчета.Код КАК ПереданныеСчетУчетаКод,
    | РеализацияТоваровУслуг.СчетРасходов.Код КАК СчетРасходовКод,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмеренияНаименование,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код КАК ЕдиницаИзмеренияКод,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК Цена,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК Сумма,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК СуммаНДС,
    | РеализацияТоваровУслуг.Сумма КАК СуммаВВалютеДокумента,
    | РеализацияТоваровУслуг.СуммаНДС КАК СуммаНДСВВалютеДокумента,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 1 КАК ID,
    | РеализацияТоваровУслуг.НомерСтроки КАК НомерСтроки,
    | РеализацияТоваровУслуг.СчетДоходов,
    | ЕСТЬNULL(РеализацияТоваровУслуг.СчетУчета.Забалансовый, ЛОЖЬ) КАК ЭтоКомиссия,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0) КАК ВсегоРуб,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0) КАК НДСРуб,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0) КАК СуммаБезНДСРуб
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.Товары))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код,
    | ДокументРеализацияТоваровУслуг.Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ,
    | NULL,
    | NULL,
    | РеализацияТоваровУслуг.СчетРасходов.Код,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | РеализацияТоваровУслуг.Сумма,
    | РеализацияТоваровУслуг.СуммаНДС,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 3,
    | РеализацияТоваровУслуг.НомерСтроки,
    | РеализацияТоваровУслуг.СчетДоходов,
    | ЛОЖЬ,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0)
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.Услуги))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код,
    | ДокументРеализацияТоваровУслуг.Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ,
    | NULL,
    | NULL,
    | NULL,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | РеализацияТоваровУслуг.Сумма,
    | РеализацияТоваровУслуг.СуммаНДС,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 4,
    | РеализацияТоваровУслуг.НомерСтроки,
    | NULL,
    | ИСТИНА,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0)
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.АгентскиеУслуги КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.АгентскиеУслуги))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |УПОРЯДОЧИТЬ ПО
    | ДатаДокумента,
    | Ссылка,
    | ID,
    | НомерСтроки";

    Возврат ТекстЗапроса;

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

    Функция ПодготовитьТаблицуДокументаДляПечати(ВыборкаСтрок, ТаблицаПоТоварам, ПечататьТовары, ПечататьУслуги)

    ТаблицаПоТоварам.Очистить();

    ВалютаРегламентированногоУчета = ОбщегоНазначенияБПВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета();
    МассивРаспределения = Новый Массив;

    СуммаВзаиморасчетов = 0;
    СуммаВзаиморасчетовНДС = 0;
    ПерваяСтрокаДокумента = Истина;
    СуммаВключаетНДС = Неопределено;
    РасчетыВУсловныхЕдиницах= Неопределено;
    ДатаДокумента = Неопределено;

    Пока ВыборкаСтрок.Следующий() Цикл

    СтрокаТаблицы = ТаблицаПоТоварам.Добавить();
    ЗаполнитьЗначенияСвойств(СтрокаТаблицы, ВыборкаСтрок);
    СрокПоставки = ВыборкаСтрок.СрокПоставки + 7 * 86400;

    Сообщить(СрокПоставки);

    Если ПерваяСтрокаДокумента Тогда

    СуммаВключаетНДС = ВыборкаСтрок.СуммаВключаетНДС;
    РасчетыВУсловныхЕдиницах = ВыборкаСтрок.РасчетыВУсловныхЕдиницах;
    ДатаДокумента = ВыборкаСтрок.ДатаДокумента;

    НуженПересчетВРубли = Ложь;

    Если ВыборкаСтрок.Проведен
    И (ВыборкаСтрок.РасчетыВУсловныхЕдиницах
    ИЛИ (ВыборкаСтрок.ВалютаДокумента <> ВалютаРегламентированногоУчета И ВыборкаСтрок.ДатаДокумента >= '20090101000000')) Тогда
    НуженПересчетВРубли = Истина;
    КонецЕсли;

    ПерваяСтрокаДокумента = Ложь;

    КонецЕсли;

    Если НуженПересчетВРубли Тогда

    Если СтрокаТаблицы.ВсегоРуб = 0 Тогда

    СтрокаТаблицы.Сумма = СтрокаТаблицы.Сумма;
    СтрокаТаблицы.СуммаНДС = СтрокаТаблицы.СуммаНДС;

    Иначе

    СтрокаТаблицы.Сумма = СтрокаТаблицы.ВсегоРуб - ?(СуммаВключаетНДС, 0, СтрокаТаблицы.НДСРуб);
    СтрокаТаблицы.СуммаНДС = СтрокаТаблицы.НДСРуб;

    КонецЕсли;

    СтрокаТаблицы.СуммаБезНДС = СтрокаТаблицы.Сумма - СтрокаТаблицы.СуммаНДС;

    СтрокаТаблицы.ВсегоНДС = СтрокаТаблицы.ВсегоНДС + СтрокаТаблицы.СуммаНДС;

    СтрокаТаблицы.Цена = ?(СтрокаТаблицы.Количество = 0, 0, Окр(СтрокаТаблицы.Сумма/СтрокаТаблицы.Количество,2));

    КонецЕсли;

    КонецЦикла;

    Если НЕ ПечататьТовары ИЛИ НЕ ПечататьУслуги Тогда
    // Исключим строки из табличный частей, которые не удовлетворяют условиям печати. При выборке запросом их необходимо получать,
    // чтобы распределять сумма взаиморасчетов в рублях на все строки документа.
    Инд = ТаблицаПоТоварам.Количество() - 1;
    Пока Инд >= 0 Цикл
    СтрокаТовар = ТаблицаПоТоварам[Инд];

    Если СтрокаТовар.ID = 1 ИЛИ СтрокаТовар.ID = 2 Тогда // Товары или ВозвратнаяТара
    Если НЕ ПечататьТовары Тогда
    ТаблицаПоТоварам.Удалить(Инд);
    КонецЕсли;
    ИначеЕсли СтрокаТовар.ID = 3 ИЛИ СтрокаТовар.ID = 4 Тогда // Услуги или АгентскиеУслуги
    Если НЕ ПечататьУслуги Тогда
    ТаблицаПоТоварам.Удалить(Инд);
    КонецЕсли;
    КонецЕсли;

    Инд = Инд - 1;
    КонецЦикла;
    КонецЕсли;

    Возврат ТаблицаПоТоварам;

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

    Функция ПечатьМ15(МассивОбъектов, ОбъектыПечати)

    Перем ПодразделениеОтветственныхЛиц;

    УстановитьПривилегированныйРежим(Истина);

    ВалютаРегламентированногоУчета = ОбщегоНазначенияБПВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета();

    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.АвтоМасштаб = Истина;
    ТабличныйДокумент.ПолеСверху = 10;
    ТабличныйДокумент.ПолеСнизу = 10;
    ТабличныйДокумент.ПолеСправа = 0;
    ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_М15";

    СисИнфо = Новый СистемнаяИнформация;
    Если ПустаяСтрока(СисИнфо.ИнформацияПрограммыПросмотра) Тогда
    ТабличныйДокумент.ПолеСлева = 0;
    Иначе
    ТабличныйДокумент.ПолеСлева = 10;
    КонецЕсли;

    Макет = ЭтотОбъект.ПолучитьМакет("ПФ_MXL_М15");

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

    ВыборкаШапки = Запрос.Выполнить().Выбрать();

    ПервыйДокумент = Истина;

    ОписаниеТиповЧисло15_2 = ОбщегоНазначения.ОписаниеТипаЧисло(15, 2);
    ОписаниеТиповЧисло15_3 = ОбщегоНазначения.ОписаниеТипаЧисло(15, 3);

    ВыборкаСтрок = Новый ТаблицаЗначений;

    ВыборкаСтрок.Колонки.Добавить("Номенклатура");
    ВыборкаСтрок.Колонки.Добавить("ТоварНаименование");
    ВыборкаСтрок.Колонки.Добавить("НоменклатурныйНомер");
    ВыборкаСтрок.Колонки.Добавить("СчетУчетаКод");
    ВыборкаСтрок.Колонки.Добавить("ПереданныеСчетУчетаКод");
    ВыборкаСтрок.Колонки.Добавить("СчетРасходовКод");
    ВыборкаСтрок.Колонки.Добавить("Количество", ОписаниеТиповЧисло15_3);
    ВыборкаСтрок.Колонки.Добавить("ЕдиницаИзмеренияНаименование");
    ВыборкаСтрок.Колонки.Добавить("ЕдиницаИзмеренияКод");
    ВыборкаСтрок.Колонки.Добавить("Цена");
    ВыборкаСтрок.Колонки.Добавить("СуммаВключаетНДС");
    ВыборкаСтрок.Колонки.Добавить("Сумма", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаВВалютеДокумента", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаНДСВВалютеДокумента", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СтавкаНДС");
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДСВВалютеДокумента",ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("КоррСчет");
    ВыборкаСтрок.Колонки.Добавить("КоррКод");
    ВыборкаСтрок.Колонки.Добавить("СуммаСНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ID");
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаРублевая", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ЭтоКомиссия", Новый ОписаниеТипов("Булево"));
    ВыборкаСтрок.Колонки.Добавить("ВсегоРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("НДСРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДСРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ВсегоНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ВсегоСуммаСНДС", ОписаниеТиповЧисло15_2);

    Пока ВыборкаШапки.СледующийПоЗначениюПоля("Ссылка") Цикл

    Если НЕ ПервыйДокумент Тогда
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ПервыйДокумент = Ложь;
    // Запомним номер строки, с которой начали выводить текущий документ.
    НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;

    ВыборкаСтрок = ПодготовитьТаблицуДокументаДляПечати(ВыборкаШапки, ВыборкаСтрок, Истина, Ложь);

    // Получаем области макета для вывода в табличный документ
    Шапка = Макет.ПолучитьОбласть("Шапка");
    ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаблицы");
    СтрокаТаблицы = Макет.ПолучитьОбласть("Строка");
    Подвал = Макет.ПолучитьОбласть("Подвал");
    СуммаТаблицы = Макет.ПолучитьОбласть("СуммаТабл");
    // Выведем шапку документа
    Шапка.Параметры.Заполнить(ВыборкаШапки);

    СведенияОбОрганизации = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(ВыборкаШапки.ЮрФизЛицо, ВыборкаШапки.ДатаСоставления, ВыборкаШапки.БанковскийСчет);
    СведенияОКонтрагенте = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(ВыборкаШапки.Контрагент, ВыборкаШапки.ДатаСоставления);

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

    ТабличныйДокумент.Вывести(Шапка);

    СуммаРублевая = 0;
    ВсегоСуммаСНДС = 0;

    Для каждого СтрокаВыборки Из ВыборкаСтрок Цикл

    СуммаНДС = ?(ЗначениеЗаполнено(СтрокаВыборки.СуммаНДС), СтрокаВыборки.СуммаНДС, 0);
    Количество = ?(ЗначениеЗаполнено(СтрокаВыборки.Количество), СтрокаВыборки.Количество, 0);
    СуммаСНДС = (?(ЗначениеЗаполнено(СтрокаВыборки.Сумма), СтрокаВыборки.Сумма, 0) + ?(ВыборкаШапки.СуммаВключаетНДС, 0, ?(ЗначениеЗаполнено(СтрокаВыборки.СуммаНДС), СтрокаВыборки.СуммаНДС, 0)));
    СуммаБезНДС = СуммаСНДС - СуммаНДС;
    // СуммаБезНДС = СуммаСНДС - СуммаНДС;
    СуммаРублевая = СуммаРублевая + СуммаНДС;
    ВсегоСуммаСНДС = ВсегоСуммаСНДС + СуммаСНДС;

    СтрокаВыборки.КоррСчет = ?((ВыборкаШапки.ДоговорВид = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером ИЛИ ВыборкаШапки.ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ОтгрузкаБезПереходаПраваСобственности), СтрокаВыборки.ПереданныеСчетУчетаКод, СтрокаВыборки.СчетРасходовКод);
    СтрокаВыборки.КоррКод = СтрокаВыборки.НоменклатурныйНомер;
    СтрокаВыборки.ТоварНаименование = СокрЛП(СтрокаВыборки.ТоварНаименование);
    СтрокаВыборки.СуммаСНДС = СуммаСНДС;
    СтрокаВыборки.СуммаБезНДС = СуммаБезНДС;
    СтрокаВыборки.Цена = СуммаБезНДС / ?(Количество = 0, 1, Количество);

    КонецЦикла;

    //конец заполнения суммы
    // Заполним подвал документа

    Подвал.Параметры.Заполнить(ВыборкаШапки);

    ПодразделениеОтветственныхЛиц = ВыборкаШапки.ПодразделениеОрганизации;

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

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

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

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

    ИтогНДС = ВыборкаСтрок.Итог("СуммаНДС");

    // Подвал.Параметры.КоличествоПорядковыхНомеровЗаписейПрописью = ЧислоПрописью(ВыборкаСтрок.Количество(), ,",,,с,,,,,0");
    Подвал.Параметры.СуммаПрописью = ОбщегоНазначенияБПВызовСервера.СформироватьСуммуПрописью(ВыборкаСтрок.Итог("СуммаСНДС"), ВалютаРегламентированногоУчета);
    Подвал.Параметры.ИтогНДС = ?(ЗначениеЗаполнено(ИтогНДС), Формат(Цел(ИтогНДС), "ЧДЦ=0") + " руб. " + Формат((ИтогНДС - Цел(ИтогНДС)) * 100, "ЧЦ=2; ЧВН=") + " коп. ", "______ руб. ______ коп.");
    Подвал.Параметры.Контрагент = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОКонтрагенте, "НаименованиеДляПечатныхФорм,");
    // Подвал.Параметры.Организация = Справочники.Организации.НайтиПоКоду("000000001");

    // Инициализируем счетчик страниц
    НомерСтраницы = 1;

    // Выведем заголовок табличной части
    ТабличныйДокумент.Вывести(ЗаголовокТаблицы);

    // Выведем выборку строк
    Для каждого СтрокаВыборки Из ВыборкаСтрок Цикл

    СтрокаТаблицы.Параметры.Заполнить(СтрокаВыборки);

    СтрокаСПодвалом = Новый Массив;
    СтрокаСПодвалом.Добавить(СтрокаТаблицы);
    //СтрокаСПодвалом.Добавить(ПодвалТаблицы);

    // Если обрабатываемая строка - последняя, будем проверять, помещается ли подвал документа
    Если ВыборкаСтрок.Индекс(СтрокаВыборки) = ВыборкаСтрок.Количество() - 1 Тогда
    СтрокаСПодвалом.Добавить(Подвал);
    КонецЕсли;

    Если НЕ ОбщегоНазначенияБПВызовСервера.ПроверитьВыводТабличногоДокумента(ТабличныйДокумент, СтрокаСПодвалом) Тогда
    //ТабличныйДокумент.Вывести(ПодвалТаблицы);
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    НомерСтраницы = НомерСтраницы + 1;
    ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы;
    ТабличныйДокумент.Вывести(ЗаголовокТаблицы);
    КонецЕсли;

    ТабличныйДокумент.Вывести(СтрокаТаблицы);

    КонецЦикла;

    //Заполним Сумму Таблицы
    СуммаТаблицы.Параметры.Заполнить(ВыборкаШапки);

    СуммаТаблицы.Параметры.ВсегоНДСп = Формат(СуммаРублевая, "ЧДЦ=2");
    СуммаТаблицы.Параметры.ВсегоСНДСп = Формат(ВсегоСуммаСНДС, "ЧДЦ=2");
    ТабличныйДокумент.Вывести(СуммаТаблицы);

    // Выведем все подвалы

    ТабличныйДокумент.Вывести(Подвал);

    // В табличном документе зададим имя области, в которую был
    // выведен объект. Нужно для возможности печати покомплектно.
    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент,
    НомерСтрокиНачало, ОбъектыПечати, ВыборкаШапки.Ссылка);

    КонецЦикла;

    Возврат ТабличныйДокумент;

    КонецФункции
```
---
Пробуй! Жду)

```1c
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ РЕГИСТРАЦИИ ОБРАБОТКИ
    Функция СведенияОВнешнейОбработке() Экспорт

    ПараметрыРегистрации = Новый Структура;
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); // ДополнительнаяОбработка, ДополнительныйОтчет, ЗаполнениеОбъекта, Отчет, ПечатнаяФорма, СозданиеСвязанныхОбъектов
    ПараметрыРегистрации.Вставить("Назначение", ПолучитьНазначениеОбработки());
    ПараметрыРегистрации.Вставить("Наименование", "***МАВ печать спецификации");
    ПараметрыРегистрации.Вставить("Версия", "1.0");
    ПараметрыРегистрации.Вставить("Информация", "Печать спецификации(внешняя печатная форма)");
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
    ПараметрыРегистрации.Вставить("ВерсияБСП", "2.2.2.25"); // Версия проверяется !!!

    Команды = ПолучитьТаблицуКоманд();

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

    Возврат ПараметрыРегистрации;

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

    Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = ")

    НоваяКоманда = ТаблицаКоманд.Добавить();

    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;

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

    Функция ПолучитьНазначениеОбработки()

    Массив = Новый Массив;
    Массив.Добавить("Документ.РеализацияТоваровУслуг");

    Возврат Массив;

    КонецФункции // ПолучитьНазначениеОбработки()

    Функция ПолучитьТаблицуКоманд()

    Команды = Новый ТаблицаЗначений;

    //Представление команды в пользовательском интерфейсе
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));

    //Уникальный идентификатор команды или имя макета печати
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));

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

    //Показывать оповещение.
    //Если Истина, требуется показать оповещение при начале и при завершении работы обработки.
    //Имеет смысл только при запуске обработки без открытия формы
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));

    //Дополнительный модификатор команды.
    //Используется для дополнительных обработок печатных форм на основе табличных макетов.
    //Для таких команд должен содержать строку ПечатьMXL
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));

    Возврат Команды;

    КонецФункции // ПолучитьТаблицуКоманд()

    // Процедура печати
    Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПечатьНакладной") Тогда
    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм
    , "ПечатьНакладной"
    , "М-15 (Накладная)"
    , ПечатьМ15(МассивОбъектов, ОбъектыПечати)
    ,
    ,"ПФ_MXL_М15");
    //
    КонецЕсли;

    ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов,
    КоллекцияПечатныхФорм,
    ОбъектыПечати,
    ПараметрыВывода);
    //

    КонецПроцедуры
    ////////////////////////////////////////////////////////////­/////////////////////////////////////////////////////
    // ПРОЦЕДУРЫ, ФУНКЦИИ обработки

    Функция ПолучитьТекстЗапросаДляФормированияПечатнойФормыМ15()

    ТекстЗапроса =
    "ВЫБРАТЬ
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор КАК Регистратор,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента КАК НомерСтрокиДокумента,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента КАК ТабличнаяЧастьДокумента,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС,
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС
    |ПОМЕСТИТЬ РегистрСведенийРублевыеСуммыДокументовВВалюте
    |ИЗ
    | РегистрСведений.РублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    |ГДЕ
    | РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор В(&МассивОбъектов)
    |
    |ИНДЕКСИРОВАТЬ ПО
    | Регистратор,
    | НомерСтрокиДокумента,
    | ТабличнаяЧастьДокумента
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер КАК Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка КАК Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата КАК ДатаСоставления,
    | ДокументРеализацияТоваровУслуг.Дата КАК ДатаДокумента,
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7) КАК СрокПоставки,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация КАК ЮрФизЛицо,
    | ДокументРеализацияТоваровУслуг.Организация КАК Руководители,
    | ДокументРеализацияТоваровУслуг.Склад КАК Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование КАК СкладНаименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код КАК КонтрагентКод,
    | ДокументРеализацияТоваровУслуг.Контрагент КАК Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов КАК Курс,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК Кратность,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование КАК ДоговорНаименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора КАК ДоговорВид,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах КАК РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации КАК БанковскийСчет,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное КАК ТоварНаименование,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ КАК НоменклатурныйНомер,
    | РеализацияТоваровУслуг.СчетУчета.Код КАК СчетУчетаКод,
    | РеализацияТоваровУслуг.ПереданныеСчетУчета.Код КАК ПереданныеСчетУчетаКод,
    | РеализацияТоваровУслуг.СчетРасходов.Код КАК СчетРасходовКод,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмеренияНаименование,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код КАК ЕдиницаИзмеренияКод,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК Цена,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК Сумма,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ КАК СуммаНДС,
    | РеализацияТоваровУслуг.Сумма КАК СуммаВВалютеДокумента,
    | РеализацияТоваровУслуг.СуммаНДС КАК СуммаНДСВВалютеДокумента,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 1 КАК ID,
    | РеализацияТоваровУслуг.НомерСтроки КАК НомерСтроки,
    | РеализацияТоваровУслуг.СчетДоходов,
    | ЕСТЬNULL(РеализацияТоваровУслуг.СчетУчета.Забалансовый, ЛОЖЬ) КАК ЭтоКомиссия,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0) КАК ВсегоРуб,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0) КАК НДСРуб,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0) КАК СуммаБезНДСРуб
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.Товары))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7),
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код,
    | ДокументРеализацияТоваровУслуг.Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ,
    | NULL,
    | NULL,
    | РеализацияТоваровУслуг.СчетРасходов.Код,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | РеализацияТоваровУслуг.Сумма,
    | РеализацияТоваровУслуг.СуммаНДС,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 3,
    | РеализацияТоваровУслуг.НомерСтроки,
    | РеализацияТоваровУслуг.СчетДоходов,
    | ЛОЖЬ,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0)
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.Услуги))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДокументРеализацияТоваровУслуг.Номер,
    | ДокументРеализацияТоваровУслуг.Ссылка,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДокументРеализацияТоваровУслуг.Дата,
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7),
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Организация,
    | ДокументРеализацияТоваровУслуг.Склад,
    | ДокументРеализацияТоваровУслуг.Склад.Наименование,
    | ДокументРеализацияТоваровУслуг.Контрагент.Код,
    | ДокументРеализацияТоваровУслуг.Контрагент,
    | ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов,
    | ДокументРеализацияТоваровУслуг.ВалютаДокумента,
    | ДокументРеализацияТоваровУслуг.ВидОперации,
    | ДокументРеализацияТоваровУслуг.Проведен,
    | ДокументРеализацияТоваровУслуг.СуммаВключаетНДС,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.Наименование,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.ВидДоговора,
    | ДокументРеализацияТоваровУслуг.ДоговорКонтрагента.РасчетыВУсловныхЕдиницах,
    | ДокументРеализацияТоваровУслуг.ПодразделениеОрганизации,
    | ДокументРеализацияТоваровУслуг.БанковскийСчетОрганизации,
    | ДокументРеализацияТоваровУслуг.СчетУчетаРасчетовСКонтрагентом,
    | РеализацияТоваровУслуг.Номенклатура,
    | РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное,
    | ВЫБОР
    | КОГДА &ДополнительнаяКолонкаПечатныхФормДокументов = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул)
    | ТОГДА РеализацияТоваровУслуг.Номенклатура.Артикул
    | ИНАЧЕ РеализацияТоваровУслуг.Номенклатура.Код
    | КОНЕЦ,
    | NULL,
    | NULL,
    | NULL,
    | РеализацияТоваровУслуг.Количество,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения,
    | РеализацияТоваровУслуг.Номенклатура.ЕдиницаИзмерения.Код,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Цена
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Цена * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.Сумма
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сумма * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | ВЫБОР
    | КОГДА ДокументРеализацияТоваровУслуг.ВалютаДокумента = &ВалютаРегламентированногоУчета
    | ТОГДА РеализацияТоваровУслуг.СуммаНДС
    | КОГДА ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов = 0
    | ТОГДА 0
    | ИНАЧЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.СуммаНДС * ДокументРеализацияТоваровУслуг.КурсВзаиморасчетов / ДокументРеализацияТоваровУслуг.КратностьВзаиморасчетов КАК ЧИСЛО(15, 2))
    | КОНЕЦ,
    | РеализацияТоваровУслуг.Сумма,
    | РеализацияТоваровУслуг.СуммаНДС,
    | РеализацияТоваровУслуг.СтавкаНДС,
    | 4,
    | РеализацияТоваровУслуг.НомерСтроки,
    | NULL,
    | ИСТИНА,
    | РеализацияТоваровУслуг.Ссылка.Ответственный,
    | ДокументРеализацияТоваровУслуг.Руководитель,
    | ДокументРеализацияТоваровУслуг.ЗаРуководителяНаОсновании,
    | ДокументРеализацияТоваровУслуг.ГлавныйБухгалтер,
    | ДокументРеализацияТоваровУслуг.ЗаГлавногоБухгалтераНаОсновании,
    | ДокументРеализацияТоваровУслуг.ОтпускПроизвел,
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.Всего, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НДС, 0),
    | ЕСТЬNULL(РегистрСведенийРублевыеСуммыДокументовВВалюте.НалоговаяБазаНДС, 0)
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК ДокументРеализацияТоваровУслуг
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.АгентскиеУслуги КАК РеализацияТоваровУслуг
    | ПО (РеализацияТоваровУслуг.Ссылка = ДокументРеализацияТоваровУслуг.Ссылка)
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведенийРублевыеСуммыДокументовВВалюте КАК РегистрСведенийРублевыеСуммыДокументовВВалюте
    | ПО (РеализацияТоваровУслуг.Ссылка = РегистрСведенийРублевыеСуммыДокументовВВалюте.Регистратор)
    | И (РеализацияТоваровУслуг.НомерСтроки = РегистрСведенийРублевыеСуммыДокументовВВалюте.НомерСтрокиДокумента)
    | И (РегистрСведенийРублевыеСуммыДокументовВВалюте.ТабличнаяЧастьДокумента = ЗНАЧЕНИЕ(Перечисление.ТабличныеЧастиДокументов.АгентскиеУслуги))
    | И (ДокументРеализацияТоваровУслуг.ВалютаДокумента <> &ВалютаРегламентированногоУчета)
    |ГДЕ
    | ДокументРеализацияТоваровУслуг.Ссылка В(&МассивОбъектов)
    |
    |УПОРЯДОЧИТЬ ПО
    | ДатаДокумента,
    | Ссылка,
    | ID,
    | НомерСтроки";

    Возврат ТекстЗапроса;

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

    Функция ПодготовитьТаблицуДокументаДляПечати(ВыборкаСтрок, ТаблицаПоТоварам, ПечататьТовары, ПечататьУслуги)

    ТаблицаПоТоварам.Очистить();

    ВалютаРегламентированногоУчета = ОбщегоНазначенияБПВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета();
    МассивРаспределения = Новый Массив;

    СуммаВзаиморасчетов = 0;
    СуммаВзаиморасчетовНДС = 0;
    ПерваяСтрокаДокумента = Истина;
    СуммаВключаетНДС = Неопределено;
    РасчетыВУсловныхЕдиницах= Неопределено;
    ДатаДокумента = Неопределено;

    Пока ВыборкаСтрок.Следующий() Цикл

    СтрокаТаблицы = ТаблицаПоТоварам.Добавить();
    ЗаполнитьЗначенияСвойств(СтрокаТаблицы, ВыборкаСтрок);
    // СрокПоставки = ВыборкаСтрок.СрокПоставки + 7 * 86400;
    //
    //Сообщить(СрокПоставки);

    Если ПерваяСтрокаДокумента Тогда

    СуммаВключаетНДС = ВыборкаСтрок.СуммаВключаетНДС;
    РасчетыВУсловныхЕдиницах = ВыборкаСтрок.РасчетыВУсловныхЕдиницах;
    ДатаДокумента = ВыборкаСтрок.ДатаДокумента;

    НуженПересчетВРубли = Ложь;

    Если ВыборкаСтрок.Проведен
    И (ВыборкаСтрок.РасчетыВУсловныхЕдиницах
    ИЛИ (ВыборкаСтрок.ВалютаДокумента <> ВалютаРегламентированногоУчета И ВыборкаСтрок.ДатаДокумента >= '20090101000000')) Тогда
    НуженПересчетВРубли = Истина;
    КонецЕсли;

    ПерваяСтрокаДокумента = Ложь;

    КонецЕсли;

    Если НуженПересчетВРубли Тогда

    Если СтрокаТаблицы.ВсегоРуб = 0 Тогда

    СтрокаТаблицы.Сумма = СтрокаТаблицы.Сумма;
    СтрокаТаблицы.СуммаНДС = СтрокаТаблицы.СуммаНДС;

    Иначе

    СтрокаТаблицы.Сумма = СтрокаТаблицы.ВсегоРуб - ?(СуммаВключаетНДС, 0, СтрокаТаблицы.НДСРуб);
    СтрокаТаблицы.СуммаНДС = СтрокаТаблицы.НДСРуб;

    КонецЕсли;

    СтрокаТаблицы.СуммаБезНДС = СтрокаТаблицы.Сумма - СтрокаТаблицы.СуммаНДС;

    СтрокаТаблицы.ВсегоНДС = СтрокаТаблицы.ВсегоНДС + СтрокаТаблицы.СуммаНДС;

    СтрокаТаблицы.Цена = ?(СтрокаТаблицы.Количество = 0, 0, Окр(СтрокаТаблицы.Сумма/СтрокаТаблицы.Количество,2));

    КонецЕсли;

    КонецЦикла;

    Если НЕ ПечататьТовары ИЛИ НЕ ПечататьУслуги Тогда
    // Исключим строки из табличный частей, которые не удовлетворяют условиям печати. При выборке запросом их необходимо получать,
    // чтобы распределять сумма взаиморасчетов в рублях на все строки документа.
    Инд = ТаблицаПоТоварам.Количество() - 1;
    Пока Инд >= 0 Цикл
    СтрокаТовар = ТаблицаПоТоварам[Инд];

    Если СтрокаТовар.ID = 1 ИЛИ СтрокаТовар.ID = 2 Тогда // Товары или ВозвратнаяТара
    Если НЕ ПечататьТовары Тогда
    ТаблицаПоТоварам.Удалить(Инд);
    КонецЕсли;
    ИначеЕсли СтрокаТовар.ID = 3 ИЛИ СтрокаТовар.ID = 4 Тогда // Услуги или АгентскиеУслуги
    Если НЕ ПечататьУслуги Тогда
    ТаблицаПоТоварам.Удалить(Инд);
    КонецЕсли;
    КонецЕсли;

    Инд = Инд - 1;
    КонецЦикла;
    КонецЕсли;

    Возврат ТаблицаПоТоварам;

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

    Функция ПечатьМ15(МассивОбъектов, ОбъектыПечати)

    Перем ПодразделениеОтветственныхЛиц;

    УстановитьПривилегированныйРежим(Истина);

    ВалютаРегламентированногоУчета = ОбщегоНазначенияБПВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета();

    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.АвтоМасштаб = Истина;
    ТабличныйДокумент.ПолеСверху = 10;
    ТабличныйДокумент.ПолеСнизу = 10;
    ТабличныйДокумент.ПолеСправа = 0;
    ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_М15";

    СисИнфо = Новый СистемнаяИнформация;
    Если ПустаяСтрока(СисИнфо.ИнформацияПрограммыПросмотра) Тогда
    ТабличныйДокумент.ПолеСлева = 0;
    Иначе
    ТабличныйДокумент.ПолеСлева = 10;
    КонецЕсли;

    Макет = ЭтотОбъект.ПолучитьМакет("ПФ_MXL_М15");

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

    ВыборкаШапки = Запрос.Выполнить().Выбрать();

    ПервыйДокумент = Истина;

    ОписаниеТиповЧисло15_2 = ОбщегоНазначения.ОписаниеТипаЧисло(15, 2);
    ОписаниеТиповЧисло15_3 = ОбщегоНазначения.ОписаниеТипаЧисло(15, 3);

    ВыборкаСтрок = Новый ТаблицаЗначений;

    ВыборкаСтрок.Колонки.Добавить("Номенклатура");
    ВыборкаСтрок.Колонки.Добавить("ТоварНаименование");
    ВыборкаСтрок.Колонки.Добавить("НоменклатурныйНомер");
    ВыборкаСтрок.Колонки.Добавить("СчетУчетаКод");
    ВыборкаСтрок.Колонки.Добавить("ПереданныеСчетУчетаКод");
    ВыборкаСтрок.Колонки.Добавить("СчетРасходовКод");
    ВыборкаСтрок.Колонки.Добавить("Количество", ОписаниеТиповЧисло15_3);
    ВыборкаСтрок.Колонки.Добавить("ЕдиницаИзмеренияНаименование");
    ВыборкаСтрок.Колонки.Добавить("ЕдиницаИзмеренияКод");
    ВыборкаСтрок.Колонки.Добавить("Цена");
    ВыборкаСтрок.Колонки.Добавить("СуммаВключаетНДС");
    ВыборкаСтрок.Колонки.Добавить("Сумма", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаВВалютеДокумента", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаНДСВВалютеДокумента", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СтавкаНДС");
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДСВВалютеДокумента",ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("КоррСчет");
    ВыборкаСтрок.Колонки.Добавить("КоррКод");
    ВыборкаСтрок.Колонки.Добавить("СуммаСНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ID");
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаРублевая", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ЭтоКомиссия", Новый ОписаниеТипов("Булево"));
    ВыборкаСтрок.Колонки.Добавить("ВсегоРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("НДСРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("СуммаБезНДСРуб", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ВсегоНДС", ОписаниеТиповЧисло15_2);
    ВыборкаСтрок.Колонки.Добавить("ВсегоСуммаСНДС", ОписаниеТиповЧисло15_2);

    Пока ВыборкаШапки.СледующийПоЗначениюПоля("Ссылка") Цикл

    Если НЕ ПервыйДокумент Тогда
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ПервыйДокумент = Ложь;
    // Запомним номер строки, с которой начали выводить текущий документ.
    НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;

    ВыборкаСтрок = ПодготовитьТаблицуДокументаДляПечати(ВыборкаШапки, ВыборкаСтрок, Истина, Ложь);

    // Получаем области макета для вывода в табличный документ
    Шапка = Макет.ПолучитьОбласть("Шапка");
    ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаблицы");
    СтрокаТаблицы = Макет.ПолучитьОбласть("Строка");
    Подвал = Макет.ПолучитьОбласть("Подвал");
    СуммаТаблицы = Макет.ПолучитьОбласть("СуммаТабл");
    // Выведем шапку документа
    Шапка.Параметры.Заполнить(ВыборкаШапки);

    СведенияОбОрганизации = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(ВыборкаШапки.ЮрФизЛицо, ВыборкаШапки.ДатаСоставления, ВыборкаШапки.БанковскийСчет);
    СведенияОКонтрагенте = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(ВыборкаШапки.Контрагент, ВыборкаШапки.ДатаСоставления);

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

    ТабличныйДокумент.Вывести(Шапка);

    СуммаРублевая = 0;
    ВсегоСуммаСНДС = 0;

    Для каждого СтрокаВыборки Из ВыборкаСтрок Цикл

    СуммаНДС = ?(ЗначениеЗаполнено(СтрокаВыборки.СуммаНДС), СтрокаВыборки.СуммаНДС, 0);
    Количество = ?(ЗначениеЗаполнено(СтрокаВыборки.Количество), СтрокаВыборки.Количество, 0);
    СуммаСНДС = (?(ЗначениеЗаполнено(СтрокаВыборки.Сумма), СтрокаВыборки.Сумма, 0) + ?(ВыборкаШапки.СуммаВключаетНДС, 0, ?(ЗначениеЗаполнено(СтрокаВыборки.СуммаНДС), СтрокаВыборки.СуммаНДС, 0)));
    СуммаБезНДС = СуммаСНДС - СуммаНДС;
    // СуммаБезНДС = СуммаСНДС - СуммаНДС;
    СуммаРублевая = СуммаРублевая + СуммаНДС;
    ВсегоСуммаСНДС = ВсегоСуммаСНДС + СуммаСНДС;

    СтрокаВыборки.КоррСчет = ?((ВыборкаШапки.ДоговорВид = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером ИЛИ ВыборкаШапки.ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ОтгрузкаБезПереходаПраваСобственности), СтрокаВыборки.ПереданныеСчетУчетаКод, СтрокаВыборки.СчетРасходовКод);
    СтрокаВыборки.КоррКод = СтрокаВыборки.НоменклатурныйНомер;
    СтрокаВыборки.ТоварНаименование = СокрЛП(СтрокаВыборки.ТоварНаименование);
    СтрокаВыборки.СуммаСНДС = СуммаСНДС;
    СтрокаВыборки.СуммаБезНДС = СуммаБезНДС;
    СтрокаВыборки.Цена = СуммаБезНДС / ?(Количество = 0, 1, Количество);

    КонецЦикла;

    //конец заполнения суммы
    // Заполним подвал документа

    Подвал.Параметры.Заполнить(ВыборкаШапки);

    ПодразделениеОтветственныхЛиц = ВыборкаШапки.ПодразделениеОрганизации;

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

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

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

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

    ИтогНДС = ВыборкаСтрок.Итог("СуммаНДС");

    // Подвал.Параметры.КоличествоПорядковыхНомеровЗаписейПрописью = ЧислоПрописью(ВыборкаСтрок.Количество(), ,",,,с,,,,,0");
    Подвал.Параметры.СуммаПрописью = ОбщегоНазначенияБПВызовСервера.СформироватьСуммуПрописью(ВыборкаСтрок.Итог("СуммаСНДС"), ВалютаРегламентированногоУчета);
    Подвал.Параметры.ИтогНДС = ?(ЗначениеЗаполнено(ИтогНДС), Формат(Цел(ИтогНДС), "ЧДЦ=0") + " руб. " + Формат((ИтогНДС - Цел(ИтогНДС)) * 100, "ЧЦ=2; ЧВН=") + " коп. ", "______ руб. ______ коп.");
    Подвал.Параметры.Контрагент = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОКонтрагенте, "НаименованиеДляПечатныхФорм,");
    // Подвал.Параметры.Организация = Справочники.Организации.НайтиПоКоду("000000001");

    // Инициализируем счетчик страниц
    НомерСтраницы = 1;

    // Выведем заголовок табличной части
    ТабличныйДокумент.Вывести(ЗаголовокТаблицы);

    // Выведем выборку строк
    Для каждого СтрокаВыборки Из ВыборкаСтрок Цикл

    СтрокаТаблицы.Параметры.Заполнить(СтрокаВыборки);

    СтрокаСПодвалом = Новый Массив;
    СтрокаСПодвалом.Добавить(СтрокаТаблицы);
    //СтрокаСПодвалом.Добавить(ПодвалТаблицы);

    // Если обрабатываемая строка - последняя, будем проверять, помещается ли подвал документа
    Если ВыборкаСтрок.Индекс(СтрокаВыборки) = ВыборкаСтрок.Количество() - 1 Тогда
    СтрокаСПодвалом.Добавить(Подвал);
    КонецЕсли;

    Если НЕ ОбщегоНазначенияБПВызовСервера.ПроверитьВыводТабличногоДокумента(ТабличныйДокумент, СтрокаСПодвалом) Тогда
    //ТабличныйДокумент.Вывести(ПодвалТаблицы);
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    НомерСтраницы = НомерСтраницы + 1;
    ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы;
    ТабличныйДокумент.Вывести(ЗаголовокТаблицы);
    КонецЕсли;

    ТабличныйДокумент.Вывести(СтрокаТаблицы);

    КонецЦикла;

    //Заполним Сумму Таблицы
    СуммаТаблицы.Параметры.Заполнить(ВыборкаШапки);

    СуммаТаблицы.Параметры.ВсегоНДСп = Формат(СуммаРублевая, "ЧДЦ=2");
    СуммаТаблицы.Параметры.ВсегоСНДСп = Формат(ВсегоСуммаСНДС, "ЧДЦ=2");
    ТабличныйДокумент.Вывести(СуммаТаблицы);

    // Выведем все подвалы

    ТабличныйДокумент.Вывести(Подвал);

    // В табличном документе зададим имя области, в которую был
    // выведен объект. Нужно для возможности печати покомплектно.
    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент,
    НомерСтрокиНачало, ОбъектыПечати, ВыборкаШапки.Ссылка);

    КонецЦикла;

    Возврат ТабличныйДокумент;

    КонецФункции
```
---
работает) спасибо)
---
В запросе ДОБАВИТЬКДАТЕ(Дата, ДЕНЬ, 7)
В коде Дата + 7 * 86400
---
сделал так:

```1c
    | ДОБАВИТЬКДАТЕ(ДокументРеализацияТоваровУслуг.Дата, ДЕНЬ, 7) КАК СрокПоставки,
    ...
    СрокПоставки = ВыборкаСтрок.СрокПоставки + 7 * 86400;
    ...
```

всё равно выводит исходную дату
---
видимо вы не в той части кода смотрите, или переменная заменяется дальше где-то на другое значение, или отладчик еще не дошел до кода во втором посте
---
```1c
    СрокПоставки = Дата(ВыборкаСтрок.СрокПоставки) + 7 * 60*60*24;
```