Каталог решений - Ошибка SQL: Запись значения NULL в поле, не допускающее NULL

Ошибка SQL: Запись значения NULL в поле, не допускающее NULL

Ошибка SQL: Запись значения NULL в поле, не допускающее NULL

В наличии

При запуске тестировани и исправления появляется сообщение:

В процессе обновления информационной базы произошла критическая ошибка по причине: Ошибка СУБД:
Ошибка SQL: Запись значения NULL в поле, не допускающее NULL ‘_FLD891RREF’ по причине:
Ошибка SQL: Запись значения NULL в поле, не допускающее NULL ‘_FLD891RREF’

Категория:

Описание

Ошибка появляется как в файловом, так и в серверном варианте запуска программы.

В SQL

Узнаем имя проблемной таблицы

Use DB_NAME       
SELECT TABLE_NAME
FROM information_schema.COLUMNS
WHERE  COLUMN_NAME LIKE ‘%_FLD891RREF%’

В моем случае это _Reference61

Узнаем имя объекта в 1с. Просто останавливаемся с отладчике, в табло выводим результат ПолучитьСтруктуруХраненияБазыДанных(). Через Ctrl+F находим объект в 1с. В моем случае это был справочник КБК. Так и предполагалось, т.к. когда тестирование прервалось, в окне сообщений последняя запись была об этом типе объекта.

Ищем проблемный элемент

Select * from _Reference61
Where _FLD891RREF IS NULL

В моем случае сплошные NULL  — надо искать объект с пустыми полями. Справочник небольшой и я его увидел сразу.

И теперь главный вопрос — что делать. В данном случае на справочник ссылались два помеченных на удаление документа, так что решение было очевидно.

has been added to your cart:
Оформление заказа