«Обнаружено нарушение целостности системы» такую ошибку увидели многие пользователи при входе в 1С. Ошибка вызвана тем, что в декабре 2017 года 1С выпустили платформы с версиями 8.3.10.2699 и 8.3.11.2899, в которые внедрили механизм проверки легальности программы.

Если версия вашей платформы 1С выше 8.3.10.2699 или 8.3.11.2899, то при работе с файловой базой данных вы скорей всего получите ошибку «Обнаружено нарушение целостности системы». Данная ошибка возникает даже если у вас лицензионная версия 1С.

Почему возникает ошибка «Обнаружено нарушение целостности системы»?

Давайте разберемся почему возникает ошибка. Механизм проверки легальности 1С построен по следующему принципу. При запуске 1С и входе в базу данных программа делает несколько проверок:

  • изменен файл backbas.dll (проверяется контрольная сумма)
  • установлены ли эмуляторы
  • наличие в реестре записей от эмуляторов

При обнаружении нелегальной версии (возможно просто неправильно установленной программы) 1С выдает ошибку и дает на выбор «Завершить работу» или «Перезапустить» 1С.

При просмотре подробностей никакой дополнительной информации мы не получим.

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

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

Как избавиться от ошибки «Обнаружено нарушение целостности системы»

Есть несколько способов побороть данную ошибку.

Откатить версию 1С:Предприятие до более ранней. Последние версии, которые работают без проверки файла backbas.dll и эмуляторов 8.3.10.2667 и 8.3.11.2867 . Это решение временное, т.к. рано или поздно выйдет конфигурация, которая не будет работать в данных версиях.

Удалите эмулятор HASP. Эмуляторов существует много поэтому трудно написать универсальную инструкцию по их удалению. Можете попробовать воспользоваться следующими шагами:

  1. Найдите и удалите файлы VUsb.sys и vusbbus.sys
  2. Выполните команды в командной строке от имени Администратора:
    loaddrv.exe -stop haspflt
    loaddrv.exe -remove haspflt
    del %systemroot%\system32\drivers\haspflt.sys
    Рекомендуется удалить также ветки реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\haspflt ­\
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Emulato ­r
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Emu

Ну и на крайний случай rbc_icp патчер (Integrity Check Patcher). Если у вас есть лицензионный ключ для 1С, а USB разъемы вам жизненно необходимы, то можете воспользоваться нелегальным способом. Данный патч отключает проверку целостности системы в последних версиях 1С:Предприятия, где она внедрена.

Патч изменяет следующие файлы:

  • backbas.dll (используется унипатч 1c8_UP.exe)
  • frntend.dll (отключение проверки целостности в толстом клиенте)
  • mngcln.dll (отключение проверки целостности в тонком клиенте)

Есть еще вариант нелегального обхода проверки. Любым hex-редактором открываете файл backend.dll (если у вас версия 8.1) или backbas.dll (если у вас версия 8.2,8.3) из каталога bin в каталоге с установленной 1C, ищете HEX-значения: 100000FFD085C00F8208F8FEFF0F8416 и заменяете 85 на 31.

Информация в конце статьи предоставлена исключительно для ознакомления и не призывает к противоправным действиям!

UPD. 15/01/2019

Скрипт для удаления VUSBBUS и HASPFLT
Код:

@echo off
setlocal enableextensions disabledelayedexpansion

for %%a in (vsubbus haspflt) do call:CheckDriver %%a
pause
goto:eof

:CheckDriver
sc query %1|find /i “KERNEL_DRIVER”>nul
if errorlevel 1 goto:DelSYS
sc stop %1
sc delete %1
:DelSYS
del /f /q “%SystemRoot%\system32\drivers\%1.sys”
goto:eof

Обычно ошибка возникает когда в процессе сохранения конфигурации, был сбой. В результате Конфигурация сохранилась не корректно.

1. Попробовать проверить через тестирование и исправление или ChDBFl.exe
2. Посмотрите следующие варианты решения проблемы:

В некоторых случаях помогает полная очистка КЭША, В ОС Windows 7 находиться C:\Users\Администратор\AppData\Roaming\1C\1Cv82 и C:\Users\Администратор\AppData\Local\1C\1Cv82 (Win7x64).

или подробнее:
1. Необходима чистая конфигурация той же версии — рабочая.
2. Очиста кеша полная (указано выше).
3. Запускаем чистую базу в режиме конфигуратора и открываем конфигурацию. При этом 1С создает ее кеш в C:\Users\Администратор\AppData\Local\1C\1Cv82 (набор файлов и папок в папке с ID конфигурации.) так же нам нужен кеш C:\Users\Администратор\AppData\Roaming\1C\1Cv82. Можно просто переименовать данные папки после закрытия 1С.
4. Запускаем наш не рабочую базу в режиме конфигуратора и смотрим кеш. И в результате имеем две папки с ID конфигурации (Живой и Мертвой).
5. Закрываем все и подменяем кеш мертвой конфы на живую полностью. Т.е. удаляем текущую и заменяем ранее переименованной папкой.
6. Запускаем не рабочую базу в режиме конфигуратора И ВОТ первый успех — дерево конфигурации открыто, разделы меню управления конфигурацией активны.
7. Идем в управление поддержкой, и снимаем с поддержки полностью. сохраняем, обновляем. Можно обновить через файл конфигурацией рабочей базы.
8. Удалем кеш полностью.
9. Запускаем не рабочую базу в режиме конфигуратора, пытаемся открыть конфигурацию — все открывается, ошибки нет.
10. Запускаем 1С. Все доступно. Данные на месте.

Было такое же сообщение когда динамически обновил конфигурацию центральной базы и сделал обмен на переферийной и на переферийной появилось подобное сообщение.
1. Т.к. в конфигуратор на переферийной вообще не пускался, то пришлось удалить папку C:\Documents and Settings\Admin\Application Data\1C\1Cv81.
2. Зашел в конфигуратор и выбрал Конфигурация — Конфигурация базы данные — Вернуться к конфигурации БД.
3. ГлавныйУзел установил неопределено.
4. Конфигурация — Загрузить конфигурацию из файла (центральная конфигурация).
5. ГлавныйУзел установил необходимый.

У меня возникла похожая ситуация, но на 8.1. При динамическом обновлении конфигурации видимо произошел сбой, после чего попытка выгрузить и как Основную конфу и конфу БД при дальнейшей попытке загрузить файл в локальную базу вываливалось «нарушена целостность структуры конфигурации». Но БД работоспособна. Ни тестирование и исправление ни ChDBFl.exe ничего не дали.

Селал бекап рабочей базы и загрузил его в чистую базу. Добавил план обмена
http://kb.mista.ru/article.php?id=7
и создал Начальный образ. В БД образа конфигурация исправилась.

Если не поможет могу посоветовать вариант к которому хотел прибегнуть сам:
1. найти ближайший релиз конфигурации, загрузить его в чистую БД (восстанавливаемую).
2. создать совершенно чистую БД (промежуточную)
3. открыть конфигуратор испорченной БД.
4. скопипастить модули и объекты, в которых происходили изменения с последнего релиза (в моем случае намного проще, поскольку изменения происходили только в модулях и формах, структура данных осталась прежней а все изменения документируются постерами) из испорченной БД в промежуточную.
5. Выгрузить промежуточную конфигурацию.
6. Объеденить ее с восстанавливаемой БД.
7. Выгрузить восстанавливаемую конфигурацию в файл.
8. Загрузить в испорченную БД конфигурацию из восстанавливаемой.

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


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

Мой вариант решения — заменить конфигурацию поставщика нашей базы.
Последовательность действий следующая:
1. Удалить конфигурацию поставщика путём снятия с поддержки(Конфигурация->Поддержка->Настройка поддержки->Снять с поддержки)
2. Создаем файл поставки конфигурации(Конфигурация->Поставка конфигурации->Создать файлы поставки и обновления конфигурации). Файл при этом назовем work файл поставки.cf
3. Объединяем нашу конфигурацию с только что созданным файлом поставки(Конфигурация->Сравнить, объединить с конфигурацией из файла). При этом появится предложение вновь поставить конфигурацию на поддержку
В появившемся окне сравнения конфигураций нажимаем «Выполнить»,
4. Обновляем конфигурацию базы данных(Конфигурация->Обновить конфигурацию базы данных).
Поидее, выполняя данные действия, мы реструктуризовали конфигурацию поставщика.
Теперь можно попробовать обновить нашу конфигурацию до следующей версии в обычном режиме.

Ошибка «Нарушена целостность структуры конфигурации» является достаточно распространенным случаем ошибки в 1С 8.3 при обновлении или других ситуациях. Рассмотрим причину возникновения и пути решения данной ситуации.

Получите 267 видеоуроков по 1С бесплатно:

Причины ошибки и её исправление

Данная проблема чаще всего возникает при обновлении конфигурации базы данных (особенно для динамического обновления 1С 8.3), при формировании отчета, при проведении документа и так далее. Бывают случаи, что ошибка появляется «из воздуха». Встречается как в файловых базах, так и в клиент-серверных SQL вариантах.

Вариантов решения несколько (перед любыми действиями сделайте резервную копию базы данных):

  1. Почистить временные файлы (). Как правило, помогает, если ошибка возникает только у одного пользователя.
  2. Если конфигуратор базы открывается, попробуйте совершить базы данных. Если не открывается, сделайте это с помощью утилиты chdbfl.exe (только для файловых БД). chdbfl.exe расположена в папке с программой, например, C:\Program Files (x86)\1cv8\8.3.4.389\bin).
  3. Для клиент-серверной базы, которая установлена на SQL сервере, можно попробовать воспользоваться запросом «delete * from configsave».
  4. Если конфигуратор доступен, попробуйте выгрузить и загрузить базу данных.
  5. Поставьте новую платформу 1С 8.3: некоторые ошибки могут быть исправлены в более новых выпусках технологической платформы.
  6. Если вышеперечисленные меры не помогли, скорее всего, случай сложный. Можно прибегнуть к инструкции, описанной на этой странице

При обновлении платформы 1С очень часто система выдаёт сообщение об ошибке. Рассмотрим, как исправить ошибку «Нарушена целостность структуры конфигурации при обновлении 1С».

Так выглядит ошибка о нарушении целостности структуры конфигурации


Возникновение подобной проблемы связано с разными причинами. Такое может быть при обновлении конфигурации (особенно динамической), при формировании отчётов, при попытке проведения документа и так далее. Случается её появление как бы «из воздуха»- когда никто вроде ничего не делал, а ошибка есть. Правильнее говорить в этом случае, что причина её не установлена.

Встречается она в совершенно различных платформах - в файловых базах, в клиент-серверных, пр.

Решение

Вариантов лечения целостности есть несколько (не забывайте, что перед любыми действиями нужно делать резервную копию своей базы):

  • Удалить временные файлы (читайте нашу ). Это помогает тогда, когда ошибка возникла только у одного из пользователей;
  • Если конфигуратор доступен и его можно открыть-провести тестирование её и исправление (см. ниже). Если открыть нельзя- сделать это утилитой chdbfl.exe (но только если база - файловая). Примерное расположение её: - C:\ProgramFiles(x86)\1cv8\8.3.4.389\bin);
  • Если база клиент-сервернаяи установлена на SQL сервере воспользоваться запросом «delete*fromconfigsave»;
  • При доступности конфигуратора- попробовать осуществить выгрузку и загрузку базы;
  • Некоторые ошибки исправляются в более поздних версиях платформы- установите новую платформу;

Если ни один из вариантов не принёс исправления - обратитесь к специалистам.

ВАЖНО. Хотя бы раз в неделю обязательно делайте копию!

Разберёмся с особенностями использования системной утилиты для тестирования и исправления базы.

Перед проведением любых действий сделайте резервную копию данных!

Для входа в режим тестирования/исправления зайти в конфигуратор системы, выбрать в меню - Администрирование/Тестирование-исправление.

Окно проверки и режимы

Это окно предназначено для указания списка производимых действий для работы утилиты. Опишем функции каждого из них:

Реиндексация таблиц

При установке этой опции производится реиндексация заданных таблиц. Это означает полное перестроение индексов. После такой процедуры производительность системы существенно повышается - она не будет лишней.

Логическая целостность

Эта функция проверяет логическую и структурную целостности базы, находит ошибки организации данных.

Ссылочная целостность

В этом случае информация проверяется на присутствие «битых» ссылок. Они являются следствием некорректной обработки данных - чаще всего при их удалении или обмене.

При их обнаружении есть выбор трёх вариантов операций:

  • Создавать объекты - системой создаются пустые элементы-заглушки (позднее их можно заполнить информацией);
  • Очищать ссылки-они будут очищеныпрограммно;
  • Не изменять-ссылки будут только показаны.

Пересчёт итогов

Итоги - это таблица подсчётов-результатов бухгалтерских данных. Их пересчёт увеличивает производительность.

Сжатие таблиц

Возможность сжатия и в итоге уменьшения объёма базы вызвано тем, что при удалении данных 1С не удаляет их физически. Тоесть пользователь их не видит их, но они существуют. Именно функция сжатия удаляет невидимые записи окончательно. Подобный эффект достигается выгрузкой/загрузкой файла базы (с расширениемdt).

Реструктуризация таблиц

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

Если тестирование/исправление не принесло положительного результата - воспользуйтесь приложением chdbfl.exe.

Создание резервной копии(вручную и автоматически)

Архивирование-архиважная операция, необходимая каждому пользователю, программисту, админу. Такую копиюбазы часто называют бэкапом 1С.

Наличие бэкапа помогает сохранить присутствие духа, времени, денег и много чего ещё в неожиданных и непредсказуемых ситуациях. Если кто-то вырвал шнур из системного блока, авария в электросети, потопом кофе залило компьютер, да мало ли что…

Создание бэкапа занимает до десяти минут.

Если такая ситуация произошла и вас нет бэкапа- то вы точно теперь будете его создавать!

Админы бывают двух типов: одни делают бэкап, другие - будут делать бэкап.

Выгрузка файла

Если в начальном окне программы выбрать своё предприятие и нажать указанную на рисунке кнопку, то мы войдём в 1С в режиме «Конфигуратор».

Этот режим, вообще, предназначен для разработки и администрирования. Дальше нужно в меню выбрать «Администрирование/Выгрузить информационную базу…» :

Затем нужно будет ответить системе на предложение выбора пути - куда именно должен быть выгружен файл и его название.

Об успешном проведении операции вы узнаете первым.

Восстановление резервного файла

Восстановление базы также производится из знакомого нам режима конфигуратора, но теперь уже выбираем опцию «Администрирование/ »:

Выбираем Загрузить информационную базу

Необходимо выбрать ранее сохранённый файл (с расширение мdt). Потом согласиться с предупреждением системы о потере не сохранённой информации (будет потеряна).

При успешном выполнении 1С предложит перезапуск конфигуратора.

Автоматическая архивация

Во избежание собственной забывчивости можно воспользоваться одной из программ для автоархивации, например, Effector saver 3.

Она позволяет легко, в несколько шагов, автоматизировать создание бэкапов. Способна выполнять свои функциии с файловой системой, и с клиент-серверной. Настройка её занимает всего около пятнадцати минут, но польза от неё не подлежит обсуждению.

Этому приложению доступна обработкалюбых версий 1С: 7.7, 8.1, 8.2, 8.3. Ей безразлично что обрабатывать- файловые данные или находящиеся на сервере MS SQL илиPostgreSQL. Плюс она бесплатна (есть коммерческая версия, расширенная).

Сначала скачиваем и устанавливаем дистрибутив Effector Saver.


После указания каталога крайний шаг - настроить расписание. Для этого на одноимённой вкладке указывается режим отработки задания и время для его выполнения:

Для того, чтобы убедиться в верности настроек, нужно нажать на кнопку нижней панели - «проверить». При успешной проверке должно отобразитсяприятное сообщение «Основные параметры заполнены верно».

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

Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png