В процессе эксплуатации кассового программного обеспечения, такого как «Штрих-М: Бармен», пользователи часто сталкиваются с критическим снижением быстродействия. Система начинает «зависать» на десятки секунд при выполнении простых операций: отмене подбора позиций, открытии документа или подготовке к печати чека. Также может наблюдаться длительное ожидание при входе в программу, сопровождающееся сообщениями о чтении транзакций. Давайте разберемся, почему это происходит и как исправить ситуацию.
Основной причиной подобных проблем является переполнение таблицы Справочник.Транзакции. В архитектуре «Штрих-М» эта таблица выполняет роль оперативного лога всех действий кассира. Со временем, если не производится регулярная очистка, объем данных в этой таблице достигает таких размеров, что платформа 1С при каждом обращении вынуждена выполнять тяжелые операции чтения и переиндексации огромного массива информации.
В файловом варианте базы данных (формат .1CD) ситуация усугубляется тем, что удаление объектов (даже если они помечены на удаление) не приводит к физическому уменьшению размера файла. Внутри структуры базы образуются «пустоты» и фрагментация, из-за чего файловая система вынуждена постоянно искать данные в «раздутом» файле.
Самым эффективным и проверенным способом восстановления быстродействия является процедура «Сжатие таблиц информационной базы». Эта операция дефрагментирует файл базы данных, физически удаляет накопленные «дыры» и перестраивает индексы, что позволяет системе снова работать корректно.
Разберем по шагам, как правильно выполнить эту процедуру:
.1CD обязательно создайте полную копию файла. Это критически важное правило для предотвращения потери данных в случае сбоя оборудования или ошибки при сжатии.Конфигуратор. Перейдите в меню Администрирование — Тестирование и исправление.Сжатие таблиц информационной базы. Остальные проверки (логическая целостность, пересчет итогов) можно оставить по необходимости, но для решения нашей задачи с производительностью критически важно именно сжатие.Выполнить. В зависимости от объема базы и мощности компьютера, процесс может занять от нескольких минут до нескольких часов. Дождитесь завершения и не прерывайте операцию принудительно.После того как вы привели базу в порядок, необходимо настроить процесс её обслуживания. Нельзя допускать, чтобы справочник транзакций бесконечно рос. Рассмотрим рекомендации, которые помогут вам избежать проблем в будущем:
MS SQL Server вместо файлового варианта. SQL-версия позволяет выполнять регламентные операции по обслуживанию базы (обновление статистики, реиндексация) в автоматическом режиме без остановки работы кассиров.Таким образом, мы выяснили, что периодическое сжатие таблиц информационной базы является обязательной процедурой для корректной работы систем с такой архитектурой. Это позволяет устранить последствия накопления «мусорных» данных и вернуть систему в рабочее состояние.