Не добавляются поля в MS SQL Server

Здравствуйте, возникла проблема.
Есть объект с некоторыми полями и представление наследуемое от этого объекта, я создал замещающий объект который наследуется от этого объекта и такое же представление.
Проблема в том что в замещающем объекте я добавил поля, но они не отображаются в представлении в MS SQL Server. И я не могу удалять данные из этого объекта, так как отсутствуют поля которые я добавил самостоятельно.

BPM 7.1.0.172

Скрин из BPMa
Скрин из MS SQL Server

Нравится

7 комментариев

Здравствуйте.

Поля в представление нужно добавить вручную, также как и в системе и с таким же названием.

Спасибо. Добавил вручную, но возникла другая проблема. При удалении выскакивает сообщение:

"Выбранные элементы удалить невозможно, так как они используются в других объектах"

Попробовал дебажить. Выбивает ошибку "View or function 'dbo.VwInvoiceProduct' is not updatable because the modification affects multiple base tables"

Тарас, а если из студии запросом удалять? Возможно запись нельзя удалить из-за ограничений по внешним ключам? Тогда все корректно - срабатывает механизм целостности данных.
В таком случае, необходимо удалить изначально все связанные записи.

Никаких новых связей я не создавал. Просто добавил два новых поля (UsrComment, UsrCompleted).
Без них данные удаляются без проблем.

Можете профайлером отловить запрос на удаление?

Тарас,

Судя по всему, ваше представление не является обновляемым с точки зрения СУБД (объединяет в себе данные более, чем из одной таблицы, содержит агрегирующие функции и т.д.). Более подробно про то, какие представления обновляемые представления, изложено здесь.

Если ваше представление действительно не является обновляемым, то решить проблему обновления данных в базовых таблицах через объект представления можно с помощью триггеров представления INSTEAD OF для соответствующего действия.

Также Вам возможно будет полезна информация из статьи SDK про работу с представлениями. Не смотря на то, что в ней описан кейс для версии 5.Х, общий принцип работы с представлениями как с объектами в BPMonline остался неизменным и для 7-ки.

Спасибо за помощь. Проблему решил, добавив триггер.

Показать все комментарии