Почему долго пробивается чек на Википринт 80 Плюс Ф в Рознице 2.3 после обновления и как это исправить?

Системный администратор 1С v8.3 (Управляемые формы) 1С:Розница Торговля и дистрибуция
← На главную

В связи с изменениями в законодательстве (введение НДС 5% и 7% для УСН) многие организации столкнулись с необходимостью масштабного обновления программного обеспечения и прошивок кассовых аппаратов. Нередко после таких обновлений возникают проблемы с производительностью. В этой статье мы подробно разберем ситуацию, когда после обновления 1С:Розница и прошивки ККТ Википринт процесс печати чека стал занимать непозволительно много времени (10–15 секунд и более), и выясним, как вернуть кассе нормальную скорость работы.

Симптомы проблемы

Давайте проанализируем типичную ситуацию. Исходные данные таковы: используется конфигурация Розница 2.3, кассовый аппарат Википринт 80 плюс Ф. После установки обновлений (платформы, конфигурации и прошивки кассы под новые ставки НДС) кассиры начинают жаловаться на следующие симптомы:

  1. При нажатии кнопки "Оплата" в РМК (Рабочем месте кассира) система "задумывается" на 10–15 секунд перед началом печати чека.
  2. После печати чека система снова зависает на аналогичное время перед очисткой табличной части и готовностью к новому чеку.
  3. Проблема наблюдается преимущественно на файловых базах данных.
  4. Техподдержка производителя касс утверждает, что аппарат исправен.

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

Шаг 1: Локализация проблемы через замер производительности

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

Для этого в 1С используем инструмент Замер производительности. Включив замер и выполнив проблемную операцию (пробитие чека), мы можем увидеть, какая строка кода выполняется дольше всего. В рассматриваемом нами случае анализ показал, что львиную долю времени (более 25 секунд) занимает не обращение к драйверу ККТ, а запись данных в базу:


ОбщийМодуль.ПроведениеСервер.Модуль
    Объект.Движения.Записать(); 
    // Время выполнения: 25,68 секунд

Это ключевой момент. Если тормозит метод Записать() набора записей регистра или документа, значит, проблема лежит в плоскости взаимодействия платформы 1С с базой данных или файловой системой в момент проведения транзакции.

Шаг 2: Влияние версии платформы 1С:Предприятие

В ходе анализа выяснилось, что критическим фактором является версия технологической платформы. Проблема с "фризами" при работе с торговым оборудованием (особенно через NativeAPI драйверы) на файловых базах была замечена на релизах ветки 8.3.25.

Новые механизмы работы с памятью и асинхронными вызовами в 8.3.25 могут конфликтовать с текущими версиями драйверов или особенностями файлового режима работы на не самом мощном оборудовании. Это подтверждается тем фактом, что на клиент-серверных базах с тем же оборудованием проблема может не воспроизводиться.

Решение: Самым действенным методом устранения проблемы является откат (downgrade) платформы на стабильную ветку, например, на версию 8.3.24. Практика показала, что возвращение на 24-ю платформу полностью устраняет задержки при пробитии чека на том же самом оборудовании и той же конфигурации.

Шаг 3: Обслуживание базы данных после крупного обновления

Если вы обновляли конфигурацию "скачками" (например, пропустили 10-20 релизов и обновились сразу на актуальный), размер базы данных может существенно вырасти, а индексы таблиц могут стать неоптимальными. Это усугубляет проблему производительности.

Даже если смена платформы решила вопрос с зависанием кассы, мы настоятельно рекомендуем выполнить регламентные операции с базой данных, особенно если она файловая и занимает более 10 Гб.

Запустите конфигуратор и выполните Тестирование и исправление. Рекомендуем выполнять операции последовательно (не все галочки сразу), чтобы не нагружать систему и контролировать процесс:

  1. Пересчет итогов. При обновлении структура регистров могла измениться, и некорректные итоги могут тормозить проведение документов.
  2. Реиндексация таблиц информационной базы. Это ускорит поиск данных и запись.
  3. Реструктуризация таблиц информационной базы. Поможет устранить скрытые ошибки в структуре таблиц.
  4. Сжатие таблиц информационной базы. Это уменьшит физический размер файла 1Cv8.1CD и снизит нагрузку на дисковую подсистему.

Дополнительные факторы оптимизации для Viki Print

Помимо проблем с платформой 1С, существуют специфические настройки для фискальных регистраторов Дримкас (Viki Print), которые могут влиять на скорость печати. Рассмотрим их:

1. Отключение логирования драйвера
Проверьте настройки драйвера ККТ. Если включено подробное логирование, драйвер пишет огромные объемы текста в лог-файл при каждой операции. На слабых компьютерах (особенно с медленными HDD или старыми SATA SSD) и процессорах уровня AMD Athlon это вызывает ощутимые задержки. Отключите логирование или снизьте его уровень до "Только ошибки".

2. Настройка антивируса
Поскольку замер производительности показал зависание на записи в базу, убедитесь, что антивирус не блокирует файл базы данных в момент изменения. Добавьте в исключения антивируса:

3. Интерфейс подключения
Если касса подключена через USB с эмуляцией COM-порта, попробуйте перенастроить подключение через Ethernet (TCP/IP), если модель кассы это позволяет. Подключение по сети часто работает стабильнее и быстрее, чем эмуляция COM-порта, которая чувствительна к прерываниям.

Резюме

Если после обновления на НДС 5/7% ваша касса Википринт стала работать медленно, а 1С:Розница зависает при проведении чека, выполните следующие действия:

  1. Сделайте замер производительности. Если долго выполняется Записать() — проблема программная.
  2. Проверьте версию платформы 1С. Если установлена 8.3.25 и база файловая — установите платформу 8.3.24. В большинстве случаев это решает проблему.
  3. Выполните "Тестирование и исправление" базы данных (реиндексация, пересчет итогов, сжатие), чтобы устранить последствия обновления конфигурации.
  4. Проверьте настройки антивируса и отключите избыточное логирование в драйвере ККТ.
← На главную