В типовой конфигурации «1С:Управление торговлей 10.3» работа в интерфейсе «Рабочее место кассира» (РМК) ориентирована на потоковые розничные продажи, где один человек и подбирает товар, и принимает оплату, и печатает фискальный чек. Однако во многих компаниях бизнес-процесс разделен: менеджер консультирует клиента и формирует перечень товаров, а кассир в другой зоне принимает деньги и выдает чек. По умолчанию интерфейс РМК не позволяет просто «записать» чек, чтобы открыть его позже на другой кассе. Разберем детально, как реализовать эту задачу разными способами.
Этот метод является наиболее правильным с точки зрения методологии 1С. Мы не меняем программный код, а используем заложенный функционал цепочки документов. Рассмотрим этот процесс пошагово:
ЗаказПокупателя. В нем выбираются товары, указываются характеристики и количество. После заполнения менеджер нажимает кнопку «Записать» или «ОК». Документ не делает движений по денежным средствам и не требует наличия фискального регистратора на рабочем месте менеджера.ИнтерфейсРМК. В нижней части экрана или через меню функций в РМК предусмотрена кнопка «Заполнить по заказу» (или использование кнопки подбора заказов). Кассир выбирает нужный заказ из списка, и табличная часть ЧекККМ мгновенно заполняется данными из заказа.Преимущества: Прозрачная история взаимоотношений с клиентом, возможность резервирования товара под клиента и отсутствие необходимости в доработке программы.
Если работа с заказами кажется избыточной, проанализируем ситуацию с использованием напрямую документа ЧекККМ. Мало кто помнит, что ЧекККМ — это обычный документ, с которым можно работать вне специализированного интерфейса РМК.
Рассмотрим алгоритм настройки:
ЧекККМ, но ограничиваются права на работу с торговым оборудованием.ЧекККМ (или использует доработанную кнопку в РМК), находит записанный менеджером документ, открывает его и нажимает кнопку «Пробить».Важный нюанс: В типовой УТ 10.3 при открытии формы документа ЧекККМ система может выдать ошибку, если к рабочему месту не подключено торговое оборудование. Для обхода этого момента можно подключить «Эмулятор фискального регистратора» на рабочих местах менеджеров. Тогда документ будет проводиться в базе, но реальный чек не выйдет.
Если бизнес-процесс требует, чтобы менеджер работал именно в упрощенном интерфейсе РМК, нам придется применить «напильник». Выясним, что именно нужно изменить в коде.
Основная сложность в том, что обработка РМК.эпф (или встроенная в конфигурацию) при закрытии формы или переходе к оплате всегда инициирует цепочку процедур фискализации. Нам нужно добавить функционал «Откладывания» чека с записью в базу данных.
Проанализируем примерный код, который можно добавить на новую кнопку «Сохранить без пробития» в форму РМК:
Процедура КнопкаСохранитьБезПробитияНажатие(Элемент)
// 1. Формируем объект документа ЧекККМ из данных на форме РМК
НовыйЧек = Документы.ЧекККМ.СоздатьДокумент();
НовыйЧек.Дата = ТекущаяДата();
НовыйЧек.Склад = СкладМенеджера;
НовыйЧек.Организация = ОрганизацияПоУмолчанию;
// 2. Переносим товары из табличной части РМК
Для Каждого СтрокаТовара Из ТаблицаТоваровРМК Цикл
НоваяСтрока = НовыйЧек.Товары.Добавить();
ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаТовара);
КонецЦикла;
// 3. Записываем документ без проведения и фискализации
Попытка
НовыйЧек.Записать(РежимЗаписиДокумента.Запись);
Сообщить("Чек успешно сохранен для оплаты кассиром. Номер: " + НовыйЧек.Номер);
// 4. Очищаем форму РМК для нового клиента
ОчиститьФормуРМК();
Исключение
Предупреждение("Ошибка при сохранении чека: " + ОписаниеОшибки());
КонецПопытки;
КонецПроцедуры
После такой доработки менеджер сможет «сбрасывать» набитые корзины в базу, а кассир будет их подбирать. Чтобы кассиру было удобно, в форму РМК кассира следует добавить кнопку «Выбрать отложенный чек», которая будет открывать список документов ЧекККМ со статусом «Не пробит».
В некоторых версиях обработок РМК для УТ 10.3 реализован механизм откладывания чеков во внешние файлы (формат .xml или внутрибазовое хранилище). Рассмотрим, как заставить это работать на разных ПК:
Этот способ позволяет избежать лишних записей в таблицу документов ЧекККМ до момента реальной продажи, что экономит место в базе и уменьшает количество «мусорных» (брошенных) документов. Однако он требует стабильного сетевого соединения между компьютерами.
Выясним, какой путь выбрать именно вам:
Заказом покупателя. Это стандартно, надежно и не вызывает проблем при обновлении конфигурации.ЗаказПокупателя или ЧекККМ, кассир сканирует его, и документ мгновенно открывается в РМК для оплаты.ЧекПробитНаККМ = Истина. При попытке кассира пробить этот же чек на реальном ФР, система выдаст ошибку «Чек уже пробит». Поэтому менеджеры должны только записывать документы, не используя процедуры печати чека.Подводя итог, можно сказать, что хотя штатное РМК в «Управлении торговлей 10.3» и кажется жестко привязанным к кассе, гибкость платформы «1С:Предприятие 8» позволяет обойти это ограничение через использование заказов или небольшую корректировку кода обработки обслуживания.