CRM:显示表单上的所有注释而不是延迟加载

时间:2017-07-04 17:59:30

标签: javascript dynamics-crm lazy-loading crm dynamics-crm-2016

默认情况下,Dynamics CRM 365仅在实体表单的注释块上显示有限数量的注释。就我而言,它是10个音符。当用户向下滚动音符时,其余音符应该是“延迟加载”。不知何故,此功能被破坏,未加载备注。

enter image description here

在控制台和服务器的事件日志中都没有任何意义。这是完全的破坏。

是否可以同时加载所有备注,例如在旧的CRM 2011中?

或者也许有人可以建议如何调查此问题?

更新 刚刚在“警告”级别上使用跟踪工具检查了这个问题,这是我尝试加载笔记时显示的内容:

[2017-07-06 08:39:43.344] Process: w3wp |Organization:00000000-0000-0000-0000-000000000000 |Thread:   39 |Category: Exception |User: 00000000-0000-0000-0000-000000000000 |Level: Error |ReqId: 055f8ace-5e77-4c01-b980-0e97088ed4aa |ActivityId: 055f8ace-5e77-4c01-b980-0e97088ed4aa | CrmHttpException..ctor  ilOffset = 0x22
    at CrmHttpException..ctor(HttpStatusCode statusCode, String message, Object[] args)  ilOffset = 0x22
    at CrmODataOptimisticConcurrencyHelper.HandleGetMatchETags(CrmODataExecutionContext context, Entity entity)  ilOffset = 0x129
    at CrmODataServiceDataProvider.RetrieveEntityWithRelatedRecords(CrmODataExecutionContext context, EntityReference primaryEntityReference, QueryExpression qe, RelationshipQueryCollection relatedEntitiesQuery)  ilOffset = 0x19
    at CrmODataServiceDataProvider.RetrieveEdmEntity(CrmODataExecutionContext context, String edmEntityName, String entityKeyValue, ODataQueryOptions queryOptions)  ilOffset = 0x2D
    at EntityController.GetEntity(String entityName, String key)  ilOffset = 0x32
    at   ilOffset = 0xFFFFFFFF
    at <>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters)  ilOffset = 0x0
    at ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)  ilOffset = 0x34
    at <InvokeActionAsyncCore>d__0.MoveNext()  ilOffset = 0x52
    at AsyncTaskMethodBuilder`1.Start(TStateMachine& stateMachine)  ilOffset = 0x2C
    at ApiControllerActionInvoker.InvokeActionAsyncCore(HttpActionContext actionContext, CancellationToken cancellationToken)  ilOffset = 0x35
    at ApiControllerActionInvoker.InvokeActionAsync(HttpActionContext actionContext, CancellationToken cancellationToken)  ilOffset = 0x3
    at <ExecuteAsync>d__2.MoveNext()  ilOffset = 0xD9
    at AsyncTaskMethodBuilder`1.Start(TStateMachine& stateMachine)  ilOffset = 0x2C
    at ActionFilterResult.ExecuteAsync(CancellationToken cancellationToken)  ilOffset = 0x35
    at ApiController.ExecuteAsync(HttpControllerContext controllerContext, CancellationToken cancellationToken)  ilOffset = 0x138
    at <SendAsync>d__1.MoveNext()  ilOffset = 0x123
    at AsyncTaskMethodBuilder`1.Start(TStateMachine& stateMachine)  ilOffset = 0x2C
    at HttpControllerDispatcher.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x3D
    at HttpMessageInvoker.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x3C
    at HttpRoutingDispatcher.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0xBF
    at DelegatingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x19
    at <SendAsync>d__0.MoveNext()  ilOffset = 0x17D
    at AsyncTaskMethodBuilder`1.Start(TStateMachine& stateMachine)  ilOffset = 0x2C
    at CorsMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x3D
    at DelegatingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x19
    at <SendAsync>d__0.MoveNext()  ilOffset = 0x50
    at AsyncTaskMethodBuilder`1.Start(TStateMachine& stateMachine)  ilOffset = 0x2C
    at CrmETagMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x3D
    at DelegatingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x19
    at <SendAsync>d__0.MoveNext()  ilOffset = 0xF
    at AsyncTaskMethodBuilder`1.Start(TStateMachine& stateMachine)  ilOffset = 0x2C
    at CrmDelegatingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x3D
    at DelegatingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x19
    at <SendAsync>d__0.MoveNext()  ilOffset = 0x11D
    at AsyncTaskMethodBuilder`1.Start(TStateMachine& stateMachine)  ilOffset = 0x2C
    at HttpServer.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x3D
    at HttpMessageInvoker.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)  ilOffset = 0x3C
    at <ProcessRequestAsyncCore>d__0.MoveNext()  ilOffset = 0x96
    at AsyncTaskMethodBuilder.Start(TStateMachine& stateMachine)  ilOffset = 0x2C
    at HttpControllerHandler.ProcessRequestAsyncCore(HttpContextBase contextBase)  ilOffset = 0x2C
    at TaskAsyncHelper.BeginTask(Func`1 taskFunc, AsyncCallback callback, Object state)  ilOffset = 0xD
    at CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()  ilOffset = 0xE6
    at HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)  ilOffset = 0x3C
    at PipelineStepManager.ResumeSteps(Exception error)  ilOffset = 0x27A
    at HttpApplication.BeginProcessRequestNotification(HttpContext context, AsyncCallback cb)  ilOffset = 0x31
    at HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context)  ilOffset = 0xB0
    at PipelineRuntime.ProcessRequestNotificationHelper(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)  ilOffset = 0x131
    at PipelineRuntime.ProcessRequestNotification(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)  ilOffset = 0x0
    at UnsafeIISMethods.MgdIndicateCompletion(IntPtr pHandler, RequestNotificationStatus& notificationStatus)  ilOffset = 0xFFFFFFFF
    at UnsafeIISMethods.MgdIndicateCompletion(IntPtr pHandler, RequestNotificationStatus& notificationStatus)  ilOffset = 0xFFFFFFFF
    at PipelineRuntime.ProcessRequestNotificationHelper(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)  ilOffset = 0x1E7
    at PipelineRuntime.ProcessRequestNotification(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)  ilOffset = 0x0
>Crm Exception: Message: The requested record matches a specified If-None-Match version., ErrorCode: -2147088246
[2017-07-06 08:39:43.344] Process: w3wp |Organization:3eb43172-29f4-dd11-80b4-0015178dc928 |Thread:   39 |Category: Platform |User: 00000000-0000-0000-0000-000000000000 |Level: Error |ReqId: 055f8ace-5e77-4c01-b980-0e97088ed4aa |ActivityId: 055f8ace-5e77-4c01-b980-0e97088ed4aa | CrmODataUtilities.Trace  ilOffset = 0x24
>{"Error":{"InnerError":null,"Message":"CrmHttpException: The requested record matches a specified If-None-Match version."}}

1 个答案:

答案 0 :(得分:1)

@Dot_NETPro,现在问题解决了。

root位于Activity Feeds系统renderOlderPosts函数中,因为我们在之前的更新包中禁用了它,因为它已经在页面上为所有用户引发了空引用异常(因为MS错误)。该功能似乎没有被CRM使用,但在下一个更新包中它开始呈现注释。此外,现在在最新的更新包中修复了空引用异常。