Уважаемые программисты, чувствую, что решение не сложное, но не могу сообразить.
Ситуация следующая:
Номенклатура, поле ввода для НДС, в Перечислениях создал СтавкиНДС с значениями НДС_0, НДС_8 и НДС_20
В Номенклатуре выставляю товару значение НДС_20
При выводе на печать выходит: Преобразование значения к типу Число не может быть выполнено и отсылает в конфигуратор:

```1c
    ОбластьСтрока.Параметры.Количество = Количество;
    ВсегоСНДС = ВсегоСНДС + Сумма;
    СтавкаНДС = ?(ЗначениеЗаполненоНоменклатура И ЗначениеЗаполнено(Номенклатура.СтавкаНДС), Номенклатура.СтавкаНДС, СтавкаНДСОрганизации);
    СуммаБезНДС = Сумма - Сумма * (СтавкаНДС / 100);
    СуммаНДС = Сумма - СуммаБезНДС;
    Всего = Всего + Сумма;
    СуммаВсегоНДС = СуммаВсегоНДС + СуммаНДС;
    ИтогоСуммаБезНДС = ИтогоСуммаБезНДС + СуммаБезНДС;
    ОбластьСтрока.Параметры.Цена = СуммаБезНДС / Количество;
    ОбластьСтрока.Параметры.СуммаБезНДС = СуммаБезНДС;
    ОбластьСтрока.Параметры.СтавкаНДС = СтавкаНДС;
    ОбластьСтрока.Параметры.СуммаНДС = СуммаНДС;
    ОбластьСтрока.Параметры.СуммаСНДС = Сумма;
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьСтрока);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьСтрока);
    КонецЦикла;
```

Понимаю, что где-то нужно дать понять, что когда выбираю НДС_20, то программа должна понимать это не как строку а как число 20. Но что и куда это написать - не соображу...
Помогите, кто чем может. ;)
---
Где нибудь выше пишешь примерно такое

```1c
    СтавкаНДСЧислом = 0
    Если Номенклатура.СтавкаНДС = Перечисления.СтавкаНДС.НДС_20 Тогда
    СтавкаНДСЧислом = 20;
    КонецЕсли;
```

В формуле использовать надо соответственно СтавкаНДСЧислом .
---
Или вот в одной из старых конфигураций нашёл готовую функцию

```1c
    Функция ПреобразоватьВЧисло(Стр)
    Если ТипЗнч(Стр) = Тип("Строка") Тогда
    Если Стр = " Тогда
    Возврат 0;
    Иначе
    Возврат Число(Стр);
    КонецЕсли;
    ИначеЕсли ТипЗнч(Стр) = Тип("ПеречислениеСсылка.СтавкиНДС") Тогда
    Если Стр = Перечисления.СтавкиНДС.БезНДС Тогда
    Возврат 0;
    ИначеЕсли Стр = Перечисления.СтавкиНДС.НДС0 Тогда
    Возврат 0;
    ИначеЕсли Стр = Перечисления.СтавкиНДС.НДС10 Тогда
    Возврат 10;
    ИначеЕсли Стр = Перечисления.СтавкиНДС.НДС18 Тогда
    Возврат 18;
    ИначеЕсли Стр = Перечисления.СтавкиНДС.НДС20 Тогда
    Возврат 20;
    КонецЕсли;
    Иначе
    Возврат Число(Стр);
    КонецЕсли;
    КонецФункции
```
---
Где нибудь выше пишешь примерно такое

```1c
    СтавкаНДСЧислом = 0
    Если Номенклатура.СтавкаНДС = Перечисления.СтавкаНДС.НДС_20 Тогда
    СтавкаНДСЧислом = 20;
    КонецЕсли;
```

В формуле использовать надо соответственно СтавкаНДСЧислом .
---
Что-то не получается...
Может я где-то что-то пропустил?...
---
Что не получается? Я так то ваш код отсюда не вижу...
---
```1c
    Процедура Печать(ТабДокРезультат,
    Знач Ссылка,
    Знач ЭтоПечатьСчета = ЛОЖЬ,
    Знач НоСчетЕсть = ЛОЖЬ,
    Знач ЭтоВыполнениеРабот = ЛОЖЬ,
    Знач ЭтоТорг12 = ЛОЖЬ,
    Знач ЭтоЗаказНаряд = ЛОЖЬ,
    Знач ЗаголовокРасходнойНакладной = Неопределено,
    Знач ДваЭкземпляра = ЛОЖЬ,
    Знач ВставлятьРазделительСтраниц = ЛОЖЬ,
    Знач ЭтоСчетФактура = ЛОЖЬ) Экспорт

    ВставлятьРазделительСтраницНаСтарте = ВставлятьРазделительСтраниц;

    Запрос = Новый Запрос;

    СписокЭлементовДляПечати = Новый СписокЗначений;

    Если НЕ ТипЗнч(Ссылка) = Тип("ДокументСсылка.РасходыТовара")
    И НЕ ТипЗнч(Ссылка) = Тип("ДокументСсылка.ВыполненияРабот") Тогда

    Для Каждого СсылкаНаДокумент Из Ссылка Цикл
    СписокЭлементовДляПечати.Добавить(СсылкаНаДокумент.Ссылка);
    КонецЦикла;
    Иначе
    СписокЭлементовДляПечати.Добавить(Ссылка);
    КонецЕсли;

    Для Каждого ЭлементСпискаДляПечати Из СписокЭлементовДляПечати Цикл

    Ссылка = ЭлементСпискаДляПечати.Значение;
    ДокументДляПечати = Новый ТабличныйДокумент;
    ДокументДляПечати.ИмяПараметровПечати = "РН" + СокрЛП(ИмяКомпьютера());
    ДокументДляПечати.КлючПараметровПечати = ДокументДляПечати.ИмяПараметровПечати;

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

    ЯзыкДокументов = ОбщееПовтИсп.ПолучитьТекущийЯзыкДокументов(КлиентПоставщик, , ЛОЖЬ);
    Запрос.Параметры.Вставить("Ссылка", Ссылка);

    Выборка = Запрос.Выполнить().Выбрать();
    ОсновнаяВалюта = ПредопределенноеЗначение("Справочник.Валюты.ОсновнаяВалюта");
    СуммаСкидки = 0;
    ЕстьСкидка = ЛОЖЬ;
    ВыводитьВРасходномДокументеЧислоМест = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ВыводитьВРасходномДокументеЧислоМест");
    НаименованиеЕдиницыМеста = СокрЛП(ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("НаименованиеЕдиницыМеста"));
    ИспользоватьРеквизитАртикулНоменклатуры = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ИспользоватьРеквизитАртикулНоменклатуры");
    ИспользоватьШтрихКоды = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ИспользоватьШтрихКоды");
    ПечататьАртикул = ИспользоватьРеквизитАртикулНоменклатуры И ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ВыводитьВРасходномДокументеАртикулВНаименованииЧерезЗапятую­");
    НеВыводитьНаПечатьДанныеОСкидкеПриПечатиРасходногоДокумента = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("НеВыводитьНаПечатьДанныеОСкидкеПриПечатиРасходногоДокумента­");
    ИспользоватьСкидки = ОбщееПовтИсп.ПолучитьПараметрСеанса("ИспользоватьСкидкиПС") И НЕ НеВыводитьНаПечатьДанныеОСкидкеПриПечатиРасходногоДокумента;

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

    ЭтоЗаказ = ЛОЖЬ;
    ЭтоОрдер = ЛОЖЬ;

    Пока Выборка.Следующий() Цикл
    ЭтоЗаказ = Выборка.ЭтоЗаказ;
    ЭтоОрдер = Выборка.ЭтоОрдер;
    Если ИспользоватьСкидки Тогда
    ВыборкаТовары = Выборка.Товары.Выбрать();

    Пока ВыборкаТовары.Следующий() Цикл
    Если НЕ ВыборкаТовары.СуммаБезСкидки = 0 Тогда
    Скидка = (ВыборкаТовары.Сумма - ВыборкаТовары.СуммаБезСкидки);
    Если НЕ ЕстьСкидка Тогда
    ЕстьСкидка = НЕ Скидка = 0;
    КонецЕсли;

    СуммаСкидки = СуммаСкидки + Скидка; // Не прерывать!
    КонецЕсли;
    КонецЦикла;
    Иначе
    Прервать;
    КонецЕсли;
    КонецЦикла;

    Выборка.Сбросить();
    ОбластьПечатиЭкземпляра = Новый ТабличныйДокумент;

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

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

    Пока Выборка.Следующий() Цикл
    Если ВставлятьРазделительСтраниц Тогда
    ОбластьПечатиЭкземпляра.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

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

    Если НЕ ЗначениеЗаполнено(КлиентПоставщик) Тогда
    КлиентПоставщик = ПредопределенноеЗначение("Справочник.Клиенты.ФизическоеЛицо");
    КонецЕсли;

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

    Если ПустаяСтрока(АдресДоставки) Тогда
    АдресДоставки = КлиентПоставщик.ЮридическийАдрес;
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;

    ВыборкаВидЦен = Выборка.ВидЦен;

    Если ЗначениеЗаполнено(ВыборкаВидЦен)
    И ЗначениеЗаполнено(ОбщееПовтИсп.ПолучитьЗначениеРеквизита(ВыборкаВидЦен, "ВалютаЦены")) Тогда

    ВалютаЦены = ОбщееПовтИсп.ПолучитьЗначениеРеквизита(ВыборкаВидЦен, "ВалютаЦены");
    Иначе
    ВалютаЦены = ПредопределенноеЗначение("Справочник.Валюты.ОсновнаяВалюта");
    КонецЕсли;

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

    Для Каждого Элемент Из СтруктураРесурсовДляИтогов Цикл
    ИтоговыеСуммы.Вставить("Итого" + Элемент.Ключ + "НаСтранице", 0);
    ИтоговыеСуммы.Вставить("Итого" + Элемент.Ключ, 0);
    КонецЦикла;

    МассивВыводимыхОбластей = Новый Массив;
    ОбластьМакета = Макет.ПолучитьОбласть("Строка");
    СтруктураПараметров = Новый Структура;

    Если Организация.ПравовойСтатус = Перечисления.ПравовойСтатус.ЮрЛицо
    ИЛИ Организация.ПравовойСтатус = Перечисления.ПравовойСтатус.ЮрЛицоНеРезидент Тогда

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

    ОбластьПодвала = Макет.ПолучитьОбласть("Подвал");
    ОбластьПодвала.Параметры.Заполнить(СтруктураПараметров);
    ОбластьИтого = Макет.ПолучитьОбласть("Итого");
    ВыборкаТовары = Выборка.Товары.Выбрать();
    КоличествоСтрок = ВыборкаТовары.Количество();
    ТолькоСтавкаБезНДС = ИСТИНА;
    НомерСтроки = 0;

    Пока ВыборкаТовары.Следующий() Цикл
    НомерСтроки = НомерСтроки + 1;
    ОбластьМакета.Параметры.Заполнить(ВыборкаТовары);
    СтруктураПараметров = Новый Структура("КоличествоМест, КоличествоВОдномМесте, НоменклатураКод, ПредставлениеНоменклатуры", 0, 0, ", ");
    СтруктураПараметров.Вставить("НомерСтроки", НомерСтроки);
    Номенклатура = ВыборкаТовары.Номенклатура;

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

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

    Если ПустаяСтрока(КодЕдиницыИзмерения) Тогда
    Если ВРег(Лев(ЕдиницаИзмерения, 1)) = "Ш" Тогда
    КодЕдиницыИзмерения = "2009";
    ИначеЕсли ВРег(Лев(ЕдиницаИзмерения, 1)) = "К" Тогда
    КодЕдиницыИзмерения = "0301";
    ИначеЕсли ВРег(Лев(ЕдиницаИзмерения, 1)) = "М" Тогда
    КодЕдиницыИзмерения = "0101";
    ИначеЕсли ВРег(Лев(ЕдиницаИзмерения, 1)) = "Л" Тогда
    КодЕдиницыИзмерения = "0138";
    ИначеЕсли ВРег(Лев(ЕдиницаИзмерения, 2)) = "УП" Тогда
    КодЕдиницыИзмерения = "2102";

    ИначеЕсли ВРег(Лев(ЕдиницаИзмерения, 3)) = "УСЛ"
    ИЛИ ВРег(Лев(ЕдиницаИзмерения, 4)) = "ПОСЛ" Тогда

    КодЕдиницыИзмерения = "2454";
    КонецЕсли;
    КонецЕсли;

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

    Если ПустаяСтрока(КодЕдиницыИзмерения) Тогда
    КодЕдиницыИзмерения = "2009";
    КонецЕсли;

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

    СуммаНДС = Сумма - СуммаБезНДС;
    СтруктураПараметров.Вставить("СуммаБезНДС", СуммаБезНДС);

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

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

    СтруктураПараметров.Вставить("НомерГТД", "--");
    КонецЕсли;

    СтруктураПараметров.Вставить("Акциз", "--");
    ОбластьМакета.Параметры.Заполнить(СтруктураПараметров);
    Для т = 0 По ОбластьМакета.Параметры.Количество() - 1 Цикл
    ТекПараметр = ОбластьМакета.Параметры.Получить(т);

    Если НЕ ЗначениеЗаполнено(ТекПараметр) Тогда
    ОбластьМакета.Параметры.Установить(т, "--");
    КонецЕсли;
    КонецЦикла;

    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьМакета);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьМакета);
    СтруктураСуммПоСтроке = Новый Структура;
    СтруктураСуммПоСтроке.Вставить("СуммаБезНДС", 0);
    СтруктураСуммПоСтроке.Вставить("СуммаНДС", 0);
    СтруктураСуммПоСтроке.Вставить("СуммаСНДС", 0);
    СтруктураСуммПоСтроке.Вставить("Количество", 0);
    СтруктураСуммПоСтроке.Вставить("КоличествоМест", 0);
    СтруктураСуммПоСтроке.Вставить("КоличествоПринято", 0);
    СтруктураСуммПоСтроке.Вставить("МассаБрутто", 0);
    СтруктураСуммПоСтроке.Вставить("МассаНетто", 0);
    СтруктураСуммПоСтроке.Вставить("Сумма", 0);
    СтруктураСуммПоСтроке.Вставить("РазницаБезНДСУвеличение", 0);
    СтруктураСуммПоСтроке.Вставить("РазницаБезНДСУменьшение", 0);
    СтруктураСуммПоСтроке.Вставить("РазницаНДСУвеличение", 0);
    СтруктураСуммПоСтроке.Вставить("РазницаНДСУменьшение", 0);
    СтруктураСуммПоСтроке.Вставить("РазницаСНДСУвеличение", 0);
    СтруктураСуммПоСтроке.Вставить("РазницаСНДСУменьшение", 0);
    ЗаполнитьЗначенияСвойств(СтруктураСуммПоСтроке, СтруктураПараметров);

    Если НЕ СтруктураСуммПоСтроке.КоличествоМест = Цел(СтруктураСуммПоСтроке.КоличествоМест) Тогда
    СтруктураСуммПоСтроке.КоличествоМест = Цел(СтруктураСуммПоСтроке.КоличествоМест) + 1;
    КонецЕсли;

    Для Каждого Элемент Из СтруктураСуммПоСтроке Цикл
    Если ЗначениеЗаполнено(Элемент.Значение) Тогда
    ИтоговыеСуммы["Итого" + Элемент.Ключ + "НаСтранице"] = ИтоговыеСуммы["Итого" + Элемент.Ключ + "НаСтранице"] + ОбщееНаСервереТекст.ПреобразоватьВЧисло(Элемент.Значение);
    ИтоговыеСуммы["Итого" + Элемент.Ключ] = ИтоговыеСуммы["Итого" + Элемент.Ключ] + ОбщееНаСервереТекст.ПреобразоватьВЧисло(Элемент.Значение);
    КонецЕсли;
    КонецЦикла;
    КонецЦикла;

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

    ОбластьИтого.Параметры.Заполнить(ИтоговыеСуммы);

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

    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьИтого);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьИтого);
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьПодвала);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьПодвала);

    ВставлятьРазделительСтраниц = ИСТИНА;
    КонецЦикла;
    КонецЕсли;

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

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

    Пока Выборка.Следующий() Цикл
    Если ВставлятьРазделительСтраниц Тогда
    ОбластьПечатиЭкземпляра.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ВыборкаВидЦен = Выборка.ВидЦен;

    Если ЗначениеЗаполнено(ВыборкаВидЦен)
    И ЗначениеЗаполнено(ОбщееПовтИсп.ПолучитьЗначениеРеквизита(ВыборкаВидЦен, "ВалютаЦены")) Тогда

    ВалютаЦены = ОбщееПовтИсп.ПолучитьЗначениеРеквизита(ВыборкаВидЦен, "ВалютаЦены");
    Иначе
    ВалютаЦены = ПредопределенноеЗначение("Справочник.Валюты.ОсновнаяВалюта");
    КонецЕсли;

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

    Если ЗначениеЗаполнено(Договор) Тогда
    ОснованиеНомер = Договор.НомерДоговора;
    ОснованиеДата = Договор.ДатаЗаключения;
    Иначе
    ОснованиеНомер = ";
    ОснованиеДата = ";
    Договор = ";
    КонецЕсли;

    Сотрудник = Выборка.Сотрудник;

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

    ПредставлениеГрузополучателя = ПредставлениеПлательщика;
    Грузополучатель = КлиентПоставщик;
    Шапка.Параметры.Организация = Организация;
    Шапка.Параметры.ПредставлениеОрганизации = ПредставлениеОрганизации;
    Шапка.Параметры.Контрагент = КлиентПоставщик;
    Шапка.Параметры.ПредставлениеПлательщика = ПредставлениеПлательщика;
    Шапка.Параметры.Основание = Договор;
    Шапка.Параметры.ПредставлениеПодразделения = ПредставлениеПодразделения;
    Шапка.Параметры.Подразделение = Подразделение;
    Шапка.Параметры.ПредставлениеГрузополучателя= ПредставлениеГрузополучателя;
    Шапка.Параметры.Грузополучатель = Грузополучатель;
    Шапка.Параметры.ПредставлениеПоставщика = ПредставлениеОрганизации;
    АдресДоставки = Выборка.Адрес;

    Если ЗначениеЗаполнено(КлиентПоставщик) Тогда
    Если ПустаяСтрока(АдресДоставки) Тогда
    АдресДоставки = КлиентПоставщик.Адрес;
    Если ПустаяСтрока(АдресДоставки) Тогда
    АдресДоставки = КлиентПоставщик.ЮридическийАдрес;
    КонецЕсли;
    КонецЕсли;

    ОКПО = КлиентПоставщик.ОКПО;
    Шапка.Параметры.ГрузополучательПоОКПО = ОКПО;
    Шапка.Параметры.ПлательщикПоОКПО = ОКПО;
    Иначе
    Шапка.Параметры.ГрузополучательПоОКПО = ";
    Шапка.Параметры.ПлательщикПоОКПО = ";
    КонецЕсли;

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

    Шапка.Параметры.ОснованиеНомер = ОснованиеНомер;
    Шапка.Параметры.ОснованиеДата = ОснованиеДата;

    // ТранспортнаяНакладнаяНомер
    // ТранспортнаяНакладнаяДата
    // ВидОперации
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(Шапка);
    ОбластьПечатиЭкземпляра.Вывести(Шапка);
    ЗаголовокТаб.Параметры.НомерСтраницы = ОбщееПовтИсп.ПолучитьТекстНаЯзыке("Страница") + " " + НомерСтраницы;
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ЗаголовокТаб);
    ОбластьПечатиЭкземпляра.Вывести(ЗаголовокТаб);
    ВставлятьРазделительСтраниц = ИСТИНА;
    НомерСтраницы = НомерСтраницы + 1;
    ВестиУчетВеса = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ВестиУчетВеса");
    ИтогоМассаБрутто = 0;
    ИтогоКоличество = 0;
    ИтогоСуммаБезНДС = 0;
    ВсегоСНДС = 0;
    Всего = 0;
    ЧислоСтрок = 0;
    СуммаВсегоНДС = 0;

    Если ЗначениеЗаполнено(Организация) Тогда
    СтавкаНДСОрганизации = Организация.СтавкаНДС;
    Иначе
    СтавкаНДСОрганизации = 0;
    КонецЕсли;

    ВыборкаТовары = Выборка.Товары.Выбрать();

    Пока ВыборкаТовары.Следующий() Цикл
    ЧислоСтрок = ЧислоСтрок + 1;
    Номенклатура = ВыборкаТовары.Номенклатура;
    ЗначениеЗаполненоНоменклатура = ЗначениеЗаполнено(Номенклатура);
    ОбластьСтрока.Параметры.НомерСтроки = " + ЧислоСтрок;

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

    ЕдиницаИзмерения = ВыборкаТовары.ЕдиницаИзмерения;

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

    ИначеЕсли ЗначениеЗаполненоНоменклатура
    И НЕ ПустаяСтрока(Номенклатура.ОсновнаяЕдиницаИзмерения) Тогда

    ОбластьСтрока.Параметры.ЕдиницаИзмеренияНаименование = Номенклатура.ОсновнаяЕдиницаИзмерения;
    ОбластьСтрока.Параметры.ЕдиницаИзмеренияКод = ";
    Иначе
    ОбластьСтрока.Параметры.ЕдиницаИзмеренияНаименование = ";
    ОбластьСтрока.Параметры.ЕдиницаИзмеренияКод = ";
    КонецЕсли;

    Количество = ВыборкаТовары.Количество;

    Если Количество = 0 Тогда
    Количество = 1;
    КонецЕсли;

    ИтогоКоличество = ИтогоКоличество + Количество;
    Сумма = ВыборкаТовары.Сумма;

    Если ВестиУчетВеса
    И ЗначениеЗаполненоНоменклатура Тогда

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

    МассаБрутто = ВесЕдиницы * Количество;
    ИтогоМассаБрутто = ИтогоМассаБрутто + МассаБрутто;
    ОбластьСтрока.Параметры.МассаБрутто = МассаБрутто;
    Иначе
    ОбластьСтрока.Параметры.МассаБрутто = ";
    КонецЕсли;

    ОбластьСтрока.Параметры.Количество = Количество;
    ВсегоСНДС = ВсегоСНДС + Сумма;
    СтавкаНДС = ?(ЗначениеЗаполненоНоменклатура И ЗначениеЗаполнено(Номенклатура.СтавкаНДС), Номенклатура.СтавкаНДС, СтавкаНДСОрганизации);
    СуммаБезНДС = Сумма - Сумма * (СтавкаНДС / 100);
    СуммаНДС = Сумма - СуммаБезНДС;
    Всего = Всего + Сумма;
    СуммаВсегоНДС = СуммаВсегоНДС + СуммаНДС;
    ИтогоСуммаБезНДС = ИтогоСуммаБезНДС + СуммаБезНДС;
    ОбластьСтрока.Параметры.Цена = СуммаБезНДС / Количество;
    ОбластьСтрока.Параметры.СуммаБезНДС = СуммаБезНДС;
    ОбластьСтрока.Параметры.СтавкаНДС = СтавкаНДС;
    ОбластьСтрока.Параметры.СуммаНДС = СуммаНДС;
    ОбластьСтрока.Параметры.СуммаСНДС = Сумма;
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьСтрока);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьСтрока);
    КонецЦикла;

    ОбластьВсего.Параметры.ИтогоКоличествоМест = ";
    Если ИтогоМассаБрутто = 0 Тогда
    ИтогоМассаБрутто = ";
    МассаБруттоПрописью = ";
    Иначе
    МассаБруттоПрописью = ОбщееНаСервереТекст.СформироватьСуммуПрописью(ИтогоМассаБрутто, ВалютаЦены, ЯзыкДокументов);
    КонецЕсли;

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

    КонецЦикла;
    КонецЕсли;

    Иначе // регламентированный или собственный
    Если ЭтоПечатьСчета Тогда
    ВидПроизвольнойПечатнойФормы = Перечисления.ВидыПечатныхФорм.СчетКлиенту;
    ИначеЕсли ЭтоЗаказ Тогда
    ВидПроизвольнойПечатнойФормы = Перечисления.ВидыПечатныхФорм.ЗаказКлиента;
    ИначеЕсли ЭтоОрдер Тогда
    ВидПроизвольнойПечатнойФормы = Перечисления.ВидыПечатныхФорм.РасходныйОрдер;
    Иначе
    ВидПроизвольнойПечатнойФормы = Перечисления.ВидыПечатныхФорм.ДокументРеализации;
    КонецЕсли;

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

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

    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    Шапка = Макет.ПолучитьОбласть("Шапка");
    ОбластьТоварыШапка = Макет.ПолучитьОбласть("ТоварыШапка");
    ОбластьТовары = Макет.ПолучитьОбласть("Товары");
    Подвал = Макет.ПолучитьОбласть("Подвал");

    СтруктураДополнительныхПараметровМакета = ОбщееНаСервере.ПолучитьСтруктуруДополнительныхПараметровМакетаПечати();

    ПоляПредставленийНоменклатурыАртикул = ПредопределенноеЗначение("Перечисление.ПоляПредставленийНоменклатуры.Артикул");
    ВставлятьРазделительСтраниц = Ложь;
    Пока Выборка.Следующий() Цикл
    Если ВставлятьРазделительСтраниц Тогда
    ОбластьПечатиЭкземпляра.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    Если ПараметрыСеанса.ВестиУчетСобственныхЮридическихЛицПС
    И ЗначениеЗаполнено(Выборка.Организация) Тогда

    ОбщееНаСервере.ДобавитьШапкуОрганизации(ОбластьПечатиЭкземпляра, Выборка.Организация, ЯзыкДокументов);
    КонецЕсли;

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

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

    Если НЕ ПараметрыСеанса.ВестиУчетСобственныхЮридическихЛицПС
    ИЛИ НЕ ЗначениеЗаполнено(Выборка.Организация) Тогда

    Шапка.Параметры.ТекстВШапкеДокументовПриПечати = СтруктураДополнительныхПараметровМакета.ТекстВШапкеДокументовПриПечати;
    Иначе
    Шапка.Параметры.ТекстВШапкеДокументовПриПечати = ";
    КонецЕсли;

    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(Шапка);
    ОбластьПечатиЭкземпляра.Вывести(Шапка, Выборка.Уровень());

    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьТоварыШапка);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьТоварыШапка);
    ВыборкаТовары = Выборка.Товары.Выбрать();
    Пока ВыборкаТовары.Следующий() Цикл
    ОбластьТовары.Параметры.Заполнить(ВыборкаТовары);

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

    ОбластьТовары.Параметры.НоменклатураНаименование = ОбщееНаСервереТекст.ПолучитьОбщееНаименование(Номенклатура, ЯзыкДокументов, ВыборкаТовары.КлиентПоставщик) + ДополнениеКНаименованиюНоменклатуры;
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьТовары);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьТовары, ВыборкаТовары.Уровень());
    КонецЕсли;
    КонецЦикла;

    Подвал.Параметры.Заполнить(Выборка);
    Подвал.Параметры.ТекстВПодвалеДокументовПриПечати = СтруктураДополнительныхПараметровМакета.ТекстВПодвалеДокументовПриПечати;
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(Подвал);
    ОбластьПечатиЭкземпляра.Вывести(Подвал);

    ВставлятьРазделительСтраниц = Истина;
    КонецЦикла;

    Иначе

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

    ЦенаТоваровСодержитНДС = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ЦенаТоваровСодержитНДС");
    ВыводитьАртикулОтдельнойКолонкой = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ВыводитьАртикулОтдельнойКолонкой");

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

    Если НЕ ЭтоПечатьСчета Тогда
    Подписи = Макет.ПолучитьОбласть("Подписи");
    Иначе
    Подписи = Макет.ПолучитьОбласть("ПодписиСчета");
    КонецЕсли;

    Если ЦенаТоваровСодержитНДС Тогда
    Если НЕ ВыводитьВРасходномДокументеЕдиницуИзмеренияОтдельнойКолонкой­ Тогда
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    ИмяШапкиТаблицы = "ШапкаБезНДС_нетЕдИзм";
    ИмяОбластьТовары = "СтрокаБезНдс_нетЕдИзм";
    Иначе
    ИмяШапкиТаблицы = "ШапкаБезНДС_нетЕдИзм_нетАрт";
    ИмяОбластьТовары = "СтрокаБезНдс_нетЕдИзм_нетАрт";
    КонецЕсли;
    Иначе
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    ИмяШапкиТаблицы = "ШапкаБезНДС";
    ИмяОбластьТовары = "СтрокаБезНдс";
    Иначе
    ИмяШапкиТаблицы = "ШапкаБезНДС_нетАрт";
    ИмяОбластьТовары = "СтрокаБезНдс_нетАрт";
    КонецЕсли;
    КонецЕсли;

    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ИмяШапкиТаблицы = ИмяШапкиТаблицы + "_ЧМ";
    ИмяОбластьТовары = ИмяОбластьТовары + "_ЧМ";
    КонецЕсли;

    ШапкаТаблицы = Макет.ПолучитьОбласть(ИмяШапкиТаблицы);
    ОбластьТовары = Макет.ПолучитьОбласть(ИмяОбластьТовары);
    Если ЕстьСкидка Тогда
    ОбластьИтоговСумм = Макет.ПолучитьОбласть("ПодвалБезНДС");
    Иначе
    ОбластьИтоговСумм = Макет.ПолучитьОбласть("ПодвалБезНДСБезСкидки");
    КонецЕсли;
    ИначеЕсли ВыводитьВРасходномДокументеЕдиницуИзмеренияОтдельнойКолонкой­ Тогда
    Если ЕстьСкидка Тогда
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаСКодомМестСкидка1");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСКодомМестСкидка1");
    Иначе
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаСКодомСкидка1");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСКодомСкидка1");
    КонецЕсли;
    Иначе
    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицыМестСкидка1");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаМестСкидка1");
    Иначе
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицыСкидка1");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСкидка1");
    КонецЕсли;
    КонецЕсли;

    Подвал = Макет.ПолучитьОбласть("ИтогоСкидка1");
    Иначе
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаСКодомМест1");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСКодомМест1");
    Иначе
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаСКодом1");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСКодом1");
    КонецЕсли;
    Иначе
    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицыМест1");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаМест1");
    Иначе
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы1");
    ОбластьТовары = Макет.ПолучитьОбласть("Строка1");
    КонецЕсли;
    КонецЕсли;

    Подвал = Макет.ПолучитьОбласть("Итого1");
    КонецЕсли;
    Иначе
    Если ЕстьСкидка Тогда
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаСКодомМестСкидка");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСКодомМестСкидка");
    Иначе
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаСКодомСкидка");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСКодомСкидка");
    КонецЕсли;
    Иначе
    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицыМестСкидка");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаМестСкидка");
    Иначе
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицыСкидка");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСкидка");
    КонецЕсли;
    КонецЕсли;

    Подвал = Макет.ПолучитьОбласть("ИтогоСкидка");
    Иначе
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаСКодомМест");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСКодомМест");
    Иначе
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаСКодом");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаСКодом");
    КонецЕсли;
    Иначе
    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицыМест");
    ОбластьТовары = Макет.ПолучитьОбласть("СтрокаМест");
    Иначе
    ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОбластьТовары = Макет.ПолучитьОбласть("Строка");
    КонецЕсли;
    КонецЕсли;

    Подвал = Макет.ПолучитьОбласть("Итого");
    КонецЕсли;
    КонецЕсли;

    ОДействительностиСчета = Макет.ПолучитьОбласть("ОДействительностиСчета");
    Иначе // собственный встроенный
    ДокументДляПечати.ИмяПараметровПечати = "ДокРасходВстроенный" + СокрЛП(ИмяКомпьютера());
    ДокументДляПечати.КлючПараметровПечати = ДокументДляПечати.ИмяПараметровПечати;
    Макет = Документы.РасходыТовара.ПолучитьМакет("Печать");
    Макет.КодЯзыкаМакета = ЯзыкДокументов.Код;
    Шапка = Макет.ПолучитьОбласть("РазделительШапка");
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(Шапка);
    ОбластьПечатиЭкземпляра.Вывести(Шапка);
    ОбластьПечатиЭкземпляра.Область().СоздатьФорматСтрок();
    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

    Если ЭтоПечатьСчета Тогда
    Шапка = Макет.ПолучитьОбласть("ШапкаСчета");
    Иначе
    Шапка = Макет.ПолучитьОбласть("Шапка");
    КонецЕсли;

    Если ВыводитьВРасходномДокументеЕдиницуИзмеренияОтдельнойКолонкой­ Тогда
    Если ЕстьСкидка Тогда
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    ИмяОбластиТоварыШапка = "ТоварыШапка1_арт";
    ИмяОбластиТовары = "Товары1_арт";
    Иначе
    ИмяОбластиТоварыШапка = "ТоварыШапка1";
    ИмяОбластиТовары = "Товары1";
    КонецЕсли;

    ИмяОбластиПодвала = "Подвал";
    Иначе
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    ИмяОбластиТоварыШапка = "ТоварыШапкаБезСкидки1_арт";
    ИмяОбластиТовары = "ТоварыБезСкидки1_арт";
    Иначе
    ИмяОбластиТоварыШапка = "ТоварыШапкаБезСкидки1";
    ИмяОбластиТовары = "ТоварыБезСкидки1";
    КонецЕсли;

    ИмяОбластиПодвала = "ПодвалБезСкидки";
    КонецЕсли;
    Иначе
    Если ЕстьСкидка Тогда
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    ИмяОбластиТоварыШапка = "ТоварыШапка_арт";
    ИмяОбластиТовары = "Товары_арт";
    Иначе
    ИмяОбластиТоварыШапка = "ТоварыШапка";
    ИмяОбластиТовары = "Товары";
    КонецЕсли;

    ИмяОбластиПодвала = "Подвал";
    Иначе
    Если ВыводитьАртикулОтдельнойКолонкой Тогда
    ИмяОбластиТоварыШапка = "ТоварыШапкаБезСкидки_арт";
    ИмяОбластиТовары = "ТоварыБезСкидки_арт";
    Иначе
    ИмяОбластиТоварыШапка = "ТоварыШапкаБезСкидки";
    ИмяОбластиТовары = "ТоварыБезСкидки";
    КонецЕсли;

    ИмяОбластиПодвала = "ПодвалБезСкидки";
    КонецЕсли;
    КонецЕсли;

    Если ВыводитьВРасходномДокументеЧислоМест Тогда
    ИмяОбластиТоварыШапка = ИмяОбластиТоварыШапка + "_ЧМ";
    ИмяОбластиТовары = ИмяОбластиТовары + "_ЧМ";
    КонецЕсли;

    ОбластьТоварыШапка = Макет.ПолучитьОбласть(ИмяОбластиТоварыШапка);
    ОбластьТовары = Макет.ПолучитьОбласть(ИмяОбластиТовары);
    Подвал = Макет.ПолучитьОбласть(ИмяОбластиПодвала);
    ОбластьОплатыШапка = Макет.ПолучитьОбласть("ОплатыШапка");
    ОбластьОплаты = Макет.ПолучитьОбласть("Оплаты");
    КонецЕсли;

    Пока Выборка.Следующий() Цикл
    Если ВставлятьРазделительСтраниц Тогда
    ОбластьПечатиЭкземпляра.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ВыборкаВидЦен = Выборка.ВидЦен;

    Если ЗначениеЗаполнено(ВыборкаВидЦен)
    И ЗначениеЗаполнено(ОбщееПовтИсп.ПолучитьЗначениеРеквизита(ВыборкаВидЦен, "ВалютаЦены")) Тогда

    ВалютаЦены = ОбщееПовтИсп.ПолучитьЗначениеРеквизита(ВыборкаВидЦен, "ВалютаЦены");
    Иначе
    ВалютаЦены = ПредопределенноеЗначение("Справочник.Валюты.ОсновнаяВалюта");
    КонецЕсли;

    ОбщееЧислоМест = 0;
    Валюта = ?(ЗначениеЗаполнено(Выборка.ВидЦен), ВалютаЦены, ?(ЗначениеЗаполнено(Выборка.Валюта), Выборка.Валюта, ОсновнаяВалюта));
    Если РегламентированныйДокумент Тогда
    Организация = ?(ЗначениеЗаполнено(Выборка.Организация), Выборка.организация, ПредопределенноеЗначение("Справочник.Организации.ОсновноеПредприятие"));
    ПредставлениеОрганизации = ОбщееНаСервереТекст.ПолучитьОбщееНаименование(Организация, ЯзыкДокументов);

    Если ЗначениеЗаполнено(Организация) Тогда
    СтавкаНДСОрганизации = Организация.СтавкаНДС;
    Иначе
    СтавкаНДСОрганизации = 0;
    КонецЕсли;

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

    Если ЭтоПечатьСчета Тогда
    НомерСчета = ?(ПустаяСтрока(Выборка.НомерСчета), ВыборкаНомер, Выборка.НомерСчета);
    ДатаСчета = ?(Выборка.ДатаСчета = '00010101000000', Выборка.Дата, Выборка.ДатаСчета);
    ТекстЗаголовкаСчета = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ТекстЗаголовкаСчета");

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

    ОбластьЗаголовок.Параметры.ТекстЗаголовка = ТекстЗаголовкаСчета + " № " + НомерСчета + " " + ОбщееПовтИсп.ПолучитьТекстНаЯзыке("от", ЯзыкДокументов) + " " + формат(ДатаСчета, "ДЛФ=dd.MM.yyyy");
    Иначе

    Если ЗаголовокРасходнойНакладной = Неопределено
    ИЛИ ПустаяСтрока(ЗаголовокРасходнойНакладной) Тогда

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

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

    ОбластьЗаголовок.Параметры.ТекстЗаголовка = ИмяДокумента + " № " + ВыборкаНомер + " " + ОбщееПовтИсп.ПолучитьТекстНаЯзыке("от", ЯзыкДокументов) + " " + формат(выборка.дата, "ДЛФ=dd.MM.yyyy");
    КонецЕсли;

    ОбластьПоставщик.Параметры.ПредставлениеПоставщика = ПредставлениеОрганизации;
    ОбластьПоставщик.Параметры.Поставщик = Организация;

    РеквизитыПоставщика = ?(ПустаяСтрока(Организация.НомерСчета), ", ОбщееПовтИсп.ПолучитьТекстНаЯзыке("расчетный счет", ЯзыкДокументов) + " " + Организация.НомерСчета + ", ")
    + ?(ПустаяСтрока(Организация.НаименованиеБанка), ", Организация.НаименованиеБанка + ", ")
    + ?(ПустаяСтрока(Организация.МФО), ", ОбщееПовтИсп.ПолучитьТекстНаЯзыке("МФО", ЯзыкДокументов) + " " + Организация.МФО);

    РеквизитыПоставщика = ?(ПустаяСтрока(РеквизитыПоставщика), ", РеквизитыПоставщика + Символы.ПС)
    + ?(ПустаяСтрока(Организация.ЮридическийАдрес), Организация.Адрес, Организация.ЮридическийАдрес);

    ОКПО = Организация.ОКПО;

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

    ОбластьПоставщик.Параметры.РеквизитыПоставщика = РеквизитыПоставщика;

    Если ДваЭкземпляра Тогда
    ВсегоЭкземпляров = 2;
    Иначе
    ВсегоЭкземпляров = 1;
    КонецЕсли;

    ПоляПредставленийНоменклатурыАртикул = ПредопределенноеЗначение("Перечисление.ПоляПредставленийНоменклатуры.Артикул");

    Для счетчикЭкземпляров = 1 По ВсегоЭкземпляров Цикл
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьЗаголовок);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьЗаголовок);
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьПоставщик);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьПоставщик);

    Если ЗначениеЗаполнено(КлиентПоставщик) Тогда
    ОбластьПокупатель.Параметры.ПредставлениеПокупателя = ПредставлениеПокупателя;
    ОбластьПокупатель.Параметры.Покупатель = КлиентПоставщик;

    Если НЕ КлиентПоставщик = ПредопределенноеЗначение("Справочник.Клиенты.ФизическоеЛицо")
    И НЕ КлиентПоставщик = ПредопределенноеЗначение("Справочник.Поставщики.ФизическоеЛицо") Тогда

    РеквизитыПокупателя = ?(ПустаяСтрока(КлиентПоставщик.НомерСчета), ", ОбщееПовтИсп.ПолучитьТекстНаЯзыке("расчетный счет", ЯзыкДокументов) + " " + КлиентПоставщик.НомерСчета + ", ")
    + ?(ПустаяСтрока(КлиентПоставщик.НаименованиеБанка), ", КлиентПоставщик.НаименованиеБанка + ", ")
    + ?(ПустаяСтрока(КлиентПоставщик.МФО), ", ОбщееПовтИсп.ПолучитьТекстНаЯзыке("МФО", ЯзыкДокументов) + " " + КлиентПоставщик.МФО);

    РеквизитыПокупателя = ?(ПустаяСтрока(РеквизитыПокупателя), ", РеквизитыПокупателя + Символы.ПС);
    РеквизитыПокупателя = РеквизитыПокупателя + ?(ПустаяСтрока(КлиентПоставщик.ЮридическийАдрес), КлиентПоставщик.Адрес, КлиентПоставщик.ЮридическийАдрес);
    ОКПО = КлиентПоставщик.ОКПО;

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

    ОбластьПокупатель.Параметры.РеквизитыПокупателя = РеквизитыПокупателя;
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ОбластьПокупатель);
    ОбластьПечатиЭкземпляра.Вывести(ОбластьПокупатель);
    КонецЕсли;

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

    Если ЗначениеЗаполнено(ЗаказКлиента) Тогда
    ДопИнформация.Параметры.НазваниеПараметра = ОбщееПовтИсп.ПолучитьТекстНаЯзыке("Заказ", ЯзыкДокументов);
    ДопИнформация.Параметры.ЗначениеПараметра = ЗаказКлиента;
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ДопИнформация);
    ОбластьПечатиЭкземпляра.Вывести(ДопИнформация);
    ИначеЕсли НоСчетЕсть Тогда
    ДопИнформация.Параметры.НазваниеПараметра = ОбщееПовтИсп.ПолучитьТекстНаЯзыке("Заказ", ЯзыкДокументов);
    ДопИнформация.Параметры.ЗначениеПараметра = ОбщееПовтИсп.ПолучитьТекстНаЯзыке("Счет на оплату", ЯзыкДокументов) + " № " + выборка.номер + " " + ОбщееПовтИсп.ПолучитьТекстНаЯзыке("от", ЯзыкДокументов) + " " + формат(выборка.дата, "ДЛФ=dd.MM.yyyy");
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ДопИнформация);
    ОбластьПечатиЭкземпляра.Вывести(ДопИнформация);
    КонецЕсли;

    ТекстУсловииПродажиРегламентированногоДокумента = ОбщееПовтИсп.ПолучитьЗначениеНастройкиИлиКонстанты("ТекстУсловииПродажиРегламентированногоДокумента");

    Если НЕ ПустаяСтрока(ТекстУсловииПродажиРегламентированногоДокумента) Тогда
    ДопИнформация.Параметры.НазваниеПараметра = ОбщееПовтИсп.ПолучитьТекстНаЯзыке("Условие продажи", ЯзыкДокументов);
    ДопИнформация.Параметры.ЗначениеПараметра = ОбщееПовтИсп.ПолучитьТекстНаЯзыке(ТекстУсловииПродажиРегламентированногоДокумента, ЯзыкДокументов);
    ОбщееНаСервереСервис.ЗаменитьСвоиЗначенияПараметровПечати(ДопИнформация);
    ОбластьПечатиЭкземпляра.Вывести(ДопИнформация);
    КонецЕсли;
    КонецЕсли;
```
---
Офигеть! Интересно, кто-нибудь прочтет это с начала и конца?
---
СтавкаНДСЧислом = 0
Если Номенклатура.СтавкаНДС = Перечисления.СтавкаНДС.НДС_20 Тогда
СтавкаНДСЧислом = 20;
КонецЕсли;

Без "Числом" сработало!!!
Спасибо!!!
---
```1c
    СтавкаНДС = ?(ЗначениеЗаполненоНоменклатура И ЗначениеЗаполнено(Номенклатура.СтавкаНДС), Номенклатура.СтавкаНДС, СтавкаНДСОрганизации);
```

вот тут же
переменная СтавкаНДС у вас же не число, а значение перечисления.

а вот тут вы пытаетесь перечисление поделить на число. Отсюда и ошибка.

```1c
    СуммаБезНДС = Сумма - Сумма * (СтавкаНДС / 100);
```

В УТ 11 есть например функция ФормированиеПечатныхФорм.СоответствиеСтавокИСуммНДС()

посмотри как там превращается перечисление в число.