1. Tikle 10.09.19 13:54 Сейчас в теме

Число прописью в макете

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

Подвал.Параметры.Заполнить(ЭтотОбъект);
ТабДок.Вывести(Подвал);

ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
//}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ
КонецПроцедуры
Показать

Но при вызове макета выдает ошибку - ошибка при вызове метода контекста ЧислоПрописью несоответствие типов параметр №1. Подскажите пожалуйста где ошибка?
Найденные решения
17. Tikle 10.09.19 21:35 Сейчас в теме
Создала доп функцию -
Функция СформироватьСуммуПрописью(Сумма, Валюта) Экспорт

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

КонецФункции // СформироватьСуммуПрописью()
Остальные ответы
Избранное Подписка Сортировка: Древо
2. TODD22 18 10.09.19 13:55 Сейчас в теме
У переменной "ИтогВсего" какой тип и какое содержит значение?
3. Tikle 10.09.19 13:58 Сейчас в теме
(2)ИтогВсего это строка, но содержит она число.
5. TODD22 18 10.09.19 14:01 Сейчас в теме
(3)А тип у параметры №1 какой должен быть ? Приведите вашу строку к типу число тогда.
6. Tikle 10.09.19 14:01 Сейчас в теме
7. TODD22 18 10.09.19 14:04 Сейчас в теме
9. Tikle 10.09.19 14:06 Сейчас в теме
(7)делаю
Подвал.Параметры.ИтогВсего = Число("ИтогВсего");
Подвал.Параметры.ИтогВсего = ЧислоПрописью(Число("ИтогВсего"),,);

Пишет что преобразование к числу не может быть выполнененно Подвал.Параметры.ИтогВсего = Число("ИтогВсего");
10. TODD22 18 10.09.19 14:07 Сейчас в теме
(9)
Число("ИтогВсего");

А зачем "ИтогВсего" в кавычках? Как вы себе представляете преобразование строкового литерала "ИтогВсего" в число?

Подвал.Параметры.ИтогВсего = Число(ИтогВсего);
11. Tikle 10.09.19 14:12 Сейчас в теме
(10)без кавычек та же ошибка
8. TODD22 18 10.09.19 14:04 Сейчас в теме
(6)РезультирующаяСтрока = Число(РезультирующаяСтрока + " " + СокрП(Валюта));

Вот так не работает?

Хотя может и не будет работать.
Покажите что у вас в РезультирующейСтроке?
12. Tikle 10.09.19 14:17 Сейчас в теме
(8)Выражение -результирующаястрока
Значение - "2260.00"
Тип - строка
13. TODD22 18 10.09.19 14:18 Сейчас в теме
(12)Тип надо сделать числом.
15. Tikle 10.09.19 14:22 Сейчас в теме
(13)а как можно его пребразовать в число, но только при выводе на печатную форму? Подскажите пожалуйста)
16. TODD22 18 10.09.19 14:26 Сейчас в теме
(15)
а как можно его пребразовать в число, но только при выводе на печатную форму?

Можно сделать отдельную переменную, её использовать для вывода прописью.
Можно сделать уже имеющуюся переменную и изначально её сделать числом и только когда надо преобразовать в строку. Но тогда вам наверное много кода надо переделывать, честно не вникал как у вас получается значение переменной "ИтогВсего".
14. Tikle 10.09.19 14:19 Сейчас в теме
(12)а потом в нее попадает сумма других табличных частей, потом других)))
4. Tikle 10.09.19 14:00 Сейчас в теме
Функция формирования ИтогВсего

Функция ФорматСумм(Сумма, Валюта = Неопределено, ЧН = "", ЧРГ = "", ЧРД = "." ) Экспорт

ФорматнаяСтрока = "ЧЦ=15;ЧДЦ=2" + ";ЧРД="+ЧРД +
?(ЗначениеЗаполнено(ЧН), ";ЧН=" + ЧН, "") +
?(ЗначениеЗаполнено(ЧРГ), ";ЧРГ=" + ЧРГ, "");

РезультирующаяСтрока = СокрЛ(Формат(Сумма, ФорматнаяСтрока));

Если ЗначениеЗаполнено(Валюта) Тогда
РезультирующаяСтрока = РезультирующаяСтрока + " " + СокрП(Валюта);
КонецЕсли;

Возврат РезультирующаяСтрока;

КонецФункции // ФорматСумм()
Показать
17. Tikle 10.09.19 21:35 Сейчас в теме
Создала доп функцию -
Функция СформироватьСуммуПрописью(Сумма, Валюта) Экспорт

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

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

Вакансии


Программисты 1С УТ / БУЗ/ЗУП / БИТ ФИНАНС
Москва
зарплата от 100 000 руб. до 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 150 000 руб. до 150 000 руб.
Полный день

Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Программист 1С
Владивосток
зарплата от 80 000 руб. до 120 000 руб.
Полный день