Версия для печати темы (https://pro1c.org.ua/index.php?s=f303ed1e95e0e0cee79b1f8138b7a1fb&showtopic=126)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Средства конфигурирования _ Проверка ссылочной целостности в режиме тестирования и исправления информационной базы

Автор: Batchir 09.02.09, 11:38

В общем случае структура информационной базы может быть довольно сложной и состоять из некоторого множества "локальных" информационных баз, как однородных (базирующихся на одной и той же структуре метаданных), так и неоднородных. Между такими информационными базами, как правило, существует обмен данными, реализованный с помощью какого-либо механизма, например, встроенного механизма планов обмена и XML-сериализации. При этом, в зависимости от реализации механизма обмена, "локальные" информационные базы могут содержать собственный набор объектов (элементов справочников, документов и т.д.) и обмениваться с другими только частью из них, причем объекты обмена могут содержать ссылки на объекты, не включенные в обмен данными.
В таких условиях в информационной базе могут существовать ссылки, которые могут быть разрешены в пределах всей, "глобальной" информационной базы, но являются неразрешимыми в пределах "локальной" базы. Проведение в таких условиях тестирования информационной базы с проверкой ссылочной целостности приведет к появлению сообщений об ошибках, а в случае тестирования с исправлением может привести к частичному разрушению (изменению содержания или полному удалению объектов ссылки) в рамках "глобальной" информационной базы.

Для разрешения этого конфликта из множества проверок логической целостности информационной базы выделено подмножество проверок ссылочной целостности. Эти проверки выявляют физическое отсутствие объекта ссылки в рамках "локальной" информационной базы. В информационных базах, хранящих неполный набор объектов, такую проверку, а, тем более, проверку с исправлением, в силу приведенных выше причин, проводить не следует. Как уже упомянуто, данная совокупность проверок является подмножеством, и включить ее независимо от проверки логической целостности невозможно. Следует отметить, что отключение проверки ссылочной целостности не выключает проверку типа ссылок.

Управление необходимостью проведения проверки ссылочной целостности производится установкой соответствующего флажка в диалоге "Тестирование и исправление" в режиме Конфигуратор. При вызове из командной строки для ключа /IBCheckAndRepair (тестирование и исправление) предусмотрены два параметра, управляющие проверкой логической целостности:


Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua