История до сих пор:
Пару недель назад поле полностью исчезло из таблицы AccountExtensionBase, но осталось в представлениях Account и FilteredAccount. Это привело к тому, что форма «Основная информация» в самой CRM (которая извлекается из этой таблицы) перестала работать полностью.
Чтобы исправить вышесказанное, я вручную удалил указанное поле из определений указанных видов и отредактировал форму «Основная информация», чтобы больше не ссылаться на отсутствующее поле.
То есть осталось в более-менее рабочем состоянии. Единственное, что по-прежнему не работает - это добавление связанных сущностей из уже открытой формы Main Info. При попытке выдает исключение 0x80044150. Узнав об этом, я вручную удалил поле из базы данных METABASE и вручную удалил все ссылки на него в таблице OrganizationUIBase. Ничего такого. CRM не позволит мне просто воссоздать поле, и я также не могу убедить его в том, что он действительно записывает в журнал трассировки, чтобы я мог получить больше информации о том, что происходит. Я знаю, что иногда это происходит, когда вы превышаете предел опций 2155 для полей списка выбора внутри сущности, но я не думаю, что это так, потому что первое, что я попробовал, когда проявилась первоначальная проблема, было удалить два полных поля списка выбора, которые были больше не нужен, и это явно не помогло.
Так что есть идеи о том, что может быть причиной этого, или что я могу сделать, чтобы это исправить, или даже каким может быть следующий возможный шаг? Я здесь немного тупой.
Редактировать: запись журнала трассировки заработала ...
at ErrorInformation.LogError ()
at ErrorInformation..ctor (исключение исключения, Uri requestUrl)
в MainApplication.Application_Error (Отправитель объекта, EventArgs e)
в EventHandler.Invoke (Отправитель объекта, EventArgs e)
в HttpApplication.RaiseOnError ()
в HttpApplication.RecordError (ошибка исключения)
в HttpApplication.ResumeSteps (ошибка исключения)
в HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest (контекст HttpContext, AsyncCallback cb, Object extraData)
в HttpRuntime.ProcessRequestInternal (HttpWorkerRequest wr)
в HttpRuntime.ProcessRequest (HttpWorkerRequest wr)
at ISAPIRuntime.ProcessRequest (IntPtr ecb, Int32 iWRType)
> Отчет об ошибке платформы MSCRM:
Ошибка: возникла исключительная ситуация типа System.Web.HttpUnhandledException.
Номер ошибки: 0x80044150
Сообщение об ошибке: исключение из HRESULT: 0x80044150.
Сведения об ошибке: исключение из HRESULT: 0x80044150.
Исходный файл: не доступно
Номер строки: не доступно
URL запроса: http://crmserv/userdefined/edit.aspx?_CreateFromType=1&_CreateFromId={94892C13-A23E-DB11-BBF1-0014221C4264}&etc=10059
Информация трассировки стека: было сгенерировано исключение типа System.Web.HttpUnhandledException.
в System.Web.UI.Page.HandleError (исключение e)
в System.Web.UI.Page.ProcessRequestMain ()
в System.Web.UI.Page.ProcessRequest ()
в System.Web.UI.Page.ProcessRequest (контекст HttpContext)
в System.Web.CallHandlerExecutionStep.System.Web.HttpApplication + IExecutionStep.Execute ()
в System.Web.HttpApplication.ExecuteStep (шаг IExecutionStep, логический и завершен синхронно)
в Microsoft.Crm.Platform.ComProxy.CRMCustomizationClass.Transform (CUserAuth & Caller, CObjectName & SourceObject, Int32 TargetObjectType, Int32 TargetFieldType)
в Microsoft.Crm.Application.Platform.Entity.CreateFrom (Int32 sourceEntityType, String sourceEntityId, TransformType transformType)
в Microsoft.Crm.Application.Forms.EndUserForm.PopulateDefaultDataIfAvailable ()
в Microsoft.Crm.Application.Forms.EndUserForm.RetrieveParams ()
в Microsoft.Crm.Application.Forms.EndUserForm.Initialize (Entity entity)
в Microsoft.Crm.Application.Forms.CustomizableForm.Execute (Entity entity, String formId, String formType)
в Microsoft.Crm.Application.Forms.CustomizableForm.Execute (Entity entity)
в Microsoft.Crm.Application.Pages.UserDefined.DetailPage.ConfigureForm ()
в Microsoft.Crm.Application.Controls.AppPage.OnPreRender (EventArgs e)
в System.Web.UI.Control.PreRenderRecursiveInternal ()
в System.Web.UI.Page.ProcessRequestMain ()Тип: Платформа
На самом деле это может быть более полезное сообщение об ошибке. Вышеупомянутое обнаружилось дважды, но этот получает множество очков каждую минуту:
в User.GetPrivilege (String priv, глубина PRIVILEGE_DEPTH)
в User.GetPrivilege (Int32 objectType, PrivilegeId privilegeId)
в AppMenuBar.BuildNewObjectMenu (меню menuObject, логическое buildAsSubMenu)
в AppFormMenuBar.BuildFileMenu (String formName)
в AppFormMenuBar.Execute (PrivilegeCheck privilegeCheck, String formName)
в AppFormMenuBar.Execute (PrivilegeCheck privilegeCheck)
в AccountDetailPage.ConfigureMenus ()
на AppPage.OnPreRender (EventArgs e)
в Control.PreRenderRecursiveInternal ()
в Page.ProcessRequestMain ()
в Page.ProcessRequest ()
в Page.ProcessRequest (контекст HttpContext)
в CallHandlerExecutionStep.System.Web.HttpApplication + IExecutionStep.Execute ()
в HttpApplication.ExecuteStep (шаг IExecutionStep, логическое и завершено синхронно)
в HttpApplication.ResumeSteps (ошибка исключения)
в HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest (контекст HttpContext, AsyncCallback cb, Object extraData)
в HttpRuntime.ProcessRequestInternal (HttpWorkerRequest wr)
в HttpRuntime.ProcessRequest (HttpWorkerRequest wr)
at ISAPIRuntime.ProcessRequest (IntPtr ecb, Int32 iWRType)
Сбой проверки привилегий для пользователя:, пользователь не имеет привилегии: {9f2b415e-8a0c-430c-bdd1-ad2052b86b02}
В последней строке отображается множество разных пользователей. Что-нибудь?