В своих прошлых публикациях я уже описывал способы оптимизации некоторых процедур из типовых конфигураций.
На этот раз "жертвой" стал давно уже раздражающий своей медлительностью отчет и, по-совместительству, печатная форма "Унифицированная форма Т-13".
Файлы
ВНИМАНИЕ:
Файлы из Базы знаний - это исходный код разработки.
Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы.
Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных.
Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Наименование
Скачано
Купить файл
По подписке PRO
Внешний отчет "Унифицированная форма Т-13" (оптимизированный)
Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
0% комиссии — оплата напрямую исполнителю;
Исполнители любого масштаба — от отдельных специалистов до команд под проект;
Прямой обмен контактами между заказчиком и исполнителем;
Безопасная сделка — при необходимости;
Рейтинги, кейсы и прозрачная система откликов.
Вдаваться в подробности не буду - процесс поиска причин медленной работы и порядок оптимизации проблемных процедур полностью аналогичен изложенному в статье "Одна из причин медленной работы табеля".
Если коротко, то анализ статистики СУБД показал на узкое место в отчете Т-13. Все потенциально сложные для оптимизатора SQL вложенные запросы в отчете были преобразованы во временные таблицы (иногда с индексацией).
В результате доработки на моей базе время обработки тестовой выборки уменьшилось с ~600 до ~50 секунд, т.е. было получено приблизительно 12-кратное ускорение.
Если интегрировать доработанный отчет непосредственно в базу, то изменения затронут также и печатную форму "Т-13". В данном случае наблюдалось ускорение от 2х до 5x, т.к. в этом случае не задействуется запрос из схемы компоновки данных.
ЗУП 2.5.101.2 (8.2.19.83), MS SQL Server 2005 (9.00.4053.00, 64-bit)
(аналогичные результаты в вашей рабочей среде не гарантируются, например, у меня в аналогичной базе, но на 10-ой версии SQL-сервера результат был не такой впечатляющий, приблизительно 2x)
Модуль или расширение «Сервисный центр для 1С» позволяет принимать в ремонт оборудование (компьютеры, бытовая техника и т.п.), оформлять заявки инженеров на посещение клиентов и вести начисление заработной платы для сотрудников. Позволяет наладить автоматизированный учет в сервисном центре на уже существующей базе.
Внешняя обработка, позволяет пакетно создать шаблоны по подразделениям для заполнения табеля в Excel, после чего загрузить заполненные шаблоны в документы ЗУП "Табель учета рабочего времени", «Данные для расчета зарплаты». Поддерживается заполнение до 6 видов рабочего времени. Тестировалась на ЗУП 3.1.25.40. Подключается как дополнительная внешняя обработка. Необходима версия платформы с 8.3.18.
Конфигурация является реализацией системы контроля и управления доступом. Она успешно применяется в различных организациях для учета рабочего времени, анализа опозданий и переработок. С помощью отчетов, есть возможность проанализировать соблюдение сотрудниками трудовой дисциплины. Программа для своей работы не требует дорогого оборудования, достаточно обыкновенного сканера. Проста в настройке и использовании.
Программа для автоматизации учета путевых листов в 1С - расширение, добавляющее в конфигурацию "ERP", документ Путевой лист и печатные формы установленных образцов для легковых и грузовых авто, расчет и списание нормативного количества топлива, отчет "Реестр путевых листов" с отбором по автомобилю и по водителю (через настройки) Позволит контролировать расход топлива, потому что сразу будет виден сверхнормативный расход.
а если вместо
ГрафикиРаботыПоВидамВремени.ГрафикРаботы В
(ВЫБРАТЬ ГрафикРаботы ИЗ ВТГрафикиРаботыОтбор)
использовать
| внутреннее соединение ВТГрафикиРаботыОтбор как ВТГрафикиРаботыОтбор
| по ГрафикиРаботыПоВидамВремени.ГрафикРаботы= ВТГрафикиРаботыОтбор.ГрафикРаботы