Ускоряем поиск по акцизной марке ЕГАИС в 1С:Розница 2.3.5

28.07.20

Задачи пользователя - Поиск данных

Ускоряем поиск по акцизной марке ЕГАИС (для целей эксперимента было сгенерировано 1 000 000 кодов акцизных марок ЕГАИС нового формата).

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

Наименование Файл Версия Размер
Ускоряем поиск по акцизной марке ЕГАИС в 1С:Розница 2.3.5: готовое расширение
.cfe 5,58Kb
6
.cfe 5,58Kb 6 Скачать

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

Итак, для целей эксперимента было сгенерировано 1 000 000 кодов акцизных марок ЕГАИС нового формата. База используется файловая, компьютер вполне посредственный, файл базы располагается на HDD.

Посмотрим, на что 1С тратит больше всего времени при сканировании акцизной марки ЕГАИС в РМК:

Это результат запроса, который возвращает нам "специфику" алкогольной продукции: код марки, статус, какой организации принадлежит марка и т.д.

Собственно, сам текст запроса располагается в общем модуле "ШтрихкодированиеЕГАИС" в функции "ТекстЗапросаПолученияСпецификиДанныхШтрихкодов":

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

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

  • ОрганизацияЕГАИС
  • АкцизнаяМарка

По сути, разработчики забыли про статью Типичные причины неоптимальной работы запросов и методы оптимизации, а именно:

 
 Выдержка из статьи

Ну что ж, давайте поменяем порядок полей индекса и порядок связей:

 
 Измененный текст запроса (для расширения)

Перезапускаем 1С, заходим в РМК, включаем замер производительности и сканируем акцизную марку:

Думаю, в дополнительных комментариях нет смысла) Вывод: используйте индексы правильно!

Желающие могут скачать расширение или использовать готовый текст исправленной функции:

 
 Листинг готовой функции

 

См. также

Раздельный учет по гособоронзаказу (ГОЗ) - Подсистема для 1С:Бухгалтерии 3.0 ПРОФ и КОРП

Бюджетный учет Обмен с ГосИС Бухгалтерский учет 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 1С:Управление холдингом Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Управляйте учетной политикой раздельного ведения затрат по контракту ГОЗ с подсистемой для 1С:Бухгалтерия. Отчеты по контрактам и контроль операций для исполнения в срок по 275-ФЗ. Минимальные требования: Версия платформы 1С: Предприятие 8.3 – 8.3.23 Версия конфигурации 1С: Бухгалтерия – 3.0.149.28 или выше.

28.08.2020    199917    1604    vvmanannikov    132    

826

Гособоронзаказ: учет и отчетность БП3.0 КОРП + ПРОФ + БИТ.ФИНАНС

Бюджетный учет Обмен с ГосИС Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Государственные, бюджетные структуры Россия Бухгалтерский учет Платные (руб)

Доработка конфигурации 1С: Бухгалтерия предприятия, редакция 3.0. Предназначена для ведения раздельного учета и автоматизации заполнения отчетности исполнения контрактов ГОЗ в конфигурациях 1С БП КОРП, ПРОФ, БИТ.ФИНАНС.

30000 руб.

16.08.2019    88289    210    85    

127

Автоматический заказ поставщику в 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    90888    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    766126    4689    9501    

2792

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

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

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

8970 руб.

15.12.2015    166387    702    362    

389

SALE! 40%

Обмен 1С с Честным Знаком для УТ11, УНФ, КА2, ERP, Розница: Расширение для работы с СУЗ, ГИС МТ, ЦРПТ

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

Полноценное интеграционное решение которое манипулирует сотнями задач по ведению учета в системе мониторинга честный знак, особенности: такие как полная поддержка учета карточек в национальном каталоге (модерация, редактирование, подписание, получение информации), получение кодов маркировок в станции управления заказами "СУЗ Облако", удобная отправка и получение "УПД" через систему "ЭДОЛайт" из документов реализации или корректировки, так же существует механизм приема через ЭДОЛайт, отправка и получения таких документов как перемаркировка , списание, отгрузка и еще более 40 типов документов в ГИСМТ которые описаны ниже, моментальное сопоставление и внедрение в типовую конфигурацию которое обеспечивает ракетную мега скорость ...

18000 10800 руб.

28.03.2023    10278    38    9    

39

Загрузка номенклатуры из 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    211032    630    526    

446

Обмен с системами Казначейства: Электронный бюджет

Обмен с ГосИС Платформа 1С v8.3 Бухгалтерский учет 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Обработка для обмена платежными документами в формате xml для системы Федерального казначейства "Электронный бюджет" из конфигураций 1С. Поставляется в двух вариантах для БП 3.0 и КА 2.х/ERP 2.х

15000 руб.

14.10.2020    58966    349    101    

277
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. mikitondom 23 18.08.20 21:17 Сейчас в теме
Отличный разбор и эффект.
Еще бы как то порешать проблему транзакций обмена при записи-
пробитии чека..)
+
2. user594182_igorhi 20.09.20 07:40 Сейчас в теме
Здравствуйте.
Устанавливать через Администрирование\Инернет-сервисы...\Обновление программ...\Обновление из файла...?
Выскочила ошибка:

При установке исправления хасУскорениеПоискаПоМарке произошла ошибка:

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

Это нормально, правильно?
+
4. markers 274 30.09.21 03:22 Сейчас в теме
(2) Нормально и правильно, так как у вас базовая версия. Установка расширений конфигураций сторонних, возможно только в версии ПРОФ
+
3. Stason13 10.11.20 18:59 Сейчас в теме
Для сигарет такого нет?))
+
5. CrimeanWind 17.12.21 15:34 Сейчас в теме
С вами можно связаться по поводу расширения при закрытии чека и при сканировании в РМК, доработать под новую розницу? Нужно срочно, оплата соответственно. Спасибо
+
6. kote 536 25.08.22 16:48 Сейчас в теме
(0)

Вы серьёзно нарушили логику работы запроса.

Как только возникнет ситуация, когда марки в базе нет - ваш запрос вернёт неверную (первую попавшуюся) акцизку..

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

Ошибка тут:

    #Удаление // Было - верни акцизку, не привязанную к организации..
    |        ПО ШтрихкодыУпаковок.АкцизнаяМарка = АкцизныеМаркиЕГАИС.АкцизнаяМарка
    |        И ШтрихкодыУпаковок.ОрганизацияЕГАИС <> АкцизныеМаркиЕГАИС.ОрганизацияЕГАИС
    #КонецУдаления
    #Вставка // Стало - верни первую акцизку, привязанную к организации.
    |        ПО ШтрихкодыУпаковок.ОрганизацияЕГАИС = АкцизныеМаркиЕГАИС.ОрганизацияЕГАИС
    |        И ШтрихкодыУпаковок.АкцизнаяМарка <> АкцизныеМаркиЕГАИС.АкцизнаяМарка
    #КонецВставки

Показать
+
7. RocKeR_13 1321 25.08.22 17:29 Сейчас в теме
(6) Добрый день! Спасибо за внимательность, действительно, в этой части запроса порядок условий поменял, а вот знаки сравнения оставил прежними.
+
8. kote 536 26.08.22 07:43 Сейчас в теме
(7) думаю, что как только исправите ошибку - запрос начнёт тормозить как и раньше.

Тормоза возникают там по другой причине - условие <> приводит сканированию без индекса, мне кажется..

Тут лучше полностью заменить запрос - отобрать сначала все записи в временную таблицу по условию равенства Акцизки,
потом уже отобрать с организацией ЕГАИС и без (надеюсь, понятно обьяснил)

Если будете тестировать -- отпишитесь, пожалуйста, как стало, любопытно )
+
9. kote 536 26.08.22 08:54 Сейчас в теме
(8) .. или закомментировать:
	|		И ШтрихкодыУпаковок.ОрганизацияЕГАИС <> АкцизныеМаркиЕГАИС.ОрганизацияЕГАИС

в предпоследней строчке,
и поменять в последнем запросе
ОБЪЕДИНИТЬ ВСЕ

на
ОБЪЕДИНИТЬ

чтобы не двоилось..
+
Оставьте свое сообщение