Решение "Нарушена целостность структуры конфигурации" для SQL

08.10.10

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

При использовании динамического обновления конфигурации, работающей под SQL Server, в один прекрасный момент можно увидеть сообщение, информирующее о том, что "Нарушена целостность структуры конфигурации", и база становится неработоспособна ни, в режиме Конфигуратора, ни, в режиме Предприятия, так что же делать?

Такая ситуация может возникнуть при монопольном обновлении ИБ в которой ранее производились динамические обновления.

Итак приступим:

Делаем резервную копию средствами SQL Server.

Заходим в SQL Management Studio и создаем новый запрос к нашей ИБ.

 Выполняем запрос :

SELECT FileName, Modified FROM Config
WHERE FileName Like '%_dynupdate_%'
ORDER bY FileName, Modified

должен отобразиться список файлов вида, где [.число] означает возможный суффикс-расширение.

Для каждой группы файлов, начинающейся с одинакового УИД1, ориентируясь на значение поля Modified удаляем все более старые записи и заменяем в поле FileName значение наесли получившиеся строка уже существует в ИБ то необходимо сравнить их даты изменения (поле Modified) и оставить самый новый.

Пример:

из

FileName Modified
02b6f4b6-ebfa-4aab-9e30-e5f0a29588d1_dynupdate_2d7c76c5-9819-418f-a4a8-11085dfb1f7d 4010-10-08 02:36:08.000
02b6f4b6-ebfa-4aab-9e30-e5f0a29588d1_dynupdate_2d7c76c5-9819-418f-a4a8-11085dfb1f7d.0 4010-10-08 02:36:08.000
dc230ac5-7853-4d1f-8d45-168d28f1b6b0_dynupdate_abbd5ed3-1e1b-4752-b63b-eb5072af5d99 4010-10-08 03:04:41.000
dc230ac5-7853-4d1f-8d45-168d28f1b6b0_dynupdate_abbd5ed3-1e1b-4752-b63b-eb5072af5d99.0 4010-10-08 03:04:41.000

должно получиться

FileName Modified
dc230ac5-7853-4d1f-8d45-168d28f1b6b0 4010-10-08 03:04:41.000
dc230ac5-7853-4d1f-8d45-168d28f1b6b0.0 4010-10-08 03:04:41.000

См. также

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

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

60000 руб.

06.10.2023    4507    37    18    

45

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

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

14400 руб.

29.04.2020    33808    108    152    

75

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

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

3600 руб.

10.02.2017    111372    669    174    

708

Корректировка данных Программист Пользователь Платформа 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    52613    16    61    

55

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

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

12000 руб.

02.11.2020    7530    6    0    

8

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

Внешняя обработка, позволяющая произвольным образом заполнять документ "Корректировка регистров" Предназначена для использования в конфигурациях "Управление торговлей 11", "Управление небольшой фирмой", "ERP Управление предприятием", а также в других конфигурациях, в состав которых входит библиотека стандартных подсистем (БСП) версии 2.2+ и указанный выше документ.

2400 руб.

13.07.2015    51364    175    29    

127

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

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

6000 руб.

22.01.2025    270    1    0    

3

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

Обработка служит для: выравнивания бухгалтерского и налогового учета на определенную дату по выбранным счетам; закрытия остатков по выбранным счетам; обнуления налогового учета (ПР, ВР также будут обнулены)

2880 руб.

05.05.2024    702    10    0    

6
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. oberonm 9 08.10.10 08:29 Сейчас в теме
только на днях произошло подобное непотребство. пришлось восстанавливать из старого бэкапа и данные из таблиц экспортировать
13. denp2002 10.03.11 01:28 Сейчас в теме
К данной публикации нашел запрос, который мне помог

delete from Config where FileName in (
select c.filename from Config as c
inner join (
select * from (
SELECT max( modified ) over (partition by substring(FileName,0,37)) as mdt
,SUM(1) over (partition by substring(FileName,0,37)) as sm, substring(FileName,0,37) fs
, substring(FileName,48,37) sc
, *
FROM Config
WHERE FileName Like '%_dynupdate_%')as a
where a.sm != 1 ) as b
on b.mdt != c.modified and b.FileName = c.FileName)

delete from Config where FileName in (
select filename from (
select MAX(Modified) over(partition by substring(a.filename, 0, 37) ) as mdt
, *
from Config as a
where LEN(a.FileName) = 36
or a.FileName like '%_dynupdate_%'
) as b
where b.mdt != b.Modified
)

update Config set filename = substring(filename, 0, 37)
where FileName like '%_dynupdate_%'
2. ПСВ 114 08.10.10 08:36 Сейчас в теме
Для каждой группы файлов, начинающейся с одинакового УИД1, ориентируясь на значение поля Modified удаляем все более старые записи и заменяем в поле FileName значение на <УИД1[.число]> если получившиеся строка уже существует в ИБ то необходимо сравнить их даты изменения (поле Modified) и оставить самый новый


Так значит в последнем примере , надо оставить только полседнюю строчку?
а не две.
или ты не правильно объяснил.
10. b-real 20.10.10 00:53 Сейчас в теме
+(2)
Полагаю, что вместо первой строки результирующей таблицы из примера должна быть одна из первых 2х строк таблицы-источника.Отсюда вопрос, а как определить какую строчку нужно оставить? В приведенном примере у строчек с одинаковыми УИД1 отличия только в суффиксе-расширении, поля Modified совпадают.
3. manlak 77 08.10.10 09:49 Сейчас в теме
седня такая же беда случилась, даже в конфигуратор не пускало,
1С - это - ****************** (много мата).
И по этой технологии не получилось. Пришлось с бэкапа восстанавливать
4. manlak 77 08.10.10 09:50 Сейчас в теме
но плюс все равно за поднятие темы! У нас просто этих строк ОЧЕНЬ много скорей всего из-за этого, это если мало тогда подойдет возможно
5. Istur 1475 08.10.10 15:07 Сейчас в теме
10063820 Нарушена целостность структуры конфигурации
Проблема:
В клиент-серверном варианте информационной базы при сохранении конфигурации информационной базы, в которой до этого выполнялось динамическое обновление, а также при последующем запуске Конфигуратора или Предприятия диагностируется ошибка
Нарушена целостность структуры конфигурации
и происходит аварийное завершение работы программы.


Ошибка исправлена в тестовом релизе 8.2.12.92
6. iov 407 09.10.10 01:13 Сейчас в теме
5 ага и еще 10 подобных вылезет.... Заколебали тестировать продукты за деньги ... реально платформа стала еще более глючная чем 8.0 первые... Причем критических ошибок с падением данных стало больше кажется.
P.S. не поверите но 3 фирмы откатились на 7.7 из-за того что та стабильнее и мене проблемно на линксах с вайном запускается нежели 8 ки.
7. pri_hod 77 10.10.10 12:50 Сейчас в теме
Поставил, вроде ошибка исчезла но при запуске УТ появляется сообщение "ИнформацияОбОшибке" отладчиком отловил что невозможно создать
ComConnector = Новый COMОбъект(УправлениеСоединениямиИБ.ИмяCOMСоединителя())
8. RailMen 829 11.10.10 23:02 Сейчас в теме
У меня такое НЕПОТРЕБСТВО (слово понравилось) было в начале сентября на ЗУП конфе, а вот буквально вчера на БП. Платформа-бяка!
9. ndacoder 110 18.10.10 13:16 Сейчас в теме
вот альтернативное шаманство для тех кому не помогло http://infostart.ru/public/76964/
11. Gens76 11.11.10 23:25 Сейчас в теме
Быстрее всего поправить это дело через копирование файлов (Config и SaveConfig.) через утилиту (при условие если есть хотяб файл конфигурации )
http://www.interface.ru/home.asp?artId=4013
12. vasiliy_b 284 02.12.10 11:30 Сейчас в теме
Может кто скрипт перепишет, который сам сравнит строки и удалит из этих таблиц лишние записи...
К сожалению моих знаний в SQL запросах пока недостаточно, чтобы самому его написать...
14. Maks_Payn 05.10.11 11:07 Сейчас в теме
пробывал запрос в SQL 2008 и он мне ругнулся на синтаксис...
можете подсказать как будет выглядить запрос для 2008 сервера?
17. PastorNak 13 25.11.11 13:31 Сейчас в теме
(14) Maks_Payn, проверьте соотбетствие кавычек, обычно при копировании возникает глюк кодировки
15. PastorNak 13 25.11.11 13:29 Сейчас в теме
Если есть живая копия базы:
Вылечилось скриптом

GO
DROP TABLE [dest].[dbo].[Config]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dest].[dbo].[Config](
[FileName] [nvarchar](128) NOT NULL,
[Creation] [datetime] NOT NULL,
[Modified] [datetime] NOT NULL,
[Attributes] [smallint] NOT NULL,
[DataSize] [int] NOT NULL,
[BinaryData] [image] NOT NULL,
PRIMARY KEY CLUSTERED
(
[FileName] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
INSERT INTO [dest].[dbo].[Config]
SELECT * FROM [src].[dbo].[Config]
GO
где dest - повреждённая база, а src - восстановленная из архива.
pri_hod; Norml; Letos; +3 Ответить
16. PastorNak 13 25.11.11 13:30 Сейчас в теме
18. avega 103 03.07.12 08:38 Сейчас в теме
Если используется терминальный вариант подключения к базе, и ошибка вылетает лишь у одного пользователя а остальных пускает в базу, то достаточно почистить файлы в подкаталогах C:\USERS\ИМЯ_Пользователя\Application Data\1C\1Cv82. После этого необходимо будет добавить в список баз ту базу на которой вылетала ошибка т.к. список баз обнулится. И можно работать! ;) Перезагрузка сервера не требуется. Сие актуально для Windows Server
19. dyak84 23.04.13 18:06 Сейчас в теме
Автор спасибо такое бывало и не обнажды. Лечил востановлением из бекапа пробовал разные методы колдовства но они почемуто не сработали.При случае попробую и ваш метод. Про результат обязательно отпишусь. Спасибо за роботу так держать.
Оставьте свое сообщение