Где баланс между производительностью и возможностями программы ? Исправление автоподбора контрагента в УНФ

27.08.21

База данных - HighLoad оптимизация

Как и у многих ко мне стали поступать обращения от менеджеров о медленной работе 1с (эта ваша один с не дает нормально работать), и чтоб быть объективным, и не основываться на человеческом, субъективном восприятии решил вооружиться цифрами, а именно произвести анализ медленных запросов, и проблема была найдена, где я ее не ожидал.

Файлы

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

Наименование Скачано Купить файл
Оптимизация автоподбора контрагента
.cfe 8,71Kb
0 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Сидишь такой на своем хорошем компьютере, в офисе, с быстрым каналом, с полными правами и работаешь в программе, и все у тебя хорошо, и не знаешь, что где то сейчас плачет менеджер, который сидит на удаленке, через vpn, и открывает программу через браузер) еще и RLS добавляется.

И как же помочь, чтоб ему жилось чуточку лучше.

Как известно в большинстве своем причиной медленной работы 1с являются запросы, их и решено было проанализировать, для этого был использован инструмент из арсенала Гилева, не рекламы ради пара хвалебных слов:

  1. Из коробки с минимум настроек получаем готовый инструмент для анализа запросов, не нужно вдаваться в подробности настройки технологического журнала, и искать инструменты визуализации ТЖ.
  2. Для моей задачи вполне хватило бесплатного режима.

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

 

 

За явным преимуществом выигрывает запрос, указанный на скрине, вес которого значительно больше остальных, длительность запроса доходила до 30 сек. Приложу текст запроса, который в итоге идет к базе для наглядности, там просто мнооооого букв).

 

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

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

 

Если ознакомиться с запросом мы увидим широкие возможности по поиску контрагента, вот тебе стандартные наименование или ИНН, а также  код, различные контактные данные, но на сколько часто вам нужны все варианты поиска в таком месте?

Для нас в 99% случаев поиск контрагента идет по наименованию или ИНН, и если и надо изредка найти контрагента по другим полям не поленимся откроем форму выбора контрагента.

Исходя из этого для оптимизации было сделано 2 шага:

1. Задана минимальная длинна строки в 4 символа при котором начинается поиск.

2. Максимально обрезан запрос, оставлено только необходимое для нас, вот что осталось

 

В итоге данная операция стала занимать меньше 3 секунд, в трассировке он больше не всплывает.

Данное поведение было выявлено в конфигурации УНФ 1.6.24.92, БД Postgre.

Во вложении расширение, которое реализует описанные исправления, если вдруг кому тоже доставляет неудобства данная операция

P.S

Повторю вопрос в заголовке, где баланс между производительностью и возможностями программы?

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

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Адаптация типовых решений 1С v8.3 1С:Документооборот Россия Платные (руб)

Расширение конфигурации для «1С:Документооборот КОРП», редакция 3.0. позволяет: 1.использовать произвольные табличные части в качестве дополнительных реквизитов к документу; 2 использовать произвольные табличные части в шаблонах в формате docx для автоматического заполнения таблиц.

31800 руб.

29.06.2023    9219    27    15    

36

Банковские операции Адаптация типовых решений Бухгалтер Пользователь 1С v8.3 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

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

9600 руб.

17.06.2025    1259    3    0    

3

Логистика, склад и ТМЦ Адаптация типовых решений Пользователь 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Платные (руб)

Чтобы не допустить путаницы с обещаниями клиентам и для четкого контроля исполнения заказов мы используем резервирование товаров. Мы доработали УНФ, чтобы она автоматически отменяла старые резервы и не мешала эффективно продавать.

9000 руб.

02.08.2023    5964    21    5    

37

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

Расширение позволяет вывести в табличном документе факсимиле печати и подписей и/или вывести произвольную картинку из прикреплённых файлов организации для 1С УТ 11.5, КА 2.5, ERP 2.5, УНФ 3, Розница 3. Вывод факсимиле возможен в табличные документы УПД, УКД, Счёт-фактура, ТОРГ-12 и другие. Возможно настроить вывод для любых типовых макетов (Акт сверки, М-15, ТТН), для этого потребуется отредактировать макет и разместить на нём картинки с соответствующими именами, при выводе на печать в размещённые картинки будут выводиться факсимиле из прикреплённых рисунков. Редактирование осуществляется через типовой механизм в пользовательском интерфейсе.

3500 руб.

07.02.2023    10042    99    17    

57

Инструментарий разработчика Рефакторинг и качество кода Программист 1С v8.3 Бесплатно (free)

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

12.02.2025    11108    666    wonderboy    49    

137

Адаптация типовых решений Бухгалтер 1С v8.3 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бюджетный учет Платные (руб)

Разработка для упрощения процедуры передачи данных о выплатах для конфигурации 1С:ЗиКГУ. Данное расширение предоставляет возможность экспортировать данные «Распоряжения» непосредственно из документа "Ведомость в банк" в формате XML.

3840 руб.

13.11.2024    2145    3    4    

4

Рефакторинг и качество кода 1С v8.3 Бесплатно (free)

Поделюсь своим опытом аудита кода авторских продуктов с Infostart.ru как одним из элементов применения DevOps-практик внутри Инфостарт. Будет настоящий код, боевые скриншоты, внутренние мемы от команды ИТ-лаборатории Инфостарт и прочее мясо – все, что любят разработчики.

10.04.2024    17218    artbear    89    

112
Для отправки сообщения требуется регистрация/авторизация