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

29.01.20

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

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

Скачать исходный код

Наименование Файл Версия Размер
1С:Розница и алкоголь: ускоряем РМК при переходе к оплате: 2.2.13.12
.cfe 7,28Kb
2
.cfe 7,28Kb 2 Скачать
1С:Розница и алкоголь: ускоряем РМК при переходе к оплате: 2.3.2.28
.cfe 7,34Kb
8
.cfe 7,34Kb 8 Скачать

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

Типовое описание, с которым обращаются: "После нажатия на кнопки "Наличная оплата", "Плат. карта" или "Сложная оплата" 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С: загрузка прайсов и анализ цен поставщиков для УТ 10.3, УТ 11, КА2, УНФ, УПП, ERP, Розница 2

Бюджетирование и планирование Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Анализ продаж Платформа 1С v7.7 Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Система управления запасами для 1С помогает работать с запасами правильно: автоматически рассчитывает потребность и делает заказ поставщику, загружает прайсы, перемещает товары по филиалам, анализирует продажи и позволяет управлять ассортиментом.

28500 руб.

21.04.2017    90793    108    40    

197

ККТ-ОНЛАЙН 54-ФЗ: Обработка для работы онлайн касс АТОЛ, ШТРИХ, VIKI PRINT и т.д. МАРКИРОВКА (Разрешит. режим) + ЭКВАЙРИНГ + БЕСПЛАТНЫЙ ДЕМО

ККМ Кассовые операции Розничная торговля Платформа 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    765585    4690    9499    

2792

ЕГАИС++. Опт, производство, импорт

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

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

8970 руб.

15.12.2015    166318    701    362    

389

Загрузка номенклатуры из Excel в УТ11, КА 2, ERP 2, Розница 2. Дополнительные реквизиты и сведения, характеристики, картинки, цены, остатки

Загрузка и выгрузка в Excel Розничная торговля Логистика, склад и ТМЦ Ценообразование, анализ цен Прайсы Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Загрузка из файлов xls, xlsx, ods, csv, mxl в УТ11, КА 2, ERP 2, Розница 2. Задействованы все возможности конфигурации - заполнение реквизитов номенклатуры, дополнительных реквизитов и сведений, характеристики, доп.реквизиты и сведения характеристик. Дополнительные обработки для расширения возможностей.

10560 руб.

29.10.2014    210900    630    526    

445

Обмен с системой ЦРПТ (Универсальная конфигурация ХамелеонЦРПТ + маркировка табака, обуви, одежды, лекарств, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин)

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

Данная публикация создана для помощи разработчикам, интеграторам и другим заинтересованным лицам по настройке системы маркировки обуви, одежды, лекарств, табака, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин. Смело задавайте нам вопросы по работе с ЦРПТ, GS1, ЭДО, Национальным каталогом, мы накопили достаточно большую базу знаний по данным темам и готовы ответить на все Ваши вопросы.

104000 руб.

18.03.2019    110600    34    114    

178

54-ФЗ и Разрешительный режим. Обработки для подключения онлайн-касс к 1С 8 (поддержка Маркировки) + Эмулятор + ФФД 1.2

ККМ Кассовые операции Розничная торговля Платформа 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 или интернет. Поддержка маркировки и разрешительного режима.

5400 руб.

25.05.2015    317548    1851    3012    

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

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

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

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

Как раз такие мысли и возникли сразу, и, возможно, не надо будет использовать расширение конфигурации для ускорения алгоритма продажи. Но я не знаю подводных камней, поэтому предлагаю обсудить их в комментариях, а не "позже" :)
2. al_zzz 309 30.01.20 05:37 Сейчас в теме
(1) По поводу переноса сведений о списанных АМ тоже сразу в голову пришло. Почему бы не обсудить это здесь?
3. RocKeR_13 1321 30.01.20 06:29 Сейчас в теме
(1) имелось в виду, что позже будет приведена в рамках статьи реализация соответствующей обработки)
4. RocKeR_13 1321 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 1321 30.01.20 16:41 Сейчас в теме
(6) неа, модуль ПродажиСервер вообще даже не изменился
8. *Zed* 279 10.03.20 17:33 Сейчас в теме
(7) в 2.3.3.19 модуль проверки изменен - они исправили данную ошибку или нет?
9. *Zed* 279 12.03.20 14:34 Сейчас в теме
(8) проверил на тестовой базе - все быстро работает, по времени так же как если стоит исправление
10. *Zed* 279 17.03.20 15:43 Сейчас в теме
(9) Рано радовался. Запрос стал выполнятся значительно быстрее, но все равно очень медленно в районе 18-35 секунд стандартный и в районе пары секунд если использовать расширение "вместо".
Так же они поменяли алгоритм использования данной процедуры - раньше проверка шла при сканировании марки, теперь же при нажатии кнопок оплаты. Поэтому на тестовой и не вылезла данная ошибка, в связи с не подключенной кассой.
Данная проблема актуальна не только для алкоголя, но и для табака с новыми КМ
11. RocKeR_13 1321 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 1321 12.05.20 16:44 Сейчас в теме
(14) Здравствуйте! На последних версиях пока не смотрел: вполне возможно, что исправили. До обновления были проблемы со скоростью работы? Может быть у вас в базе небольшое количество документов "ЧекККМ": в этом случае прироста производительности и не увидите
16. tulapc 12.05.20 17:36 Сейчас в теме
(15) Вот это нет, чеков там за три года до бениной мамы))) там правда вэб сервер поднят на I5-9400 и на SSD, а две кассы по тонкому клиенту
18. RocKeR_13 1321 12.05.20 17:40 Сейчас в теме
(16) а до обновления-то была проблема с зависанием?)
19. tulapc 12.05.20 17:41 Сейчас в теме
20. RocKeR_13 1321 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 112 21.07.20 14:36 Сейчас в теме
22. yaguarrr 71 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 1321 09.08.20 20:50 Сейчас в теме
(23) информация о марках хранится в 2 местах: справочник "Штрихкоды упаковок и товаров" и в регистре сведений "Акцизные марки ЕГАИС". В справочнике по новым маркам хранится соответствие марки номенклатуре 1С, а в регистре сведений - данные ЕГАИС, в том числе статус в разрезе организации ЕГАИС. В новых релизах в документе остатков ЕГАИС добавили кнопку для запроса марок в регистре 3, но процесс этот долгий: запрос отправляется по одной справке 2 и не чаще 1 раза в 10 мин. Лучше, конечно, перенести регистр сведений из другой программы. Проверку статуса, в принципе, можно отключить, но доверяете ли вы настолько своим продавцам?
27. user620209_telex604 12.08.20 17:08 Сейчас в теме
(26)
Допустим полностью доверяю. А переносить сведения из другой программы не получится по причине ее отсутствия. Как можно отключить проверку статуса?
28. RocKeR_13 1321 13.08.20 08:34 Сейчас в теме
(27) штатно - никак, только доработкой. Есть процедура, которая заполняет допустимые статусы при оформлении продаж - вот её и надо исправить. Пока компьютера нет под рукой, поэтому не смогу подсказать, где искать ее
29. user620209_telex604 13.08.20 12:57 Сейчас в теме
(28) Буду благодарен если покажете как. Я не профи по этой части.
30. RocKeR_13 1321 14.08.20 14:56 Сейчас в теме
(29) Должно помочь данное расширение. На ваш страх и риск. Но, в принципе, УТМ должен подстраховать
Прикрепленные файлы:
ОтключениеКонтроляСтатусаМарок.cfe
31. GrafFromTomsk 56 30.11.20 08:11 Сейчас в теме
Здравствуйте. Будет ли это расширение работать на Розница, редакция 2.3 (2.3.4.33)
32. RocKeR_13 1321 30.11.20 09:08 Сейчас в теме
(31) Здравствуйте! На следующих версиях уже не проверял. Можете попробовать
Прикрепленные файлы:
PUBID_1186753-УскорениеОплаты_2_3_2_28.cfe
33. *Zed* 279 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, и стало все норм. Проблема была если касса вторая по сети то долго эта процедура выполнялась, сейчас все быстро как и на основной кассе.
Оставьте свое сообщение