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

27.08.21

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

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

Скачать файл

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

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

Сидишь такой на своем хорошем компьютере, в офисе, с быстрым каналом, с полными правами и работаешь в программе, и все у тебя хорошо, и не знаешь, что где то сейчас плачет менеджер, который сидит на удаленке, через 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 для автоматического заполнения таблиц.

29400 руб.

29.06.2023    6745    18    9    

28

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

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

7200 руб.

02.08.2023    4743    18    1    

36

Печатные формы Адаптация типовых решений Бухгалтер Пользователь Платформа 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, ТТН), для этого потребуется отредактировать макет и разместить на нём картинки с установленными именами. Редактирование осуществляется через типовой механизм в пользовательском интерфейсе.

3000 руб.

07.02.2023    7530    84    17    

40

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

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

10.04.2024    14522    artbear    85    

109

HighLoad оптимизация Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Обработка для простого и удобного анализа настроек, нагрузки и проблем с SQL сервером с упором на использование оного для 1С. Анализ текущих запросов на sql, ожиданий, конвертация запроса в 1С и рекомендации, где может тормозить.

2 стартмани

15.02.2024    13493    268    ZAOSTG    87    

117

HighLoad оптимизация Системный администратор Программист Бесплатно (free)

При переводе типовой конфигурации 1C ERP/УТ/КА на PostgreSQL придется вложить ресурсы в доработку и оптимизацию запросов. Расскажем, на что обратить внимание при потерях производительности и какие инструменты/подходы помогут расследовать проблемы после перехода.

20.11.2023    14978    ivanov660    7    

83
Оставьте свое сообщение