Опции за решение "Целостта на конфигурационната структура е нарушена" за SQL или предстоящо издание 8.2.12.92

С последното издание на платформата, динамичната актуализация беше окончателно фиксирана.
Посветен на тези, които не са имали време за актуализация.

Проблем:
Във версията на клиент-сървъра на информационната база, при запазване на конфигурацията на информационната база, в която преди е била извършена динамична актуализация, а също и когато Configurator или Enterprise се стартира по-късно, се диагностицира грешка

Целостта на конфигурационната структура е нарушена

и програмата се срива.
1C предложи заобиколно решение:
Не използвайте динамична актуализация.

А какво да кажем за тези, които са уловили грешка, например в края на работния ден. възстановяване на архива от вчера? или започнете да танцувате с тамбура.

Теоретично конфигурацията на базата данни се съхранява в таблицата Config, разликите в редактираната база данни са в таблицата ConfigSave. Съответствието на обектите с метаданни може да се извърши от колоната FileName, колоната BinaryData съхранява пакетирани данни - описанието на метаданните. Ако таблицата е пълна, тогава тя се състои от поне 3 елемента със стойности в колоната FileName. "версия" - версията на платформата "версии" тук в опакована форма всички метаданни са изброени във формата, където N е броят на обектите на метаданни, описани във файла "версии", "filenameN" е името на файла, uidN е уникален идентификатор - когато обектът с метаданни се промени, се генерира нов.

Обикновено при такава грешка данните не се унищожават, а се унищожава само конфигурацията.

конфигурацията може да бъде унищожена по различни начини, главно проблем с "версии", също често срещан проблем с отчетите, базирани на състава на данните.

можете да опитате да възстановите основата, като просто замените таблицата Config с архив или стандартен, въз основа на който се базира конфигурацията.

Преди всички действия правим резервно копие с помощта на базата данни sql.

И започваме да танцуваме с бум.

проверете за записи в таблицата ConfigSave

SELECT * FROM ConfigSave, ако има нещо, което трябва да почистите

Изтриване ОТ ConfigSave

ако има записи, можете да опитате да отидете в конфигуратора.

можете да опитате да съберете маса на ръка според препоръките

ако базата данни се съхранява в MS SQL, можете да опитате да възстановите конфигурацията с помощта на EI.

ако конфигурацията на унищожената база данни е много различна от последната запазена, тогава можете да заредите последната работеща версия на конфигурацията в чиста база данни и да я приближите възможно най-близо до унищожената, след което да я заредите в базата данни.

Полето за възстановяване на базата до възможността за стартиране в режим на конфигуратор започва да танцува с тамбура според оперативността в корпоративен режим, например, базата може да работи само в управлявано приложение. Тук преструктурирането, създаването на нов интерфейс и други танци с тамбура могат да помогнат.

пример за грешка, когато базата данни се отваря в режим на конфигуратор, но когато се отваря в корпоративен режим, тя дава грешка като "тип bf3eefc5-26ac-4bb2-bec0-33a82e49a0c5 не е намерен"

опция за лечение създайте нов потребителски интерфейс.

създаване на таблица conf - копие на унищожена конфигурация

СЪЗДАЙТЕ ТАБЛИЦА "DB2ADMIN" .conf (
ФАРМА ИМЕ ВАРГРАФИЧНО (128) НЕ Е НУЛО,
ФАРМАГРАФИЧЕН ФИЛЕНАМ (128) НЕ Е НУЛЕН, ГЕНЕРИРАН ВИНАГИ КАТО (UCASE (ФАЙЛ)),
ГРАФИК ЗА СЪЗДАВАНЕ НЕ Е НУЛ,
МОДИФИЦИРАН РЕЖИМ НА ВРЕМЕ НЕ Е НУЛ,
АТРИБУТИ МАЛИНКА НЕ НУЛА,
ДАННО РАЗМЕР НА ИНТЕГРАЛ НЕ Е НУЛО,
BINARYDATA BLOB (1073741823) НЕ НУЛ ЗАПИСАН НЕ КОМПАКТЕН
)
В „V81C_LARGESPACE“
ИНДЕКС В "V81C_INDEXSPACE"
ДЪЛГО В "V81C_LOBSPACE";

ALTER TABLE "DB2ADMIN" .conf
ЗАХВАНЕ НА ДАННИ НЯМА
LOCKSIZE ROW
ПРИЛОЖИ ИЗКЛЮЧЕНО
НЕ ЛЕТКИ;

РАБОТИ НА МАСА "DB2ADMIN" .conf
РАЗРЕШЕТЕ ПИСМЕН ДОСТЪП;

ЗАДАВА СХЕМА = DB2ADMIN;

Мигриране на данните от таблицата на конфигурацията - копие на повредена конфигурация

Вмъкнете В DB2ADMIN.conf (ИМЕ НА ФАЙЛ,
СЪЗДАВАНЕ,
ИЗМЕНЕНО,
АТРИБУТИ,
ДАТАЗИРАНЕ,
BINARYDATA)
Изберете FILENAME,
СЪЗДАВАНЕ,
ИЗМЕНЕНО,
АТРИБУТИ,
ДАТАЗИРАНЕ,
BINARYDATA
ОТ DB2ADMIN.config

наличието на такава плоча няма да попречи на представянето на 1s, но ще позволи подмяна на отделни

записи в конфигурационната таблица

PS, ако някой се интересува, има обработка, която може да напише правилния файл с версия за произволна конфигурация в cf файла (макар и само в файлов режим, но може да бъде зареден в базата cql)