Udostępnij za pośrednictwem


Błędy występują podczas pracy z rekordami programu SystemUser po migracji z Microsoft Dynamics CRM Online do lokalnego

Ten artykuł zawiera rozwiązanie problemu, który może zostać wyświetlony podczas pracy z rekordami programu SystemUser po migracji do Microsoft Dynamics CRM lokalnie.

Dotyczy: Microsoft Dynamics CRM 2011 r.
Oryginalny numer KB: 2830704

Symptomy

Po zaimportowaniu organizacji Microsoft Dynamics CRM Online do wdrożenia lokalnego Microsoft Dynamics CRM występują różne problemy z rekordami użytkowników systemu. Konkretne objawy obejmują:

  1. Podczas próby przypisania roli zabezpieczeń administratora systemu do użytkownika Microsoft Dynamics CRM występuje następujący błąd:

    System.Web.HttpUnhandledException: Microsoft Dynamics CRM wystąpił błąd. Numer referencyjny dla administratorów lub pomocy technicznej: #009FAAB1 2013-03-14T14:48:07.871872Z

    Szczegóły błędu:

    Wyjątek nieobsługiwany: System.ServiceModel.FaultException'1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: System.Web.HttpUnhandledException: Microsoft Dynamics CRM wystąpił błąd. Numer referencyjny dla administratorów lub pomocy technicznej: #009FAAB1Detail:

  2. Podczas próby zmodyfikowania rekordu użytkownika systemu w Microsoft Dynamics CRM występuje następujący błąd:

    Wystąpił.

    Szczegóły błędu:

    Nieobsługiwany wyjątek: System.ServiceModel.FaultException'1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: Zestaw Microsoft.Crm.Yammer, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35. Szczegółów:
    <OrganizationServiceFault xmlns:i="https://www.w3.org/2001/XMLSchema-instance" xmlns="https://schemas.microsoft.com/xrm/2011/Contracts">
    <ErrorCode-2147204719></ErrorCode>
    <ErrorDetails xmlns:d2p1="https://schemas.datacontract.org/2004/07/System.Collections.Generic" />
    <Nie można załadować zestawu komunikatów>Microsoft.Crm.Yammer, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35.</Komunikat>
    <Sygnatura>czasowa sygnatura< czasowa/sygnatura czasowa>
    <InnerFault i:nil="true" />
    <TraceText i:nil="true" />
    </OrganizationServiceFault>

Przyczyna

Microsoft Dynamics CRM Online została zaktualizowana w celu uwzględnienia możliwości integracji z usługą Yammer. Ta aktualizacja nie jest obecnie dostępna dla Microsoft Dynamics CRM lokalnie.

Rozwiązanie

Aby rozwiązać ten problem, integracja usługi Yammer musi zostać usunięta z bazy danych. Można to zrobić za pomocą następujących skryptów:

--Remove UpdateYammerProperties SDK Message from the database  
delete from SdkMessageResponseFieldBase where SdkMessageResponseId='1c4e947e-79f0-4e35-b2a8-000959ef93f4'  
delete from SdkMessageResponseBase where SdkMessageResponseId='1c4e947e-79f0-4e35-b2a8-000959ef93f4'  
delete from SdkMessageRequestFieldBase where SdkMessageRequestId='a951346f-b39e-44a3-8cfa-9e1d596573d9'  
delete from SdkMessageRequestBase where SdkMessageRequestId='a951346f-b39e-44a3-8cfa-9e1d596573d9'  
delete from SdkMessageProcessingStepBase where SdkMessageProcessingStepId = 'ea822b51-e812-4cf0-938b-2fb9baebf4c5'  
delete from SdkMessageFilterBase where SdkMessageFilterId = 'fec3b044-425a-4dfa-ad49-b7cb150be9f0'  
delete from SdkMessagePairBase where SdkMessagePairId = '190a01bb-7d20-4d08-a862-91f538bb0756'  
delete from SdkMessageBase where SdkMessageId = 'fdc7ffae-6c75-48f0-890a-b9cb96d43de3'  
--Remove references from the BaseIds table (note: there are no ids table for SdkMessageResponseField and SdkMessageRequestField entities)  
delete from SdkMessageResponseBaseIds where SdkMessageResponseId='1c4e947e-79f0-4e35-b2a8-000959ef93f4'  
delete from SdkMessageRequestBaseIds where SdkMessageRequestId='a951346f-b39e-44a3-8cfa-9e1d596573d9'  
delete from SdkMessageProcessingStepBaseIds where SdkMessageProcessingStepId = 'ea822b51-e812-4cf0-938b-2fb9baebf4c5'  
delete from SdkMessageFilterBaseIds where SdkMessageFilterId = 'fec3b044-425a-4dfa-ad49-b7cb150be9f0'  
delete from SdkMessagePairBaseIds where SdkMessagePairId = '190a01bb-7d20-4d08-a862-91f538bb0756'  
delete from SdkMessageBaseIds where SdkMessageId = 'fdc7ffae-6c75-48f0-890a-b9cb96d43de3'

--Remove FollowInYammer SDK Message and its' pluginType from the database  
delete from SdkMessageResponseFieldBase where SdkMessageResponseId='0BF5D7C1-345A-4B13-80C4-A7C2727B20F2'  
delete from SdkMessageResponseBase where SdkMessageResponseId='0BF5D7C1-345A-4B13-80C4-A7C2727B20F2'  
delete from SdkMessageRequestFieldBase where SdkMessageRequestId='83CC2E86-631F-498A-8300-A5AC2547AB3E'  
delete from SdkMessageRequestBase where SdkMessageRequestId='83CC2E86-631F-498A-8300-A5AC2547AB3E'  
delete from SdkMessageProcessingStepBase where SdkMessageProcessingStepId = '1B1B9068-E700-40C1-8C9F-9FC7A473A2C1'  
delete from SdkMessageFilterBase where SdkMessageFilterId = 'A43CE9F5-2698-4F1D-82D9-6FA179AB51D9'  
delete from SdkMessagePairBase where SdkMessagePairId = '00F48FF1-DF35-48BC-B846-9DEB63A3DACB'  
delete from SdkMessageBase where SdkMessageId = '5E4361F9-B294-4884-A186-6AB7B9F5FEA1'  
delete from PluginTypeBase where PluginTypeId = 'EDEF9169-DBC7-49D9-BE83-FCCB9C692B48'

--Remove references from the BaseIds table (note: there are no ids table for SdkMessageResponseField and SdkMessageRequestField entities)  
delete from SdkMessageResponseBaseIds where SdkMessageResponseId='0BF5D7C1-345A-4B13-80C4-A7C2727B20F2'  
delete from SdkMessageRequestBaseIds where SdkMessageRequestId='83CC2E86-631F-498A-8300-A5AC2547AB3E'  
delete from SdkMessageProcessingStepBaseIds where SdkMessageProcessingStepId = '1B1B9068-E700-40C1-8C9F-9FC7A473A2C1'  
delete from SdkMessageFilterBaseIds where SdkMessageFilterId = 'A43CE9F5-2698-4F1D-82D9-6FA179AB51D9'  
delete from SdkMessagePairBaseIds where SdkMessagePairId = '00F48FF1-DF35-48BC-B846-9DEB63A3DACB'  
delete from SdkMessageBaseIds where SdkMessageId = '5E4361F9-B294-4884-A186-6AB7B9F5FEA1'  
delete from PluginTypeBaseIds where PluginTypeId = 'EDEF9169-DBC7-49D9-BE83-FCCB9C692B48'

--Remove PostFollow.Create plugin  
delete from SdkMessageProcessingStepBase where SdkMessageProcessingStepId = 'D87006BC-3423-461d-8821-EA4120995C16'  
delete from PluginTypeBase where PluginTypeId = '2CEFE901-742F-48e1-8741-FA862274F30B'  
delete from SdkMessageProcessingStepBaseIds where SdkMessageProcessingStepId = 'D87006BC-3423-461d-8821-EA4120995C16'  
delete from PluginTypeBaseIds where PluginTypeId = '2CEFE901-742F-48e1-8741-FA862274F30B'

--Remove SystemUser.Update plugin  
delete from SdkMessageProcessingStepBase where SdkMessageProcessingStepId = 'AA12BB05-EAE1-4fbc-A2BE-E21CE11F7386'  
delete from PluginTypeBase where PluginTypeId = '09F61DB5-F673-4401-8C64-109BF7D38416'  
delete from SdkMessageProcessingStepBaseIds where SdkMessageProcessingStepId = 'AA12BB05-EAE1-4fbc-A2BE-E21CE11F7386'  
delete from PluginTypeBaseIds where PluginTypeId = '09F61DB5-F673-4401-8C64-109BF7D38416'

--Remove the Plugin Assembly Microsoft.Crm.Yammer  
delete from PluginAssemblyBase where PluginAssemblyId = '0B887035-5406-44e5-9EE1-0ABCBF980849'  
delete from PluginAssemblyBaseIds where PluginAssemblyId = '0B887035-5406-44e5-9EE1-0ABCBF980849'

--Remove the PostJsonPlugin and its assembly Microsoft.Crm.ExternalProxy.dll  
delete from PluginTypeBase where PluginTypeId = 'A4D7EAAF-9D37-4AC2-98A3-CCB372156479'  
delete from PluginTypeBaseIds where PluginTypeId = 'A4D7EAAF-9D37-4AC2-98A3-CCB372156479'  
delete from PluginAssemblyBase where PluginAssemblyId = 'E220F237-7DBE-4F0C-BE6D-18B08DD78271'  
delete from PluginAssemblyBaseIds where PluginAssemblyId = 'E220F237-7DBE-4F0C-BE6D-18B08DD78271'

--Remove Yammer's Async Operation Job  
DELETE FROM [dbo].[AsyncOperationBase] where [AsyncOperationId]='6EF45A82-1AAB-48ab-8301-CD753F265214'

--Deletes prvConfigureYammer privilege  
Declare @privilegeId as uniqueidentifier

Select @privilegeId =PrivilegeId From Privilege  
Where Name = 'prvConfigureYammer'

Select * From RolePrivileges  
Where PrivilegeId = @privilegeId

Select * From RoleTemplatePrivileges  
Where PrivilegeId = @privilegeId

Select * From PrivilegeObjectTypeCodes  
Where PrivilegeId = @privilegeId

--Starts deleting the Privilege entries  
Delete RolePrivileges  
Where PrivilegeId = @privilegeId

Delete RoleTemplatePrivileges  
Where PrivilegeId = @privilegeId

Delete PrivilegeObjectTypeCodes  
Where PrivilegeId = @privilegeId

Delete Privilege  
Where PrivilegeId = @privilegeId

Więcej informacji

Ten skrypt nie będzie wymagany po wydaniu pakietu zbiorczego aktualizacji 13 dla Microsoft Dynamics CRM lokalnie.