Случилось как-то, что в одной базе при выполнении "Тестирования и исправления..." в режиме "Реструктуризация таблиц базы данных" столкнуться мне с ошибкой со страшной формулировкой:
В процессе обновления информационной базы произошла критическая ошибка
по причине:
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Не удалось вставить значение NULL в столбец "_Fld888", таблицы "Торговля.dbo._Reference66NG"; в столбце запрещены значения NULL. Ошибка в INSERT.
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=2, Severity=10, native=515, line=1
Но собственно публикация не о самой ошибке (описание борьбы с ошибкой можно изучить по ссылке) а о том, как предложенная узкая по назначению обработка помогла в очистке базы уж от очень неудачных элементов справочников. Вот скрины их примеров.
Штатным способом пометить на удаление элементы с кодом типа "F0000000N" не представлялось возможным.
Если кто-то сталкивался с такой ситуацией, то значет, что платформа в подобнос случае не позволит открыть элемент для дальнейшего заполнения, чтобы потом уже можно было пометить на удаление.
Но факт состоял в том, что было точно известно, что эти элементы лишние и ничего от них не зависит. А следовательно их можно удалить. Тем более если их не удалить, то "критическая ошибка" не была бы устранена.
Тестировалась в 1С: Бухгалтерия предприятия, ред. 2.0, релиз 2.0.66.39; ред. 3.0, релиз 3.0.64.28. Подойдет к любым конфигурациям.