Добрый день.
В Мастере разделов, при сохранении изменений, или просто при соханении выдаёт ошибку:
SqlException. Cannot define foreign key constraint 'FKDLqrwK7RvllotJ6M6yTi9oYcUA' with cascaded DELETE or UPDATE on table 'Contact' because the table has an INSTEAD OF DELETE or UPDATE TRIGGER defined on it. Could not create constraint. See previous errors.
Подскажите решение.
Нравится
Если зайти в конфигурацию, открыть схему таблицы Contact и пересохранить её возникают ли какие-то ошибки или схема пересохраняется без ошибок?
Алла Савельева,
данная ошибка возникает при обновлении структуры БД, не только в Контактах, но и в Проектах и т.п.
Каждый раз при сохранении, даже если не были внесены изменения возникает данная ошибка.
Crystal It Admin пишет:
Каждый раз при сохранении, даже если не были внесены изменения возникает данная ошибка.
1. Это Вы сейчас пишете о работе мастера раздела?
А в конфигурации схема таблицы пересохраняется?
2. Проверьте, если скомпилировать всю конфигурацию будут возникать ошибки?
3. До того, как начала возникать ошибка, выполнялись ли какие-то действия с Вашей стороны, после которых появилась данная проблема?
Судя по тексту, ругается на некий триггер на таблице контактов, который не даёт создавать каскадные связи со ссылкой на неё. А Вы в мастере разделов создали каким-то образом такую связь. Связь другого раздела с контактом.
Алла Савельева,
1. да, о мастере.
2. в конфигурации при компиляции (Контакта) ошибок не возникает. Но при обновлении структуры БД выдаёт:
Помилка
Не удалось обновить структуру для схем: Contact
3. Да, создал поле с привязкой к справочнику Проекты.
Задача состояла в том, что б в карточне контакта можно было видеть все проекты, которые по нему ведутся.
Зверев Александр,
Создали связь с справочником Проекты.
Задача состояла в том, что б в карточке контакта можно было видеть все проекты, которые по нему ведутся
Значит, при создании детали (или справочника) в её объекте у поля «Контакт» стоит галка «каскадная связь». А таблица контактов со своими триггерами таковую создать не даёт.
Зверев Александр,
Есть ли возможность это исправить? Сейчас сохранить любые изменения возможности нет, так как выскакивает эта ошибка.
Или нужно полностью откатывать? Это песочница, если что.
В базе найти этот триггер и временно отключить. А потом разбираться, откуда он взялся и есть ли такой стандартно.
Или же найти в недавно изменявшихся таблицах эту связь FKDLqrwK7RvllotJ6M6yTi9oYcUA и удалить добавленное поле, которое её породило.