1С:Розница и алкоголь: ускоряем РМК при переходе к оплате

29.01.20

Учетные задачи - Розничная торговля

При наличии в чеке акцизных марок алкогольной продукции наблюдаются некоторые зависания при переходе к оплате чека в 1С:Розница.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
1С:Розница и алкоголь: ускоряем РМК при переходе к оплате: 2.2.13.12
.cfe 7,28Kb
2
2 Скачать (1 SM) Купить за 1 850 руб.
1С:Розница и алкоголь: ускоряем РМК при переходе к оплате: 2.3.2.28
.cfe 7,34Kb
8
8 Скачать (1 SM) Купить за 1 850 руб.

В данной статье рассмотрим проблему, с которой обращаются ко мне коллеги на Инфостарте, а также множество клиентов.

Типовое описание, с которым обращаются: "После нажатия на кнопки "Наличная оплата", "Плат. карта" или "Сложная оплата" 1С зависает на N секунд/минут, если в чеке есть алкоголь с марками".

После банального замера производительности выяснилось, что проблема кроется в процедуре "ПроверитьАкцизныеМаркиПередЗаписьюЧека" общего модуля "ПродажиСервер", а именно, в запросе:

 
 Листинг запроса

 

Первое впечатление: а, собственно, зачем все это городить? Есть регистр сведений "Акцизные марки ЕГАИС", почему нельзя использовать запрос к нему для получения статуса марок? Ведь именно для этого он и нужен!

Первый ответ, который пришел в голову: возможно, в 1С решили подстраховаться на случай, если в регистре по какой-то причине нет записи о статусе марки (например, "потерялись" вследствие повреждения базы).

"Пощупав" данный вывод с разных сторон приходим к, как я думаю, реальной причине: этот регистр ввели в конфигурацию только с появлением поддержки новых акцизных марок, поэтому в этом регистре может не быть информации о продажах марок старого формата!

Например, у вас есть недобросовестный кассир, который в "седые" года в старой версии Розницы зарегистрировал продажу некоторой марки старого образца, а по факту отдал клиенту другую бутылку. Поштучного учета по таким маркам нет, расхождений по количеству тоже не будет, поэтому вы подвоха не заметите. Пусть эта бутылка у вас неожиданно пролежала до сегодняшнего дня, когда появился регистр сведений "Акцизные марки ЕГАИС", в котором статуса той формально проданной марки нет. И вот, наконец, кассиру при продаже в руки попадается бутылка с той самой маркой, продажа которой уже зарегистрирована в ЕГАИС. Вот в этом случае 1С уже "на корню" обрубит продажу, так как увидит, что есть в базе чек с этой маркой. С другой стороны, есть УТМ, который со своей стороны также проконтролирует факт повторной продажи, но в том случае, если:

  • у вас во время пробития есть выход в Интернет;
  • УТМ успешно получил результат проверки марки с сервера ФСРАР в течение 3 секунд.

Давайте поразмышляем над тем, как можно повлиять на время выполнения данного запроса. Прежде всего проанализируем, какие таблицы могут привести к увеличению времени выполнения запроса. Конечно же, самые большие таблицы - это:

  • Документ.ЧекККМ
  • РегистрСведений.АкцизныеМаркиЕГАИС

Выборку из регистра сведений трогать не стоит, к тому же на нее тратится не так много времени, а вот выборка чеков ККМ как раз и приводит к значительному увеличению времени выполнения. Поэтому сразу на ум приходит первое решение проблемы...

Вариант 1: свертка информационной базы (нет ограничений)

Да, действительно, после свертки ожидаем, что количество чеков ККМ у нас значительно сократится и нормализуется скорость работы.

Но, вы должны четко понимать, что в этом случае вы потеряете данные о фактах продажи марок старого образца, которых нет в регистре сведений "Акцизные марки ЕГАИС". К тому же процесс свертки может затянуться и привести к непредвиденным результатам, особенно если были ошибки ведения учета.

Вариант 2: удаление чеков ККМ (нет ограничений)

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

Риски тут все те же, что и в 1 варианте

Вариант 3: исправление запроса расширением (должна быть ПРОФ-версия платформы)

Допустим, вы решились полностью положиться на УТМ или уверены в своих кассирах на все 101%, а также у вас стоит ПРОФ-версия Розницы (или базовая Розница работает под платформой версии ПРОФ: например, если на том же ПК активирована лицензия на другой ПП 1С уровня ПРОФ). В этом случае вы можете исправить данный запрос расширением. Для этого в расширение перенесите общий модуль "ПродажиСервер" и вставьте следующий код:

 
 С использованием аннотации "ИзменениеИКонтроль" (2.2.13.12)
 
 С использованием аннотации "Вместо" (2.2.13.12)
 
 С использованием аннотации "ИзменениеИКонтроль" (2.3.2.28)
 
 С использованием аннотации "Вместо" (2.3.2.28)

В этом случае риски все те же: у вас проверка не будет проводиться по чекам ККМ. Для примера приведу замеры выполнения типового запроса и запроса, измененного расширением. В обоих случаях использовалась одна и та же база, в чек добавлялась одна и та же марка; для тестов использовалась 1С:Розница версии 2.2.13.12 в файловом варианте, загрузка ПК была в обоих случаях примерно одинаковой:

 
 Время выполнения типового запроса
 
 Время выполнения отредактированного запроса

Как видим, разница колоссальная! У некоторых время выполнения типового запроса достигала порядка 200-300 сек, в зависимости от "железа" и количества чеков в базе. Только представьте: у вас покупатель будет ждать 3-5 минут, пока кассир сможет принять у него оплату!

Минимизация рисков

Как уже отметил вышел, вы должны четко понимать, какие риски вы принимаете на себя, если будете использовать вышеприведенные варианты. Во-первых, нельзя исключать, что у вас вдруг окажется реализованная ранее марка старого образца, а при продаже УТМ не сможет ее проверить; да, вероятность мизерная, но надо понимать, что она все-таки существует. Во-вторых, при использовании вариантов 1 и 2 вы потеряете архивные чеки: это может создать некоторые неудобства, например, при оформлении возвратов. Для минимизации рисков повторной продажи в любом из приведенных вариантах поможет внесение тем или иным способом статусов реализованных ранее марок старого образца в регистр сведений "Акцизные марки ЕГАИС". Но об этом поговорим позже...

Бонус: к статье прикреплены расширения для реализации 3 варианта с использованием совместно с платформой 8.3.15 для версий 2.3.2.28 и 2.2.13.12

ЕГАИС марка алкоголь Розница

См. также

ККМ Кассовые операции Розничная торговля Системный администратор Программист Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия 1.6 1С:Бухгалтерия автономного учреждения 1С:CRM ПРОФ, КОРП Россия Платные (руб)

Универсальная обработка для обслуживания любых фискальных регистраторов (ККТ), в том числе Веб сервер АТОЛ. Работает в соответствии с 54-ФЗ. (ФФД 1.0, ФФД 1.05, ФФД 1.1). Подключайте любую онлайн кассу к практически любой конфигурации. Нет необходимости обновлять 1С. Можно бесплатно скачать и протестировать. Может работать одновременно с несколькими онлайн-кассами, либо одной с разных рабочих мест. (через RDP, TCP\IP или веб-сервер) Позволяет разделить один чек сразу на несколько ККТ или на несколько систем налогообложения. Поддерживает разрешительный режим. Можно настроить собственный шаблонов чека. Можно использовать эквайринг там, где он не поддерживается. Работает на LINUX и Windows ЭМУЛЯТОР + ЭКВАЙРИНГ + МАРКИРОВКА + ПОДДЕРЖКА ФФД 1.2

6000 руб.

27.02.2017    796374    4903    9546    

2858

SALE! 20%

Оптовая торговля Розничная торговля Обмен с ГосИС Бухгалтер Платформа 1С v8.3 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Полнофункциональное расширение (ранее известное как Модуль 1С-ЕГАИС) для взаимодействия типовых конфигураций 1С и ЕГАИС, предоставляющее максимум возможностей по работе с УТМ. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

8970 7176 руб.

15.12.2015    170797    955    364    

400

ККМ Кассовые операции Розничная торговля Обмен с ГосИС Программист Бухгалтер Пользователь Бухгалтерский учет Оперативный учет Управляемые формы 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Расширение конфигурации для УТ 11.5, КА 2.5 ,ERP 2.5 (Управляемые формы) позволяет выполнять печать кассовых чеков на одну ККМ 54-ФЗ с нескольких рабочих мест. НИКАКИХ НАСТРОЕК В РАЗРАБОТКЕ - ПОДКЛЮЧИЛ И ПЕЧАТАЙ. Если у вас несколько отделов и одна ККМ - печатайте на одной ККМ! Если у вас две ККМ и одна поломалась - печатайте на одной ККМ, пока ремонтируете другую!

4500 руб.

27.08.2018    122207    1025    584    

864

SALE! 25%

ККМ Кассовые операции Розничная торговля Системный администратор Программист Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия автономного учреждения Россия Платные (руб)

Обработка осуществляет обслуживание ККТ АТОЛ, Штрих, Вики Принт и Меркурий для конфигураций "УТ 10.3", "КА 1.1", "УПП 1.3", "Розница 1.0", "БП 2.0" и других отраслевых решений, построенных на основе указанных выше конфигурациях. Поддерживает возможность параллельно пробития чеков на одной ККМ несколькими пользователями. Поддерживает Веб-сервер Атол. Соответствует требованиям 54-ФЗ. Поддерживает ФФД 1.0, 1.05, 1.1 и 1.2. Разделяет чеки по нескольким СНО. Поддерживает механизмы подключения ККТ по TCP/IP, для работы через RDP или интернет. Поддержка маркировки и разрешительного режима.

5880 4410 руб.

25.05.2015    335555    1957    3058    

1031

Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Обмен с ГосИС Программист Бухгалтер Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Сельское хозяйство и рыболовство Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Пищевая промышленность Россия Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная конфигурация Хамелеон Меркурий для взаимодействия с системой Меркурий (тестовый+рабочий+демо контур) может использоваться для интеграции в любую конфигурацию на базе 1С, версии ПРОФ и выше. Основное отличие от других решений - работа через веб-интерфейс и API 2.0(API 2.1). Для удобства реализован общий интерфейс в виде обработки, схожей с интерфейсом Меркурий, но возможностей гораздо больше, т.к. при интеграции в Вашу учетную систему, можно на основании Ваших справочников и документов, создавать соответствующие документы и справочники в системе Меркурий и наоборот.

44000 руб.

08.11.2017    122945    292    140    

398

Управление взаимоотношениями с клиентами (CRM) Оптовая торговля Розничная торговля Пользователь Платформа 1С v8.3 Оперативный учет Управляемые формы 1С:Управление торговлей 10 1С:Розница 2 Россия Управленческий учет Платные (руб)

Подсистема призвана упростить и автоматизировать процесс расчета и начисления бонусов покупателей. Бонусная система работает с конфигурациями 1С:УТ 10.3, 1С:Розница. Механизм реализован в начале 2013г. и работает до сих пор с постоянными совершенствованиями.

30000 руб.

02.11.2015    112288    102    87    

185

Зарплата Производство готовой продукции (работ, услуг) Учет рабочего времени Рабочее место Бизнес-аналитик Пользователь Руководитель проекта Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Торговля и склад 7.7 Бытовые услуги, сервис Оптовая торговля, дистрибуция, логистика Электротехника и микроэлектроника Управленческий учет Платные (руб)

Модуль или расширение «Сервисный центр для 1С» позволяет принимать в ремонт оборудование (компьютеры, бытовая техника и т.п.), оформлять заявки инженеров на посещение клиентов и вести начисление заработной платы для сотрудников. Позволяет наладить автоматизированный учет в сервисном центре на уже существующей базе.

14800 руб.

01.11.2012    94140    115    1    

117
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. RustIG 1747 30.01.20 03:15 Сейчас в теме
(0) прикольная статья!
Выборку из регистра сведений трогать не стоит, к тому же на нее тратится не так много времени, а вот выборка чеков ККМ как раз и приводит к значительному увеличению времени выполнения. Поэтому сразу на ум приходит первое решение проблемы...

Вариант 1: свертка информационной базы (нет ограничений)

можно провести свертку не всей информационной базы, а только некоторых таблиц - в частности таблицы ЧекККМ
Вариант 2: удаление чеков ККМ (нет ограничений)

При первом и втором варианте, прежде чем удалять чеки ккм, сведения о продажах алкоголя следует перенести в регистр РегистрСведений.АкцизныеМаркиЕГАИС.
Для минимизации рисков повторной продажи в любом из приведенных вариантах поможет внесение тем или иным способом статусов реализованных ранее марок старого образца в регистр сведений "Акцизные марки ЕГАИС". Но об этом поговорим позже...

Как раз такие мысли и возникли сразу, и, возможно, не надо будет использовать расширение конфигурации для ускорения алгоритма продажи. Но я не знаю подводных камней, поэтому предлагаю обсудить их в комментариях, а не "позже" :)
2. al_zzz 301 30.01.20 05:37 Сейчас в теме
(1) По поводу переноса сведений о списанных АМ тоже сразу в голову пришло. Почему бы не обсудить это здесь?
3. RocKeR_13 1366 30.01.20 06:29 Сейчас в теме
(1) имелось в виду, что позже будет приведена в рамках статьи реализация соответствующей обработки)
4. RocKeR_13 1366 30.01.20 08:43 Сейчас в теме
(1) Подводных камней там нет. "Подвох" можно ожидать только в случае некорректной реализации данной методики. За основу планирую взять все тот же запрос, которым проверяются марки, но условие там поставить только по дате: выборку делать до минимальной даты основания смены статуса в регистре акцизных марок.
5. user1274438 30.01.20 16:24 Сейчас в теме
Вчера, говорят, было обновление, где 1С что-то поправили в этом запросе, как раз.
6. user1274438 30.01.20 16:36 Сейчас в теме
(5) Не поленился, открыл релизы. По факту изменений в релизе не увидел. Везде обман.
7. RocKeR_13 1366 30.01.20 16:41 Сейчас в теме
(6) неа, модуль ПродажиСервер вообще даже не изменился
8. *Zed* 280 10.03.20 17:33 Сейчас в теме
(7) в 2.3.3.19 модуль проверки изменен - они исправили данную ошибку или нет?
9. *Zed* 280 12.03.20 14:34 Сейчас в теме
(8) проверил на тестовой базе - все быстро работает, по времени так же как если стоит исправление
10. *Zed* 280 17.03.20 15:43 Сейчас в теме
(9) Рано радовался. Запрос стал выполнятся значительно быстрее, но все равно очень медленно в районе 18-35 секунд стандартный и в районе пары секунд если использовать расширение "вместо".
Так же они поменяли алгоритм использования данной процедуры - раньше проверка шла при сканировании марки, теперь же при нажатии кнопок оплаты. Поэтому на тестовой и не вылезла данная ошибка, в связи с не подключенной кассой.
Данная проблема актуальна не только для алкоголя, но и для табака с новыми КМ
11. RocKeR_13 1366 17.03.20 16:41 Сейчас в теме
(10) нет, эту проверку не изменяли. Сейчас обновился на 2.3.3.25 - все без изменений
12. Virus32BioScan 01.04.20 15:05 Сейчас в теме
Доброе время суток. И так есть косяк, не знаю как в новой версии но, в 2.3.3.19 в общем модуле АкцизныеМаркиЕГАИСПереопределяемый есть процедура ПроверитьУникальностьАкцизнойМарки - при добавление позиции алкогольной продукции в РМК или ЧекККМ запрос выполняется 20 сек и более в целях быстроты работы я ее отключил
35. CrimeanWind 17.12.21 13:42 Сейчас в теме
(12)
АкцизныеМаркиЕГАИСПереопределяемый есть процедура ПроверитьУникальностьАкцизнойМарки
как вы её отключили, подскажите
13. Virus32BioScan 01.04.20 15:11 Сейчас в теме
Если у вас в РМК дублируются позиции алкогольной продукции в 2.3.3.19 - 2.3.3.25 отпишите мне в личку я расскажу в чем проблема и ее решение, отдельную тему создавать не буду
14. tulapc 12.05.20 15:59 Сейчас в теме
2.3.3.31 как с расширением так и без скорость одна - 5 секунд, разницы не увидел
15. RocKeR_13 1366 12.05.20 16:44 Сейчас в теме
(14) Здравствуйте! На последних версиях пока не смотрел: вполне возможно, что исправили. До обновления были проблемы со скоростью работы? Может быть у вас в базе небольшое количество документов "ЧекККМ": в этом случае прироста производительности и не увидите
16. tulapc 12.05.20 17:36 Сейчас в теме
(15) Вот это нет, чеков там за три года до бениной мамы))) там правда вэб сервер поднят на I5-9400 и на SSD, а две кассы по тонкому клиенту
18. RocKeR_13 1366 12.05.20 17:40 Сейчас в теме
(16) а до обновления-то была проблема с зависанием?)
19. tulapc 12.05.20 17:41 Сейчас в теме
20. RocKeR_13 1366 12.05.20 17:45 Сейчас в теме
(19) Ну значит и так справлялось железо) У тех, кто с этой проблемой обращался, зависания были от 1 до, если правильно помню, 5 минут
17. tulapc 12.05.20 17:38 Сейчас в теме
(15) тут уж как говориться купил и купил)))
36. CrimeanWind 17.12.21 15:30 Сейчас в теме
(15)С вами можно связаться по поводу этого расширения при закрытии чека и при сканировании в РМК, доработать под новую розницу? Нужно срочно, оплата соответственно.
21. tatoshka0403 117 21.07.20 14:36 Сейчас в теме
22. yaguarrr 72 27.07.20 16:23 Сейчас в теме
(21)
для 2,3,5 по ходу актуально будет
23. user620209_telex604 08.08.20 18:53 Сейчас в теме
релиз 2.3.5.24 В базе есть позиции по алкоголю по которым нет марок в реестре АкцизныеМаркиЕГАИС т.к. ТТН по ним были приняты в другой программе. При продаже естественно ошибка. 1с проверят реестр марок и не находит их там. Как можно отключить эту проверку? В другом магазине на старом релизе 2.2.11.24 все работает даже если марок в реестре нет. Насколько я понял старый релиз проверяет марки через утм?
24. Virus32BioScan 09.08.20 20:20 Сейчас в теме
(23)
лизе 2.2.11.24 все работает даже если марок в реестре нет. Насколько я понял старый релиз проверяет марки через утм?

Это нельзя сделать т.к программа не понимает как расшифровать марку нового образца
25. Virus32BioScan 09.08.20 20:22 Сейчас в теме
(24)
Это нельзя сделать т.к программа не понимает как расшифровать марку нового образца

Только перенести данные с регистра сведений Акцизные марки и справочника Штрихкоды упаковок и товаров
26. RocKeR_13 1366 09.08.20 20:50 Сейчас в теме
(23) информация о марках хранится в 2 местах: справочник "Штрихкоды упаковок и товаров" и в регистре сведений "Акцизные марки ЕГАИС". В справочнике по новым маркам хранится соответствие марки номенклатуре 1С, а в регистре сведений - данные ЕГАИС, в том числе статус в разрезе организации ЕГАИС. В новых релизах в документе остатков ЕГАИС добавили кнопку для запроса марок в регистре 3, но процесс этот долгий: запрос отправляется по одной справке 2 и не чаще 1 раза в 10 мин. Лучше, конечно, перенести регистр сведений из другой программы. Проверку статуса, в принципе, можно отключить, но доверяете ли вы настолько своим продавцам?
27. user620209_telex604 12.08.20 17:08 Сейчас в теме
(26)
Допустим полностью доверяю. А переносить сведения из другой программы не получится по причине ее отсутствия. Как можно отключить проверку статуса?
28. RocKeR_13 1366 13.08.20 08:34 Сейчас в теме
(27) штатно - никак, только доработкой. Есть процедура, которая заполняет допустимые статусы при оформлении продаж - вот её и надо исправить. Пока компьютера нет под рукой, поэтому не смогу подсказать, где искать ее
29. user620209_telex604 13.08.20 12:57 Сейчас в теме
(28) Буду благодарен если покажете как. Я не профи по этой части.
30. RocKeR_13 1366 14.08.20 14:56 Сейчас в теме
(29) Должно помочь данное расширение. На ваш страх и риск. Но, в принципе, УТМ должен подстраховать
Прикрепленные файлы:
ОтключениеКонтроляСтатусаМарок.cfe
31. GrafFromTomsk 57 30.11.20 08:11 Сейчас в теме
Здравствуйте. Будет ли это расширение работать на Розница, редакция 2.3 (2.3.4.33)
32. RocKeR_13 1366 30.11.20 09:08 Сейчас в теме
(31) Здравствуйте! На следующих версиях уже не проверял. Можете попробовать
Прикрепленные файлы:
PUBID_1186753-УскорениеОплаты_2_3_2_28.cfe
33. *Zed* 280 29.12.20 14:45 Сейчас в теме
а в 2.3.6.х и в 2.3.7.х исправили данную проблему?
34. Whale_56 31.12.20 07:54 Сейчас в теме
(33) Видел что в 2.3.6.27 переписали процедуру эту, сделали проверку алкашка это или нет. Обновился до 7.19, и стало все норм. Проблема была если касса вторая по сети то долго эта процедура выполнялась, сейчас все быстро как и на основной кассе.
Оставьте свое сообщение