Счёт на оплату с QR-кодом без нулевых позиций для 1С:УТ 11 и 1С:УНФ 3.0
Учетные задачи - Печатные формы
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Внешняя печатная форма «Счёт на оплату с QR-кодом» для 1С:УТ 11 и 1С:УНФ 3.0. Печатает счёт из заказа и добавляет QR-код, по которому покупатель оплачивает счёт в приложении своего банка: реквизиты и сумма подставляются автоматически. Размер QR, логотип и надписи в подвале настраиваются, для каждой организации можно задать свои.
Какую задачу решает
В заказах нередко есть строки с нулевой ценой: подарки, бонусы, комплектующие в наборе. В счёт для оплаты они не нужны, а сумма в QR-коде должна равняться ровно тому, что платит покупатель. Форма убирает такие строки из счёта, пересчитывает итог и НДС и формирует QR по этой сумме. Внизу счёта выводится пометка, сколько позиций не включено.
Что умеет
- Печатает счёт на оплату из заказа: реквизиты получателя и банка, плательщик, таблица позиций с ценой, суммой и НДС, итого к оплате и «в том числе НДС».
- Не включает в счёт строки с нулевой ценой и отменённые строки заказа.
- Формирует QR-код по ГОСТ Р 56042 (формат ST0001, кодировка UTF-8): получатель, расчётный счёт, банк, БИК, корреспондентский счёт, сумма в копейках, назначение платежа, ИНН и КПП получателя, ИНН плательщика. QR стоит вверху справа от реквизитов.
- Назначение платежа формируется автоматически: «Оплата по счёту № … от …, в т.ч. НДС … руб.».
- Если в документе не указан банковский счёт, берётся счёт организации, а при его отсутствии - первый действующий счёт организации. Этот случай очень частый: в одной из проверенных баз счёт не был заполнен у большинства заказов.
- Если QR сформировать нельзя (нет счёта, нулевой итог, неполные реквизиты банка), форма печатается без него и выводит причину в тексте.
- Строку QR можно сверить с типовой функцией БСП «УправлениеПечатьюРФ.ФорматнаяСтрокаУФЭБС»: у тестовых данных строки совпали полностью.
- Настройки печати: размер QR-кода, подпись под ним, логотип организации над заголовком, любые надписи в подвале счёта.
Настройки
Настройки вынесены в отдельную обработку «Настройки счёта с QR-кодом» (второй файл публикации). В ней таблица правил. Правило содержит:
- организацию, для документов которой оно действует (пусто - общее правило для всех организаций);
- размер QR-кода в миллиметрах, от 25 до 40 (по умолчанию 30; меньший банковский QR плохо читается);
- признак «Подпись QR» - выводить ли надпись «Оплата по QR-коду»;
- логотип (изображение PNG или JPEG) и его высоту в миллиметрах;
- текст подвала: каждая строка текста - строка в счёте. Можно подставлять [Организация], [ИНН], [КПП], [Номер], [Дата], [Сумма], [Контрагент].
Для документа действует правило его организации; если его нет - общее правило; если нет и его - значения по умолчанию (QR 30 мм, без логотипа и подвала). Отключённое правило не действует. Правила сохраняются в общем хранилище настроек информационной базы и применяются при каждой печати. Настройки необязательны: без обработки настроек форма печатает с настройками по умолчанию.
Как подключить
- Откройте раздел «Администрирование» (в УНФ - «Настройки»), «Печатные формы, отчёты и обработки», «Дополнительные отчёты и обработки».
- Нажмите «Создать» и выберите файл «СчётСQR.epf». Вид обработки определится как «Печатная форма».
- Убедитесь, что в назначении выбраны нужные документы, и сохраните. Форма регистрируется для работы без безопасного режима (ей нужно читать документы, банковские счета и организации) - система может запросить подтверждение у администратора.
- В заказе в меню «Печать» появится команда «Счёт на оплату с QR-кодом».
- Чтобы задать логотип, размер QR и подвал, так же создайте элемент из файла «НастройкиСчётаСQR.epf» (вид «Дополнительная обработка»). Откройте этот элемент и выполните команду «Настройки счёта с QR-кодом» из таблицы команд. В форме добавьте правило, заполните поля и нажмите «Записать и закрыть».
Проверено
- 1С:Управление торговлей 11.5.24.68, платформа 8.5.4.1683: заказ клиента; смешанный заказ (38 строк, одна с нулевой ценой) печатается как 37 строк на двух страницах, итог и НДС пересчитаны, QR читается внешним декодером.
- 1С:УНФ 3.0.14.159, платформа 8.5.4.1683: заказ покупателя; QR читается, сумма и реквизиты верны.
- Подключение через «Дополнительные отчёты и обработки» проверено на обеих базах программно, штатными функциями БСП: регистрация обработки (вид «Печатная форма»), команда «Счёт на оплату с QR-кодом» в списке команд печати формы заказа (УТ - 6 команд, УНФ - 18) и печать через ДополнительныеОтчетыИОбработки.ПечатьПоВнешнемуИсточнику; результат совпал с прямым вызовом, QR читается. Ручной клик по пункту меню «Печать» в окне 1С не выполнялся.
- Настройки проверены в УНФ: правило организации и общее правило выбираются верно, отключённое правило не действует, размер QR, логотип и подвал с подстановками применяются в печати. Обработка настроек регистрируется как дополнительная обработка, форма открывается, показывает сохранённые правила, записывает их обратно (вместе с логотипом), кнопка выбора организации открывает справочник. В УТ проверена печать с настройками по умолчанию.
Ограничения
- ERP 2 и КА 2 используют тот же документ «Заказ клиента», но в этих конфигурациях форма не проверялась, поэтому для них не заявляется.
- Форма настроек открывалась и проверялась в УНФ; в УТ она не открывалась. Загрузка файла логотипа кнопкой «Выбрать логотип...» (диалог выбора файла) в этой версии не проверялась: правила с логотипом сохранялись и применялись, но сам файл выбирался программно.
- В УНФ строки «Подарки» и «Отменённые запасы» хранятся в отдельных табличных частях и в счёт не выводятся; в счёт попадают «Запасы» и «Работы».
- Данные организации-получателя берутся из документа и банковского счёта: наименование (полное), ИНН, КПП, банк, БИК, корсчёт. Адреса в форму не выводятся.
- QR-код предназначен для оплаты в банковских приложениях, поддерживающих формат ГОСТ Р 56042 (ST0001). Это не код СБП. Проверка чтения выполнялась программными декодерами, не банковским приложением.
- Если открыть файл печатной формы напрямую из файла (не через «Дополнительные отчёты и обработки»), платформа может спросить разрешение на подключение компонента печати штрихкодов; при работе через зарегистрированную обработку таких запросов в проверках не было.
Как реализовано
Внешняя обработка с регистрацией через БСП (подсистема «Дополнительные отчёты и обработки»), макет формируется кодом без отдельного макета MXL. Источники данных определяются по метаданным: для «ЗаказКлиента» читается табличная часть «Товары», для «ЗаказПокупателя» - «Запасы» и «Работы», для «СчетНаОплату» - «Запасы». QR генерируется встроенным механизмом платформы и привязывается к ячейкам шапки, поэтому не наезжает на таблицу при длинных реквизитах. Настройки читаются из общего хранилища настроек (объект «СчетСQR», ключ «Правила»). Исходный код открыт и снабжён комментариями.
Проверено на следующих конфигурациях и релизах:
- Управление торговлей, редакция 11, релизы 11.5.24.68
- Управление нашей фирмой, редакция 3.0, релизы 3.0.14.159
Вступайте в нашу телеграмм-группу Инфостарт