Ускорение закрытия месяца в ERP на postgres
Задачи пользователя - Закрытие периода
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Клиент обратился с жалобой, что в ERP медленно закрывался месяц.
- Платформа: 8.3.22.2283
- Конфигурация: Управление предприятием, версия: 2.5.12.80
Начало расчета: 16.02.2024 19:27:10, длительность: 4 ч. 55 мин. 7,622 сек.
Симптом в медленном создании таблицы СуммыРасходов:
60. Партионный учет: ПодготовкаДанныхДляРешенияСЛУПостатейныеРасходы
Начало этапа: 04.12.2023 21:22:14, длительность: 2 ч. 13 мин. 21,865 сек. (38,85%)
Время от начала расчета до начала этапа: 2 ч. 22 мин. 36 сек.
Сформированы временные таблицы (размер / время (% времени этапа) / уточнение / исходные таблицы):
- СуммыРасходов:
- 884 / 1 ч. 4 мин. 20,519 сек. (48,25%)
В интернете гуглится, но решения не "коробочное":
//infostart.ru/1c/articles/1814630/
https://habr.com/ru/articles/706610/
Суть проблемы в том, что в запросах нарушена "метода" от 1С.
Рекомендации
При написании запросов не следует использовать соединения с подзапросами.
Были оптимизированы два самых медленных запроса. В одном подзапрос был в правой части соединения, а во втором был вложенный запрос с большим количеством записей.
В результате время зарытия месяца уменьшилось в 2 раза.
Начало расчета: 20.02.2024 10:11:22, длительность: 2 ч. 31 мин. 45,191 сек.
61. Партионный учет: ПодготовкаДанныхДляРешенияСЛУПостатейныеРасходы
Начало этапа: 26.02.2024 13:35:51, длительность: 10 мин. 50,321 сек. (8,86%)
Время от начала расчета до начала этапа: 55 мин. 54 сек.
Сформированы временные таблицы (размер / время (% времени этапа) / уточнение / исходные таблицы):
- кс_ДД:
- 12 510 / 0,879 сек. (0,14%)
- СуммыРасходов:
- 884 / 0,047 сек. (0,01%)
Во вложении готовое для внедрения решение в виде расширения.
Проверено на следующих конфигурациях и релизах:
- 1С:ERP Управление предприятием 2, релизы 2.5.12.80
Вступайте в нашу телеграмм-группу Инфостарт