Варианты решения "Нарушена целостность структуры конфигурации" для 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    33035    107    152    

73

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

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

3600 руб.

10.02.2017    110761    665    174    

704

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

Представьте, что есть система QR - кодирования, которая НЕ ТРЕБУЕТ изменения конфигурации, НЕ ТРЕБУЕТ изменения ни одной печатной формы для добавления QR-кода, включая внешние, НЕ ХРАНИТ данные штрихкодов и их связь, от чего база не "пухнет", ИМЕЕТ возможность закодировать в QR-коде произвольные данные параметров для последующей обработки полученных данных, УМЕЕТ прикреплять сканы, УМЕЕТ обработать считанный QR-код как ВЫ захотите. А также ХРАНИТ историю операций в обход базы для каждого пользователя в отдельности и УМЕЕТ работать с 2D - сканерами. А также автоматически распознавать отсканированные печатные формы (картинки или pdf-файлы) и выполнять заданные произвольные алгоритмы, в том числе прикрепление их к документам! Обновление 3.2 от 09.06.2024!

19200 руб.

26.08.2018    52278    16    61    

55

Закрытие периода Корректировка данных Бухгалтер Пользователь Платформа 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    24134    242    35    

79

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

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

28800 руб.

06.10.2023    4132    35    18    

44
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
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 593 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)Спасибо за подробный рецепт, мне помог в похожей ситуации!
Оставьте свое сообщение