【问题标题】:Dynamics CRM 2011 - Can not open a record form although seen in gridDynamics CRM 2011 - 尽管在网格中看到,但无法打开记录表单
【发布时间】:2015-07-07 02:50:26
【问题描述】:

我可以在实体网格中看到一条记录,但是当我单击该记录打开它的表单时,我收到一条错误消息“该记录不可用。未找到请求的记录,或者您的显示权限不足。” (因为我的系统是希伯来语的——我希望我的翻译是准确的) 我是系统管理员(根据 CRM 权限)。

检查服务器后,我在事件查看器中发现了一个 SQL 错误警告:

- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
  <Provider Name="ASP.NET 4.0.30319.0" /> 
  <EventID Qualifiers="32768">1309</EventID> 
  <Level>3</Level> 
  <Task>3</Task> 
  <Keywords>0x80000000000000</Keywords> 
  <TimeCreated SystemTime="2015-05-25T18:00:30.000000000Z" /> 
  <EventRecordID>5574520</EventRecordID> 
  <Channel>Application</Channel> 
  <Computer>ServerName</Computer> 
  <Security /> 
  </System>
- <EventData>
  <Data>3005</Data> 
  <Data>An unhandled exception has occurred.</Data> 
  <Data>25/05/2015 21:00:30</Data> 
  <Data>25/05/2015 18:00:30</Data> 
  <Data>cb25f0437bee49deaf1ed75e627b9dda</Data> 
  <Data>30028</Data> 
  <Data>6</Data> 
  <Data>0</Data> 
  <Data>/LM/W3SVC/1/ROOT-4-130770366125068492</Data> 
  <Data>Full</Data> 
  <Data>/</Data> 
  <Data>C:\Program Files\Microsoft Dynamics CRM\CRMWeb\</Data> 
  <Data>ServerName</Data> 
  <Data /> 
  <Data>1428</Data> 
  <Data>w3wp.exe</Data> 
  <Data>NT AUTHORITY\NETWORK SERVICE</Data> 
  <Data>CrmException</Data> 
  <Data>contact With Id = 69fa903e-f865-df11-b4ad-001ec9e8be31 Does Not Exist at Microsoft.Crm.Application.Platform.ServiceCommands.PlatformCommand.XrmExecuteInternal() at Microsoft.Crm.Application.Platform.ServiceCommands.RetrieveCommand.Execute() at Microsoft.Crm.Application.Platform.EntityProxy.Retrieve(String[] columns, Guid auditingTransactionId, Boolean addRequiredColumns) at Microsoft.Crm.Application.Platform.EntityProxy.Retrieve(String[] columns, Guid auditingTransactionId) at Microsoft.Crm.Application.Platform.EntityProxy.Retrieve(String columnSet, Guid auditingTransactionId) at Microsoft.Crm.Application.Platform.EntityProxy.Retrieve(String columnSet) at Microsoft.Crm.Application.Forms.AppForm.FormLoadEvent() at Microsoft.Crm.Application.Forms.AppForm.RaiseDataEvent(FormEventId eventId) at Microsoft.Crm.Application.Forms.EndUserForm.Initialize(Entity entity) at Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, FormDescriptor fd) at Microsoft.Crm.Application.Components.PageHandlers.ContactRecordPageHandler.ConfigureFormHandler() at Microsoft.Crm.Application.Components.PageHandlers.RecordPageHandler.ConfigureFormWrapper() at Microsoft.Crm.Application.Components.Utility.GenericEventProcessor.RaiseEvent(String eventName) at Microsoft.Crm.Application.Controls.PageManager.OnPreRender(EventArgs e) at System.Web.UI.Control.PreRenderRecursiveInternal() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)</Data> 
  <Data>http://ServerName/OrgName/userdefined/edit.aspx?_gridType=2&etc=2&id={69FA903E-F865-DF11-B4AD-001EC9E8BE31}&pagemode=iframe&preloadcache=1432576830146&rskey=882919810</Data> 
  <Data>/OrgName/userdefined/edit.aspx</Data> 
  <Data>192.168.30.4</Data> 
  <Data>Domain User</Data> 
  <Data>True</Data> 
  <Data>NTLM</Data> 
  <Data>NT AUTHORITY\NETWORK SERVICE</Data> 
  <Data>116</Data> 
  <Data>NT AUTHORITY\NETWORK SERVICE</Data> 
  <Data>False</Data> 
  <Data>at Microsoft.Crm.Application.Platform.ServiceCommands.PlatformCommand.XrmExecuteInternal() at Microsoft.Crm.Application.Platform.ServiceCommands.RetrieveCommand.Execute() at Microsoft.Crm.Application.Platform.EntityProxy.Retrieve(String[] columns, Guid auditingTransactionId, Boolean addRequiredColumns) at Microsoft.Crm.Application.Platform.EntityProxy.Retrieve(String[] columns, Guid auditingTransactionId) at Microsoft.Crm.Application.Platform.EntityProxy.Retrieve(String columnSet, Guid auditingTransactionId) at Microsoft.Crm.Application.Platform.EntityProxy.Retrieve(String columnSet) at Microsoft.Crm.Application.Forms.AppForm.FormLoadEvent() at Microsoft.Crm.Application.Forms.AppForm.RaiseDataEvent(FormEventId eventId) at Microsoft.Crm.Application.Forms.EndUserForm.Initialize(Entity entity) at Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, FormDescriptor fd) at Microsoft.Crm.Application.Components.PageHandlers.ContactRecordPageHandler.ConfigureFormHandler() at Microsoft.Crm.Application.Components.PageHandlers.RecordPageHandler.ConfigureFormWrapper() at Microsoft.Crm.Application.Components.Utility.GenericEventProcessor.RaiseEvent(String eventName) at Microsoft.Crm.Application.Controls.PageManager.OnPreRender(EventArgs e) at System.Web.UI.Control.PreRenderRecursiveInternal() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)</Data> 
  </EventData>
  </Event>

我不能删除记录也不能停用它! 现在我意识到我还有更多这样的记录,我只想过滤掉它们并永远摆脱它们! 请帮忙:(

谢谢。

【问题讨论】:

    标签: dynamics-crm-2011


    【解决方案1】:

    我建议检查数据库以查看该记录是否实际存在。

    例如在联系人表中搜索 contactid = '69fa903e-f865-df11-b4ad-001ec9e8be31'。

    如果它返回一个结果,那么记录肯定存在。如果不是,那么它不会。无论哪种方式,都会发生一些奇怪的事情。如果你能证明其中一个,我会向微软提出一张票。

    如果您有任何可能会干扰 CRM 正常行为的自定义设置,也值得考虑。

    【讨论】:

      【解决方案2】:

      感谢詹姆斯 :)

      其实你给了我一个很好的提示。

      观察数据库后,我意识到这些特定记录存在于 ContactsBase 表中,但由于某种原因(无法弄清楚为什么)这些相同的记录 ID 在 ContactsExtended 中缺失。

      这就是为什么在主视图中我能够看到这些记录(该视图仅包含 ContactsBase 中的字段)但实际打开表单时却失败了!

      因此,在 ContactsExtended 表中创建这些缺少 ID 的记录 - 使用 EXCEPT 语句(请参阅http://www.sqlusa.com/bestpractices2008/compare-tables/) - 完成了工作:)

      【讨论】:

        猜你喜欢
        • 2014-02-24
        • 2016-09-21
        • 1970-01-01
        • 2019-08-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-06-13
        • 1970-01-01
        相关资源
        最近更新 更多