My organization is using the contact entity, and we are using the Timeline control( is it a control? is it correct to say out-of-box plugin?) to display Notes & Activities, specifically the Email and "Phone Call" activities. It is a new environment, built in v9, and has only ever used the UCI.
Across our organization, when end-users access the contact, the timeline will be incomplete -- it will be missing notes or phone calls or emails. It is intermittent, and when the screen is refreshed, the timeline properly returns all results.
Initially there were errors, which helped me troubleshoot -- I'll detail those below. But most of the time it does not produce an error, either in the console or rendered on the page -- it just doesn't return the full results until after a refresh.
One of the (few!) times it has returned an actual error, here is the error:
TypeError: Cannot read property 'stateHandler' of undefined
at TimelineWall.initTimelineWall (-------------------------------------/webresources/cc_MscrmControls.TimelineWallControl.TimelineWall/TimeLineWallControl.js:2:272395)
at TimelineWall.init (------------------------------------/webresources/cc_MscrmControls.TimelineWallControl.TimelineWall/TimeLineWallControl.js:2:270166)
at t._initializeControl (---------------------------------/uclient/scripts/5.js?v=1.4.1021-2006.2:1:162471)
at ----------------------------/uclient/scripts/5.js?v=1.4.1021-2006.2:1:151578
at e.v [as _scheduleControlUpdate] (----------------------------/uclient/scripts/app.js?v=1.4.1021-2006.2:4002:395)
at e.scheduleControlUpdate (----------------------------/uclient/scripts/app.js?v=1.4.1021-2006.2:4355:1508)
at i (----------------------------/uclient/scripts/5.js?v=1.4.1021-2006.2:1:151499)
at t._initializeData (----------------------------/uclient/scripts/5.js?v=1.4.1021-2006.2:1:151616)
at t.componentDidMount (----------------------------/uclient/scripts/5.js?v=1.4.1021-2006.2:1:175272)
at ----------------------------/uclient/scripts/vendor.js?v=1.4.1021-2006.2:17:94858
Here's my troubleshooting (so far!):
#1
I found this article from Dec 2018 (and thought I'd solved it! Because it's so similar to our issue): https://support.microsoft.com/en-sg/help/4480001/timeline-does-not-render-and-shows-records-could-not-be-loaded -- we have removed all custom card forms from the timeline (mitigation #2). This didn't solve the issue.
Mitigation #1, increasing the quantity of the QueryLinkEntityLimit -- doesn't seem to be related, we only have three entities we're querying in the fetchXML, and they're all out-of-the-box: Notes, "Phone Calls", and Emails.
#2
https://community.dynamics.com/crm/f/microsoft-dynamics-crm-forum/279479/case-timeline-showing-unexpected-error
We're not using a custom entity, so I'm not sure this is relevant to us. The gist is to add a "read" privilege to the solution in the users' security role.
I'm scared of mucking with the security roles: Microsoft Consulting Services made this solution, but when I've done this in our test environment, it has made no noticeable change.
#3
On consulting Microsoft support, we were asked to remove the Timeline (control?) from the form, add it back from the toolbar, and then publish the changes. We did this, and it broke our D365 workflow screen, where you go into the entity and update. As it broke the workflow, I don't want to push this to production, so cannot test it.
There are a number of questions out there regarding the timeline, but either predate the UCI, or are not related. I'm wondering if anyone has experienced this? Any suggestions of troubleshooting next steps? Anything I left out that could help?
The timeline in the UCI does not consistently return all results, and shows no error when it doesn't return all results.