Почему при печати чека в 1С возникает ошибка «none is not a valid integer value» и как ее исправить?

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

Если при попытке пробить чек на онлайн-кассе вы сталкиваетесь с ошибкой none is not a valid integer value, это означает, что возник конфликт между обновленной конфигурацией 1С и установленными на компьютере библиотеками драйверов торгового оборудования. Давайте разберем, почему это происходит и как устранить неисправность, чтобы работа кассы была восстановлена.

Причина возникновения ошибки

В процессе перехода на работу по 54-ФЗ и обновления конфигураций 1С, правила передачи данных о ставках НДС были изменены. Современные версии конфигураций при формировании чека передают значение none для ставки «Без НДС». Однако, если в вашей системе осталась старая версия динамической библиотеки (DLL), она не «понимает» значение none, так как ожидает получить строго числовое значение (integer). Попытка преобразования приводит к программному сбою.

Пошаговое руководство по исправлению

Простое обновление конфигурации не всегда перезаписывает файлы драйверов, так как 1С активно использует кеширование компонентов. Рассмотрим наиболее эффективные способы решения данной проблемы.

Способ 1: Очистка локального кеша драйверов

Это самый надежный способ, который позволяет заставить 1С «забыть» старые версии библиотек и переустановить их корректно:

  1. Закройте приложение 1С на клиентской машине.
  2. Перейдите в директорию профиля пользователя: C:\Users\ИМЯ_ПОЛЬЗОВАТЕЛЯ\AppData\Roaming\1C\.
  3. В этой папке вы найдете директории 1cv8 или 1cv82. Зайдите в них и найдите папку ExtCompT.
  4. Удалите папку ExtCompT (в ней хранятся скомпилированные драйверы, которые могли устареть).
  5. Дополнительно рекомендуется очистить кеш самой 1С, удалив или переименовав папки с идентификаторами баз внутри 1cv8.
  6. Запустите 1С, зайдите в раздел Администрирование — Подключаемое оборудование.
  7. Найдите вашу кассу, откройте настройки и нажмите кнопку Установить драйвер.

После этих действий 1С принудительно выгрузит актуальные версии файлов драйверов, соответствующих обновленной конфигурации.

Способ 2: Синхронизация версий обработок обслуживания

Даже если сам драйвер (DLL) обновлен, проблема может крыться в версии обработки обслуживания, которую использует 1С. Поддержка ставки none (Без НДС) реализована в обработках версии 1.50 и выше.

Рассмотрим порядок действий для проверки:

Важные рекомендации при работе в многопользовательском режиме

Если вы работаете в терминальном режиме или у вас несколько операторов, использующих одну и ту же кассу, помните следующее:

Драйверы устанавливаются индивидуально для каждого профиля пользователя. Это означает, что процедуру очистки папки ExtCompT необходимо проводить для каждого пользователя, работающего на данном рабочем месте. Если у одного оператора ошибка исчезла, а у другого осталась — это явный признак того, что в его профиле сохранились старые файлы в AppData.

Как проверить успешность обновления

После выполнения вышеописанных действий попробуйте совершить пробную операцию пробития чека. Если система выдает ошибку, проверьте, какая версия драйвера подтянулась в систему. Вы можете проанализировать лог-файлы работы торгового оборудования, чтобы убедиться, что 1С больше не обращается к старым библиотекам.

Использование официальных версий драйверов (например, от компании АТОЛ, версий 8.14.х и выше) в сочетании с очисткой кеша ExtCompT гарантированно решает проблему несовместимости типов данных при передаче ставки НДС.

Помните, что порядок действий критически важен: сначала обновляется платформа и конфигурация 1С, затем выполняется очистка локальных временных файлов, и только потом происходит повторная инициализация драйверов через интерфейс программы. Такой комплексный подход позволит вам избежать повторного появления ошибки none is not a valid integer value.

← На главную