Источник:
http://feeds.feedburner.com/~r/crmwo.../~3/425728155/
==============
После обновления с Microsoft Dynamics CRM 3.0 на CRM 4.0 Вы можете встретиться с проблемой переназначения владельца определённых объектов. Стандартная ошибка, которая Вам показывается это:
Invalid Argument
Если Вы при этом активируете детальное отображение ошибок, то Вы увидите следующую ошибку:
>MSCRM Error Report:
——————————————————————————————————–
Error: Exception of type ‘System.Web.HttpUnhandledException’ was thrown.
Error Number: 0×80040203
Error Message: There should be only one owner party for an activity
Error Details: There should be only one owner party for an activity
Итак, проблема заключается в том, что после обновления отсутствуют владельцы для объектов/действий, где у объектов отсутствует “OrganizationID” или повторяющиеся владельцы у одних и тех же объектов.
Для того, чтобы это проверить запускаем следующие скрипты в SQL для базы данных Вашей CRM организации
(Не забывайте о том, что все действия с базой данных Вы проводите на свой страх и риск. ДЕЛАЙТЕ БЭКАП ВАШЕЙ БАЗЫ CRM):
1. Проверка объектов с отсутствующем “OrganizationID”:
SELECT COUNT(*) FROM QueueItemBase WHERE OrganizationId IS NULL</p>
2. Проверка объектов с отсутствующими владельцами:
Select COUNT(*) FROM ActivityPartyBase b Right Outer Join ActivityPointer a on a.activityid = b.activityid And b.ParticipationTypeMask = 9 where b.ActivityPartyId is null</p>
Для решения проблемы запускаем следующие скрипты:
1.
a. SELECT OrganizationId FROM OrganizationBase (копируем результат в буфер обмена) b. UPDATE QueueItemBase SET OrganizationId = 'Вставляем результат из пункта А' WHERE OrganizationId IS NULL</p>
2.
Insert Into ActivityPartyBase ( ActivityId,ActivityPartyId,PartyId,PartyObjectTypeCode,ParticipationTypeMask) Select a.ActivityId,NewId(),a.OwningUser,8,9 FROM ActivityPartyBase b Right Outer Join ActivityPointer a on a.activityid = b.activityid And b.ParticipationTypeMask = 9 where ActivityPartyId is null</p>
3. Возможно также присутствие повторяющихся владельцев у объектов:
</p></p>
-- This script deletes duplicate owner parties from activities-- declare the cursor fetch variablesdeclare @ActivityId varchar(255)declare @ActivityPartyId varchar(255)declare @NewActivityId varchar(255)declare @NewActivityPartyId varchar(255) -- define activity party cursordeclare c cursor forselect ActivityId,ActivityPartyIdfrom dbo.ActivityPartyBasewhere ParticipationTypeMask = 9order by ActivityId open cfetch next from c into @NewActivityId, @NewActivityPartyId while 1 = 1beginselect @ActivityId = @NewActivityIdselect @ActivityPartyId = @NewActivityPartyId fetch next from c into @NewActivityId, @NewActivityPartyId if (@@fetch_status = 0 ) beginif @NewActivityId = @ActivityIdbegindelete from ActivityPartyBase where ActivityPartyId = @NewActivityPartyIdendendelsebeginbreakendend close cdeallocate cgo</p>
Вот проблема и решена. Пробуем переназначить объекты и в случае проблем пишите мне на емаил.
С Уважением, Денис
Copyright © Мир CRM. Этот персональный, не коммерческий Feed. Если вы читаете этот материал не в вашем RSS клиенте, сайт на котором он находиться получил его незаконным образом.
Источник:
http://feeds.feedburner.com/~r/crmwo.../~3/425728155/