Вид оплаты в Чеке ККМ УТ 11.5

1. Joker2705 7 07.02.25 14:09 Сейчас в теме
Всем привет. Пытаюсь вывести в Форму печати Товарного чека информацию как был оплачен чек. Но, как всегда ничего не получается. Не могу получить информацию по Способу оплаты. Вот функция, которая должна получать Способ Оплаты, но она не работает.

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

Подскажите, как правильно получить вид оплаты?
По теме из базы знаний
Найденные решения
12. Joker2705 7 08.02.25 16:19 Сейчас в теме
Все. Заработала. Слишком сильно мудрил, а оказалось все очень просто. Лишнего кода никакого не нужно. Просто в Процедуру ЗаполнитьТабличныйДокументТоварныйЧек добавил код

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


и в форму соответствующую область и параметр СпособОплаты и все взлетело.
Огромное спасибо всем причастным за помощь)))))
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. lefthander 07.02.25 15:42 Сейчас в теме
(1)
СсылкаНаЧек.ФормаОплаты.Наименование
Форма оплаты это перечисление. Наименование Вы так не получите
3. Joker2705 7 07.02.25 16:52 Сейчас в теме
(2) А как сделать запрос правильно?
4. Torin 846 08.02.25 07:36 Сейчас в теме
(1)
СсылкаНаЧек.ФормаОплаты

Строка(СсылкаНаЧек.ФормаОплаты)
5. Joker2705 7 08.02.25 12:06 Сейчас в теме
(4) Все равно выдает ошибку

Поле объекта не обнаружено (СпособОплаты)
{Обработка.ПечатьТоварногоЧека.МодульМенеджера(103)}:ОбластьМакета.Параметры.СпособОплаты = ДанныеПечати.СпособОплаты;
{Обработка.ПечатьТоварногоЧека.МодульМенеджера(50)}:ЗаполнитьТабличныйДокументТоварныйЧек(ТабличныйДокумент, ДанныеДляПечати, ОбъектыПечати);
{Обработка.ПечатьТоварногоЧека.МодульМенеджера(15)}:НСтр("ru = 'Товарный чек'"),
{ОбщийМодуль.УправлениеПечатью.Модуль(3386)}:МенеджерПечати.Печать(ОбъектыСоответствующиеПечатнойФорме, ПараметрыПечати, ВременнаяКоллекцияДляОднойПечатнойФормы,
{ОбщаяФорма.ПечатьДокументов.Форма(792)}:ПечатныеФормы = УправлениеПечатью.СформироватьПечатныеФормы(Параметры.ИмяМенеджераПечати, ИменаМакетов,
{ОбщаяФорма.ПечатьДокументов.Форма(61)}:КоллекцияПечатныхФорм = СформироватьПечатныеФормы(Параметры.ИменаМакетов, Отказ);
{ОбщийМодуль.УправлениеПечатьюСлужебныйКлиент.Модуль(310)}:ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, ВладелецФормы, Строка(Новый УникальныйИдентификатор));
{ОбщийМодуль.УправлениеПечатьюГлобальный.Модуль(13)}:УправлениеПечатьюСлужебныйКлиент.ПродолжитьВыполнениеКомандыПечати();

[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка]
7. Torin 846 08.02.25 12:33 Сейчас в теме
(5)
Обработка.ПечатьТоварногоЧека.


Строка(ДанныеПечати.Ссылка.ФормаОплаты)
6. Joker2705 7 08.02.25 12:09 Сейчас в теме
Может где еще ошибка? Вот строчка, которую я вставил в функцию СформироватьПечатнуюФормуТоварныйЧек

ДанныеДляПечати.Вставить("СпособОплаты", ПолучитьСпособОплаты(СтруктураОбъектов.Значение));


А вот код, который в Процедуру ЗаполнитьТабличныйДокументТоварныйЧек

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


Ну и, естественно, в шаблоне создал область "СпособОплаты" и там вставил параметр <СпособОплаты>
8. Torin 846 08.02.25 12:35 Сейчас в теме
(6) в ЗаполнитьТабличныйДокументТоварныйЧек

после

ПервыйДокумент = Ложь;

СпособОплаты = Строка(ДанныеПечати.Ссылка.ФормаОплаты);
9. Joker2705 7 08.02.25 12:41 Сейчас в теме
(8) Неа, не помогло. Ошибка

Поле объекта не обнаружено (СпособОплаты)
{Обработка.ПечатьТоварногоЧека.МодульМенеджера(108)}:ОбластьМакета.Параметры.СпособОплаты = ДанныеПечати.СпособОплаты;
{Обработка.ПечатьТоварногоЧека.МодульМенеджера(50)}:ЗаполнитьТабличныйДокументТоварныйЧек(ТабличныйДокумент, ДанныеДляПечати, ОбъектыПечати);
{Обработка.ПечатьТоварногоЧека.МодульМенеджера(15)}:НСтр("ru = 'Товарный чек'"),
{ОбщийМодуль.УправлениеПечатью.Модуль(3386)}:МенеджерПечати.Печать(ОбъектыСоответствующиеПечатнойФорме, ПараметрыПечати, ВременнаяКоллекцияДляОднойПечатнойФормы,
{ОбщаяФорма.ПечатьДокументов.Форма(792)}:ПечатныеФормы = УправлениеПечатью.СформироватьПечатныеФормы(Параметры.ИмяМенеджераПечати, ИменаМакетов,
{ОбщаяФорма.ПечатьДокументов.Форма(61)}:КоллекцияПечатныхФорм = СформироватьПечатныеФормы(Параметры.ИменаМакетов, Отказ);
{ОбщийМодуль.УправлениеПечатьюСлужебныйКлиент.Модуль(310)}:ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, ВладелецФормы, Строка(Новый УникальныйИдентификатор));
{ОбщийМодуль.УправлениеПечатьюГлобальный.Модуль(13)}:УправлениеПечатьюСлужебныйКлиент.ПродолжитьВыполнениеКомандыПечати();

[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка]
Показать
10. Torin 846 08.02.25 12:58 Сейчас в теме
(9)
Прикрепленные файлы:
11. Joker2705 7 08.02.25 15:03 Сейчас в теме
(10) А почему у меня тогда ошибка? Что я сделал не так?
12. Joker2705 7 08.02.25 16:19 Сейчас в теме
Все. Заработала. Слишком сильно мудрил, а оказалось все очень просто. Лишнего кода никакого не нужно. Просто в Процедуру ЗаполнитьТабличныйДокументТоварныйЧек добавил код

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


и в форму соответствующую область и параметр СпособОплаты и все взлетело.
Огромное спасибо всем причастным за помощь)))))
13. Joker2705 7 08.02.25 23:07 Сейчас в теме
(12) Если кому понадобится, то вот сделал расширение. Тестировал на версии УТ 11.5.17.162.
Прикрепленные файлы:
Рассширение - Товарный Чек с Видом Оплаты.cfe
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот