Добрый день! Подскажите почти доделал свою обработку и не могу справиться с назначением платежа.

Не прописывается сумма платежки и НДС

Бухгалтерия предприятия, редакция 3.0 (3.0.98.11)

```1c
    Для каждого Стр Из Объект.Загрузка Цикл
    СозданиеДокументов = Документы.ПлатежноеПоручение.СоздатьДокумент();
    СозданиеДокументов.Дата = ТекущаяДата();
    СозданиеДокументов.Организация = Справочники.Организации.НайтиПоНаименованию(Объект.Организация);
    СозданиеДокументов.СчетОрганизации = Справочники.БанковскиеСчета.НайтиПоНаименованию(СозданиеДокументов.Организация.ОсновнойБанковскийСчет);
    СозданиеДокументов.Контрагент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", Стр.ИНН);
    СозданиеДокументов.СчетКонтрагента = Справочники.БанковскиеСчета.НайтиПоНаименованию(Стр.БанковскийСчёт);
    СозданиеДокументов.ОчередностьПлатежа = 5;
    СозданиеДокументов.ДокументОснование = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(Стр.ДоговорОснование);
    СозданиеДокументов.СуммаДокумента = Стр.Сумма;
    СозданиеДокументов.ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийСписаниеДенежныхСредств.ОплатаПоставщику");
    СозданиеДокументов.ВидПлатежа = "Электронно";

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

    //----- Выделил для удобства
    СозданиеДокументов.НазначениеПлатежа= Стр.НазначПлатеж;

    //+ "Сумма " + СозданиеДокументов.СуммаДокумента
    //+ "В том числе НДС " + СозданиеДокументов.СтавкаНДС+ " " +СозданиеДокументов.СуммаНДС; -- Это то что я пробовал сделать, но когда делаешь количество полей ограничивается

    //--------

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

Не получается заполнить Сумму и НДС.

Если это делать как в комментарии то включается ограничение по длине, не понимаю как это происходит.
---
Есть ограничение по длине строки 210 символов, это свойство реквизита документа.
---
Я сейчас попробовал, руками заполнить и походу понял, что при присвоении программа делает много пропусков, которые программа считает за "символы". Но не понятно как тогда сделать нормальный перенос на следующую строку.
---
у назначения платежа есть ограничение по длине - может элементарно не влезает?
---
Да, но при создании в ручную у нас есть возможность переходить на другие строки, если программно, то почему то это ограничение включается так что я могу писать в первой строке на следующей чуть-чуть)

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

```1c
    ТекстСумма = "Сумма " + СозданиеДокументов.СуммаДокумента;
    ТекстНДС = "В том числе НДС " + СозданиеДокументов.СтавкаНДС+ " " +СозданиеДокументов.СуммаНДС;
    ТекстНазначения = ТекстСумма + ?(ТекстСумма = ", ", Символы.ПС) + ТекстНДС;

    СозданиеДокументов.НазначениеПлатежа=ТекстНазначения ;
```
---
Не прописывается, какая ошибка?
Можете прикрепить свою обработку к сообщению?
Что такое "Стр.НазначПлатеж", этот реквизит заполнен?
---
В Объект.Загрузка есть такое поле и оно заполнено строкой, там что-то типо "Оплата за бла бла бла по договору 25/94".
---
Добрый день! Преобразовывай числа в строку и будет тебе счастье. Так, как реквизиты - числа. а "НазначениеПлатежа" - строка, поэтому преобразовывай.
---
Сейчас попробую
---
С суммой НДС тоже самое. Только вставь проверку типа ?( , , ) если разные ставки НДС.
---
Почему то появляются пробелы см.скриншот и он их принимает за символы.
---
Процедуру встроенную СокрЛП(что-то там вывожу в текст) еще никто не отменял.
---
и старайся писать красиво сразу - не "Сумма", а "Сумма платежа:"; не "В том числе НДС", а ", в том числе НДС:" и так далее.
---
Для лучшего отображения и читабельности - в текущей программе учета найди ПП, посмотри чтобы все было заполнено. Нажми кнопку сформировать назначение платежа и посмотри как программа формирует, если нет - посмотри заполненную бухгалтерами отпечатанную форму.
---
А вообще посмотрите процедуру "СформироватьНазначениеПлатежа" в модуле менеджера документа платежки и по аналогии сформируйте
---
бухи часто под себя перепиливают для своих удобств и читабельности, особенно под требования обслуживающего банка.