Ошибка при проверке логической целостности

1. scorp1 5 06.01.17 08:21 Сейчас в теме
Есть файловая база БП 2.0 (2.0.65.48)
При проверке логической целостности платформой 8.3.8.2197 выдает две ошибки:

Проверка логической целостности. Документы. ПоступлениеТоваровУслуг. Табличная часть имеет записи, не относящиеся ни к одной записи главной таблицы. Количество - 1
Проверка логической целостности. Документы. СписаниеСРасчетногоСчета. Табличная часть имеет записи, не относящиеся ни к одной записи главной таблицы. Количество - 4


Ошибки не исправляются и при повторной проверке возникают вновь
Подскажите, кто знает, как можно их исправить. Других проблем с базой нет.
По теме из базы знаний
Найденные решения
8. drim87 08.01.17 23:08 Сейчас в теме
Попробуй выгрузить базу под платформой 8.3.6.2041 или ниже
Попробуй протестировать под этой же платформой. Выгрузи и загрузи чистую базу под новой платформой.

Если с выгрузкой не поможет:
Загрузи dt в базу на ms sql и очисти таблицу files.

Искать на ms sql где именно хранится табличная часть для документа ты замучаешься. Потому если типовая попробуй выполнить сравнение и объединение с конфигурацией поставщика или cf такой же версии
16. scorp1 5 10.01.17 10:47 Сейчас в теме
Конфигурация в порядке, поэтому таблицы config и configsave менять, наверное, нет необходимости.
С помощью SQL Server Management Studio нашел таблицы с документами и табличными частями документов. Выгрузил в Ексель и по полю _DocumentХХХ_IDRRef нашел лишние записи, которые не относятся не к одному документу. Эти лишние записи удалил.
Теперь тестирование идет и выгрузка идет.
drim87 - огромное спасибо за подсказку с SQL Server
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
5. Xershi 1474 06.01.17 09:06 Сейчас в теме
(1) скорее всего ссылка слетела. Выгрузка в ДТ работает?
7. scorp1 5 08.01.17 12:26 Сейчас в теме
(5) выгрузка не работает:

Нарушение целостности информационной базы.
Ошибка в размере файла 1d748980-248d-4f48-a467-23fe2d86ab01.pfl при выгрузке таблицы Files
Ожидаемое значение 0, значение в таблице 112163
10. Xershi 1474 09.01.17 00:55 Сейчас в теме
(7) если есть тулз 1С с возможностью редактировния, то через нее можно попробывать поправить.
Если нет, то можно сделать полную выгрузку в чистую базу.
ТИИ не все ошибки может исправить, рекомендую если есть ИТС написать еще в поддержку!
13. scorp1 5 10.01.17 09:01 Сейчас в теме
(10)Toolz 1CD нет, подскажите где взять?
18. Xershi 1474 10.01.17 13:56 Сейчас в теме
9. Armando 1399 09.01.17 00:15 Сейчас в теме
(1) (7) Можно воспользоваться tool 1cd для поиска и удаления этих записей.
Или отправляйте базу в ТП 1С. Ждать от 3 дней до бесконечности.
2. pyrkin_vanya 488 06.01.17 08:30 Сейчас в теме
Попробуйте сделать тестирование с созданием ссылок.
3. scorp1 5 06.01.17 08:31 Сейчас в теме
Пробовал - не помогает
4. lefthander 06.01.17 09:03 Сейчас в теме
Есть еще утилита для проверки файловой базы, лежит в катилоге bin. Может она поможет
6. scorp1 5 08.01.17 12:21 Сейчас в теме
(4) утилита ошибок не находит
8. drim87 08.01.17 23:08 Сейчас в теме
Попробуй выгрузить базу под платформой 8.3.6.2041 или ниже
Попробуй протестировать под этой же платформой. Выгрузи и загрузи чистую базу под новой платформой.

Если с выгрузкой не поможет:
Загрузи dt в базу на ms sql и очисти таблицу files.

Искать на ms sql где именно хранится табличная часть для документа ты замучаешься. Потому если типовая попробуй выполнить сравнение и объединение с конфигурацией поставщика или cf такой же версии
12. scorp1 5 10.01.17 09:00 Сейчас в теме
(8)
Попробуй выгрузить базу под платформой 8.3.6.2041 или ниже
Попробуй протестировать под этой же платформой. Выгрузи и загрузи чистую базу под новой платформой.


Не помогло


Если с выгрузкой не поможет:
Загрузи dt в базу на ms sql и очисти таблицу files.


исправление записи в таблице files помогло (найти запись не сложно - исправил то значение которое было на ожидаемое) - теперь выгрузка идет, но проверка логической целостности не проходит

Проверка логической целостности. Документы. ПоступлениеТоваровУслуг. Табличная часть имеет записи, не относящиеся ни к одной записи главной таблицы. Количество - 1
Проверка логической целостности. Документы. СписаниеСРасчетногоСчета. Табличная часть имеет записи, не относящиеся ни к одной записи главной таблицы. Количество - 4



Искать на ms sql где именно хранится табличная часть для документа ты замучаешься. Потому если типовая попробуй выполнить сравнение и объединение с конфигурацией поставщика или cf такой же версии


табличную часть найти не проблема, проблема найти те записи которые не относятся к главной таблице
Документов ПоступлениеТоваровУслуг в базе порядка 10 000 штук, и документов СписаниеСРасчетногоСчета не меньше

Может кто подскажет каким запросом и средствами MS SQL можно это сделать?

14. scorp1 5 10.01.17 09:02 Сейчас в теме
(8)
Попробуй выгрузить базу под платформой 8.3.6.2041 или ниже
Попробуй протестировать под этой же платформой. Выгрузи и загрузи чистую базу под новой платформой.



Не помогло


Если с выгрузкой не поможет:
Загрузи dt в базу на ms sql и очисти таблицу files.


исправление записи в таблице files помогло (найти запись не сложно - исправил то значение которое было на ожидаемое) - теперь выгрузка идет, но проверка логической целостности не проходит

Проверка логической целостности. Документы. ПоступлениеТоваровУслуг. Табличная часть имеет записи, не относящиеся ни к одной записи главной таблицы. Количество - 1 
Проверка логической целостности. Документы. СписаниеСРасчетногоСчета. Табличная часть имеет записи, не относящиеся ни к одной записи главной таблицы. Количество - 4 



Искать на ms sql где именно хранится табличная часть для документа ты замучаешься. Потому если типовая попробуй выполнить сравнение и объединение с конфигурацией поставщика или cf такой же версии


табличную часть найти не проблема, проблема найти те записи которые не относятся к главной таблице
Документов ПоступлениеТоваровУслуг в базе порядка 10 000 штук, и документов СписаниеСРасчетногоСчета не меньше

Может кто подскажет каким запросом и средствами MS SQL можно это сделать?
11. drim87 09.01.17 09:23 Сейчас в теме
Ну если обращаться в поддержку франчи может получиться что пинать Вас будут пару недель либо по отделам в поисках того кто исправит либо так же будут писать разработчикам, а сроки реакции там оставляют желать лучшего.


Таблица Files содержит служебную информацию, например, о работе с хранилищем конфигурации.
Так что проще всего просто ее очистить средствами SQL и не гадать исправились там все ошибки или нет.
А ошибки в конфигурации несложно поправить с помощью cf файла такой же версии.
15. drim87 10.01.17 10:13 Сейчас в теме
Если база типовая - тогда. На сервере 1с разверните чистую базу такой же версии и средствами sql подмените таблицу config. Можно еще и configsave - в этих таблицах хранится конфигурация.
На копии само собой делайте)
Я сейчас не успеваю что то более подробное накидать, убегаю. Но в сети есть информация по восстановлению баз подменой этих таблиц. На инфостарте даже было.
CratosX; scorp1; +2 Ответить
16. scorp1 5 10.01.17 10:47 Сейчас в теме
Конфигурация в порядке, поэтому таблицы config и configsave менять, наверное, нет необходимости.
С помощью SQL Server Management Studio нашел таблицы с документами и табличными частями документов. Выгрузил в Ексель и по полю _DocumentХХХ_IDRRef нашел лишние записи, которые не относятся не к одному документу. Эти лишние записи удалил.
Теперь тестирование идет и выгрузка идет.
drim87 - огромное спасибо за подсказку с SQL Server
19. Xershi 1474 10.01.17 13:58 Сейчас в теме
(16) у вас же файловая база. Или я чего не не дослышал или не знаю?)
20. scorp1 5 10.01.17 16:34 Сейчас в теме
(19) База файловая.
Решение найдено, всем спасибо
17. drim87 10.01.17 12:32 Сейчас в теме
Проверка логической целостности. Документы. ПоступлениеТоваровУслуг. Табличная часть имеет записи, не относящиеся ни к одной записи главной таблицы. Количество - 1
Проверка логической целостности. Документы. СписаниеСРасчетногоСчета. Табличная часть имеет записи, не относящиеся ни к одной записи главной таблицы. Количество - 4


Ну по этой ошибке я так понял что ошибка в табличной части документа. Тут не имени ни идентификатора объекта нет - потому я и думаю что это ошибка в конфигурации. Ну либо получается во всех документах? Тогда в менеджере sql попробуйте открыть таблицу посмотрте что там вообще записано.
21. CratosX 112 07.02.17 17:38 Сейчас в теме
Столкнулся с сабжевой проблемой (0).
(16)
Выгрузил в Ексель и по полю _DocumentХХХ_IDRRef нашел лишние записи, которые не относятся не к одному документу.

автор, зря не поделился формулой вычисления лишних записей =СЧЁТЕСЛИ($A$2:$A$10000;B2), мне бы сэкономило немного времени.
Далее, код удаления "лишних" записей в скрипте SQL:

SEL ECT
	 [_Document196_IDRRef]
     
  FR OM [Test].[dbo].[_Document196_VT4169]
	 WHERE  _Document196_IDRRef = CONVERT(varchar,0x8CA0D017C29AAC7511E6E6BB9148A258)
		or  _Document196_IDRRef = CONVERT(varchar,0x8CA0D017C29AAC7511E6E6BB9148A259)

Где 0x8CA0D017C29AAC7511E6E6BB9148A258 и 0x8CA0D017C29AAC7511E6E6BB9148A259 - похоже две битые ссылки из 13 строк табличной части.

Но, после манипуляций в конфигуратор так и не смог зайти (в файловом режиме заходит, но в нём нельзя провести манипуляции со строками). А из поправленной SQL-ной не могу выгрузить dt, так как не заходит в конфигуратор, выдавая сообщение

"Ошибка программного лицензирования. Неверный формат файла программного лицензирования
File=src\CryptoGeneralHelpers.cpp(207)."

Есть у кого идеи?
22. CratosX 112 07.02.17 18:32 Сейчас в теме
(21) Точнее в коде выше выборка этих значений, само удаление такое:
USE [Test]
GO

DELETE FR OM [dbo].[_Document196_VT4169]
       WH ERE   _Document196_IDRRef = CONVERT(varchar,0x8CA0D017C29AAC7511E6E6BB9148A258)
			or _Document196_IDRRef = CONVERT(varchar,0x8CA0D017C29AAC7511E6E6BB9148A259)

GO
23. CratosX 112 07.02.17 20:36 Сейчас в теме
Вообще, проблему битых ссылок решил в файловой базе без необходимости лезть в SQL.
Берём ирПортативный, ищем все строки ТЧ, находим битые ссылки вида <Объект не найден> (196:8ca0d017c29aac7511e6e6bb9148a258), берём обработку GUID82_w1c.epf, создаём документ, записываем, лезем в его движения - оттуда пытаемся вычислить реквизиты документа (например дату, время, склад и т.п.), вносим их в документ - записываем.
24. citicat 119 07.02.17 20:51 Сейчас в теме
Как уже написал Алексей Т. (CratosX) , проблема битых ссылок решается в файловой (не SQL) базе.
В похожем случае при исправлении обязательно выбираем режим "Добавлять)". Редактировать придётся эти добавленные элементы.
Если есть старый архив, возможно руками.
25. Dipod 111 17.10.19 17:07 Сейчас в теме
Написал себе памятку-инструкцию по исправлению ошибки как у ТС
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)