Варианты решения "Нарушена целостность структуры конфигурации" для SQL или в ожидании релиза 8.2.12.92

20.11.10

Задачи пользователя - Корректировка данных

При выходе последнего релиза платформы наконец починили динамическое обновление.
Тем кто не успел обновиться посвящается.

При выходе последнего релиза платформы наконец починили динамическое обновление.
Тем кто не успел обновиться посвящается.

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

Нарушена целостность структуры конфигурации

и происходит аварийное завершение работы программы.
1С предлагала способ обхода:
Не использовать динамическое обновление.

А что делать тем кто поймал ошибку например в конце рабочего дня. востанавливать вчерашний бэкап ? или приступить к танцам с бубном.

Немного теории конифигурация базы данных хранится в таблице Config, отличия редактируемой базы в таблице ConfigSave. Соответтсвие объектов метаданных можно провести по колонке FileName, в колонке BinaryData хранится запакованные данные - описание метаданных. Если таблица заполнена то но состоит минимум из 3х элементов c значениями в колонке FileName. "version" - версия платформы "versions" здесь в запаковонном виде перечисленны все метаданные в виде {1,N,"filename1",uid1, ... "filenameN",uidN} где N - количество объектов метаданных описанных в файле "versions", "filenameN" - имя файла,uidN - уникальный ID - при изменени объекта метаданных гененерится новый.

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

конфигурация может быть разрушена поразному восновном это проблема "versions", также частая проблема с отчетами построенными на основе компоновки данных.

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

Перенос конфигурация для SQL 2005 описан-> http://www.infostart.ru/public/17185/

Выгрузка конфигурации для DB2 //infostart.ru/public/78378/

Выгрузка конфигурации для MS SQL //infostart.ru/public/85275/

Перед всеми действиями делаем бэкап средствами sql базы данных.

И начинаем танцы с бумном.

проверяем наличие записей в таблице ConfigSave

SELECT * FROM ConfigSave если что есть то нужно почистить

Delete FROM ConfigSave

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

можно попробовать руками собрать таблицу по рекомендациям

//infostart.ru/public/76626/

в случае хранения базы в MS SQL можно попробовать востановить конфигураци с помощью EI.

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

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

PS

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

вариант лечения создать для пользователя новый интерфес.

FAQ для DB2

создание таблицы conf - копии разрушенной config

CREATE TABLE "DB2ADMIN".conf (
  FILENAME    VARGRAPHIC(128)    NOT NULL,
  FILENAMEU    VARGRAPHIC(128)    NOT NULL    GENERATED ALWAYS AS (UCASE(FILENAME)),
  CREATION    TIMESTAMP    NOT NULL,
  MODIFIED    TIMESTAMP    NOT NULL,
  ATTRIBUTES    SMALLINT    NOT NULL,
  DATASIZE    INTEGER    NOT NULL,
  BINARYDATA    BLOB(1073741823)    NOT NULL    LOGGED    NOT COMPACT
)
  IN "V81C_LARGESPACE"
  INDEX IN "V81C_INDEXSPACE"
  LONG IN "V81C_LOBSPACE";

ALTER TABLE "DB2ADMIN".conf
  DATA CAPTURE NONE
  LOCKSIZE ROW
  APPEND OFF
  NOT VOLATILE;

COMMIT;

RUNSTATS ON TABLE "DB2ADMIN".conf
  ALLOW WRITE ACCESS;

SET SCHEMA = DB2ADMIN;

COMMIT;

Перенос данных таблицы conf - копии разрушенной config

                Insert INTO DB2ADMIN.conf(FILENAME,
                       CREATION,
                       MODIFIED,
                       ATTRIBUTES,
                       DATASIZE,
                       BINARYDATA)
                Select FILENAME,
                       CREATION,
                       MODIFIED,
                       ATTRIBUTES,
                       DATASIZE,
                       BINARYDATA
                FROM  DB2ADMIN.config

наличие такой таблички не помешает работоспособности 1с, зато позволит заменять отдельные

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

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

 

См. также

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    32426    105    152    

73

Корректировка данных Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Незаменимая обработка для сопровождения конфигураций: ERP, УТ, КА. Позволяет вычистить многие ошибки в ключах аналитики, в ключевых справочниках конфигурации.

3600 руб.

10.02.2017    110286    663    174    

702

Корректировка данных Зарплата Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Внешняя обработка предназначена для исправления самых различных ошибок, возникших по самым разным причинам. Общее проявление этих ошибок видно в различии данных между: проводками и различными отчетами по НДФЛ, заполнении ведомостей на выдачу зарплаты, неверным расчетом НДФЛ при начислении ЗП и т.д.

3600 руб.

09.02.2024    1648    11    5    

14

Взаиморасчеты Корректировка данных Бухгалтер Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Бухгалтерский учет Управленческий учет Платные (руб)

Вы наконец разобрались с закрытием месяцев и пора начать контролировать сроки оплаты поставщикам и задолженности клиентов, но в базе расчеты не идут из-за развернутого сальдо? Не беда, есть решение!

7200 руб.

02.11.2020    7276    5    0    

8

Корректировка данных Зарплата Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

4800 руб.

06.10.2023    3992    34    17    

43

Закрытие периода Корректировка данных Бухгалтер Пользователь Платформа 1С v8.3 Оперативный учет 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Закрытие месяца - важный процесс в современных конфигурациях, таких как УТ 11.4, УТ 11.5, КА 2.4, КА 2.5 ERP 2.4,ERP 2.5, КА 2 Казахстан, УТ 3 Казахстан регламентные операции влияют на расчет себестоимости, и ошибки в данном расчете не дают картины деятельности организации.

4800 руб.

27.10.2021    23791    241    35    

78
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. iov 407 17.10.10 23:11 Сейчас в теме
Ммммм.... Представим себе ситуацию когда ВЫ покупаете инструмент для работы а он сам ломается... Вы его меняете на другой... Ах как хорошо быть монополистом...
2. Alef 18.10.10 08:36 Сейчас в теме
Варианты есть? В ту же цену?
3. ndacoder 110 18.10.10 12:57 Сейчас в теме
Если не спешить менять релизы, то можно вполне работать с 1с, 8.2.11 последней сборки довольно стабильно работает последняя сборка 8.2.12.92 тоже меня пока устраивает
4. ksnik 592 13.03.13 08:51 Сейчас в теме
На 8.2 целостность конфигурации на MSSQL за год нарушалась дважды по причине динамического и нединамического обновления с использованием хранилища конфигурации, это зарегистрированный баг http://gilev.blogspot.ru/2010/10/82128.html
Этот баг не исправляет фирма 1С, пользователи выкручиваются сами. В моем случае дважды помогал метод востановить базу простой заменой таблицы Config на такую же таблицу аналогичной базы на распределенке.
Как вариант - тестовая база, подключенная к хранилищу.
5. DirectAuto 03.05.13 17:24 Сейчас в теме
Симптомы: "Нарушена целостность структуры конфигурации". Конфигуратор + приложение;

Лечение:
____________________________________________________

1) Диск: Проверяем наличие последнего DT;
2) Диск: Проверяем наличие последнего СF рабочей базы;

3) 1С Конфигуратор: В базу SQL "копия-рабочей" заливаем все данные из DT + накатываем последний CF рабочей базы;

4) 1С Предприятие: проверяем работоспособность залитой базы путём запуска в режиме Предприятие;

5) Выходим из конфигуратора и всех запущенных 1С ;

6) ЗАПУСКАЕМ ЛЮДЕЙ В КОПИЮ ДЛЯ ВОЗМОЖНОСТИ РАБОТЫ ХОТЯ БЫ С ПРИМЕРНЫМИ ДАННЫМИ; (если уж очень горит чёто там посмотреть)

7) MS SQL Management Studio: открываем базу "типа_рабочая" и выбираем

типа_рабочая / Таблицы / dbo.Config (клик правой кнопкой мышки)

Создать сценарий для таблицы / Используя DELETE / Новое окно редактора запросов

убираем из запроса строку: WHERE <Условия поиска,,>, т.е. получаем запрос DELETE FROM [directauto].[dbo].[Config] GOнажимаем кнопку [!Выполнить]

Убеждаемся, что строки таблицы очищены с помощью запроса: SELECT * FROM [рабочая].[dbo].[Config]

8) Запускаем утилиту "C:\Program Files\Microsoft SQL Server\100\DTS\Binn\DTSWizard.exe" (копирование таблиц между базами (во как !)

Окно приветствия = Далее /
Выбор источника = SQL Server Native Client 10.0 + Использовать проверку подлинности SQL Server + ** + ****** + копия-рабочей /
Выбор Приемника = SQL Server Native Client 10.0 + Использовать проверку подлинности SQL Server + ** + ****** + типа-рабочая /
Скопировать данные таблиц или представлений /
отмечаем таблицы [dbo].[Config] + [dbo].[ConfigSave] /
"Запустить немедленно" + {Готово}

На выходе не должно быть ошибочных записей в логе выполнения!

9) Запускаем основную рабочую базу и наслаждаемся работой системы; ЗАПУСКАЕМ ПОЛЬЗОВАТЕЛЕЙ В РАБОЧУЮ БАЗУ

10) По окончании рабочего дня, выпровадживаем всех пользователей, закрываем крепко входную дверь и начинаем копать 1С ногами :)

10.1. Резервный бэкап DT + Cf текущей рабочей базы;
10.2. Конфигуратор / Администрирование / Тестирование и исправление;
10.3. Выгрузить информационную базу;
10.4. Загрузить информационную базу (с удалением всех данных);
10.5. Контрольный бэкап в DT;

11) Проверяем работоспособность, выключаем комп и идём обмывать очередные "заслуги перед отечеством";
orfos; Running; DimaP; alek-sand-er; NewLifeMan; +5 Ответить
6. gubanoff 63 30.08.13 16:31 Сейчас в теме
(5)Спасибо за подробный рецепт, мне помог в похожей ситуации!
Оставьте свое сообщение