Ошибка «1с:enterprise integrity violation»
Сегодня примерно с 12:00 у многих пользователей 1С начали возникать ошибки «1с:enterprise integrity violation» («Обнаружено нарушение целостности системы») и «На сервере 1С:Предприятия произошла неисправимая ошибка» в Бухгалтерии предприятия. Данные ошибки вызваны не проверкой лицензионности продукта, как многие считают, а багом 1С.
Причина ошибки «1с:enterprise integrity violation»
Изначально многие считали, что 1С начала очередную попытку заблокировать работу пиратских версий 1С. Ошибка «1с:enterprise integrity violation» возникала у всех в разное время, на разных платформах и конфигурациях. Закономерность сразу определить не получилось. Изучив логи и временные файлы стало понятно, что это не очередная попытка 1С заблокировать пиратские версии, а просто баг.
Открыв просмотр событий Windows, можно заметить, что вылет 1С:Предприятия происходил из-за файла v8_xxx_xx.1CBarcodWin64_9_0_12_13.dll, который располагался в папке C:\Users\USR1CV8\AppData\Local\Temp\.
Данный файл появляется там во время работы в 1С. Скорей всего разработчики выпустили обновление модуля работы со штрихкодами, которое не устанавливается или не догружается с серверов 1С. В следствии этого происходит сбой сервера 1С и он перезапускается с ошибкой «На сервере 1С:Предприятия произошла неисправимая ошибка» или «1с:enterprise integrity violation».
Исправляем ошибку «1с:enterprise integrity violation»
Внимание! Дальше будет описано временное решение проблемы. Оно позволяет запустить и работать в 1С, но ошибка может все равно возникать при выполнении каких-нибудь действий. Например, ошибка может возникать при печати счета физическому лицу.
Если работа с баркодами необходима переходите к следующему разделу Решение с сохранением работы баркодов.
Мы уже выяснили, что ошибка возникает при обращении к файлу v8_xxx_xx.1CBarcodWin64_9_0_12_13.dll, который связан с модулем работы со штрихкодами. Компонента генерации изображений штрихкода подгружается в 1С при запуске 1С:Предприятия. Для ее отключения необходимо внести изменения в конфигурацию.
Запускаем Конфигуратор и открываем конфигурацию проблемной базы. Находим в конфигурации ОбщиеМодули - МенеджерОборудованияКлиент
.
Открываем Модуль и закомментируем строку:
МенеджерОборудованияВызовСервера.ПодключитьКомпонентуГенерацииИзображенияШтрихкода();
Или можете подключить следующее расширение в базу данных через Конфигуратор — Конфигурация — Расширения конфигурации, которое сделает описанные выше действия за вас. Также расширение можно добавить через Администрирование — Печатные формы, отчеты и обработки — Расширения. Ссылка на расширение ниже:
https://cloud.mail.ru/public/q1Nc/h75AQEhYX
Для исправления печати счета физическим лицам необходимо изменить функцию QRКодРеквизитыПлатежа в общем модуле ПечатьТорговыхДокументов.
В начало функции QRКодРеквизитыПлатежа необходимо написать Возврат Неопределено;. У вас должно получиться следующее:
Функция QRКодРеквизитыПлатежа(ДанныеДокумента, ДанныеПечатиЗаголовокСчета) Возврат Неопределено; РеквизитыПлатежа = ОбщегоНазначенияБП.НовыйРеквизитыПлатежаУФЭБС(); ЗаполнитьЗначенияСвойств(РеквизитыПлатежа, ДанныеПечатиЗаголовокСчета); .... КонецФункции
Решение с сохранением работы баркодов
Если вам необходимо использовать в работе баркоды, то можно воспользоваться другим расширением. Данное расширение будет использовать старую работающую компоненту баркодов.
Подключить расширение в базу данных можно через Конфигуратор — Конфигурация — Расширения конфигурации. Также расширение можно добавить через Администрирование — Печатные формы, отчеты и обработки — Расширения. Ссылка на расширение ниже:
https://cloud.mail.ru/public/yCeg/ykYqXDL54
После сохранения конфигурации остановите Агент сервера 1С:Предприятие.
Теперь необходимо очистить папки с временными файлами. На сервере очищаем следующие папки:
- C:\Program Files\1cv8\srvinfo\reg_1541 (все папки вида 0a8712bb-f98d-419e-a82f-55ab888ecc8a)
- C:\Windows\Temp
- C:\Users\USR1CV8\AppData\Local\Temp (под этим пользователем USR1CV8 запущен Агент сервера 1С, у вас может быть другое имя)
На локальных машинах или на сервере терминалов необходимо очистить папки временных файлов каждого пользователя, который работает с 1С:
- C:\Windows\Temp
- C:\Users\[имя_пользователя]\AppData\Local\Temp
- C:\Users\[имя_пользователя]\AppData\Local\1C\1cv8\ (все папки вида 3e48ee65-66f2-4a0a-8e84-caa266f6a104)
После очистки папок с временными файлами можно запустить Агент сервера и начать работу в 1С.
Для ускорения очистки папок с временными файлами всех пользователей 1С можно воспользоваться bat файлом
. Данный файл удаляет кэш 1С у всех пользователей на сервере.
Некоторым помогает создание двух папок:
- C:\Windows\Temp\4739d95c-48b5-408e-a51c-4a35d4ee8186.TMP
- C:\Users\USR1CV8\AppData\Local\Temp\4739d95c-48b5-408e-a51c-4a35d4ee8186.TMP (под этим пользователем USR1CV8 запущен Агент сервера 1С, у вас может быть другое имя)
Если вы не видите ссылки или какую-то информацию в тексте — отключите блокировщик рекламы! Спасибо за понимание.
Статьи по теме: