Тема: Плагин
Показать сообщение отдельно
Старый 14.10.2011, 10:15   #3  
Borisvil is offline
Borisvil
Участник
 
123 / 36 (2) +++
Регистрация: 03.06.2011
Адрес: Санкт-Петербург
Цитата:
Сообщение от Nvovka Посмотреть сообщение
Создаю плагин на событие удаление записи. Задание постое есть сущность А(действие) и Б(интерес) между ними отношение 1-N много А в одной Б. Проверить необходимо если в Б А. В "Б" сущности "А" отобажаются в виде грида. Плагин висит на событие Pre. Как павильно писать шапку так как советовали что context["target"] is Entity-указывать ненужно на Удалении, а лучше работать через PrimaryEntity? На Create вешал плагин все нормально отрабатывает а с Delete возникают проблемы и как рабатать с гридом как по нему пойтись проверить есть ли там сущности "А"? Я начинающий так что извините если где не так выразился.
Не совсем понятно что Вы хотите в итоге сделать.
Если при удалении одной подчиненной сущности надо пробежаться по всем оставшимся, то самый верный вариант зарегистрировать плагин на post операцию, но сделать pre снимок, в котором получить значение id родительской сущности. Ну а потом уже все просто - делаете выборку всех подчиненных сущностей, у которых id родительской соответствует полученному (выборка будет уже без удаленной сущности) и делаете с ними что хотите и родительскую сущность тоже легко сможете получить и обновить.
ID из снимка получается так (CRM2011):
X++:
Entity preImage = (Entity)context.PreEntityImages["PreImage"];
EntityReference dogovorid = (EntityReference)preImage.Attributes["new_contarctid"];
Guid dogovorRecordId = dogovorid.Id;