locked
"Recently View Records" Not Populating. Are you having this problem? RRS feed

  • Question

  • I am using MS CRM 2013 Online through O365 and have been since Nov. 17th.  Right away I started have trouble with "Recently Viewed" records in the drop-down menus. At first I was having a problem with Accounts and Contacts. It just stopped showing anything in the list after a few days of using the CRM. I have an open case with MS CRM Support but they have not gotten back to me with a resolution. Test revealed that if I created a new user account, it was not affected by this issue and worked normally. I eventually just created a new account and assigned the records that I had already created to this new CRM user account. This also meant that I now have a new email address. I had to leave the previous CRM user active and follow that account to be able to see the "User Create Post" in the social feed.

    The new CRM user was working find up until today. Now it's exhibiting the same problem, but with "Cases". Recently Viewed "Accounts" and "Contacts" are still being displayed, but the list seems shorter than usual. That was one of the warning signs with "Cases", a shorten list. Now the list is completely empty. When clicked, it displays: "There aren't any recently viewed records to show." which is definitely not the case as I've been accessing cases all day, including creating and closing cases.

    Is anyone else seeing this problem with CRM Online? I searched Google for "There aren't any recently viewed records to show" and did not get a single hit for exact match. Please help as MS CRM support has been unable to provide a resolution.


    Roland White | AutoPilot Computing



    Thursday, January 9, 2014 8:14 PM

All replies

  • I'm getting the same issue with CRM on-premise and haven't found a solution yet.

    David Mangold Altai Systems

    Thursday, January 23, 2014 1:11 PM
  • David, have you been working with Microsoft support on this issue? I opened a case with them on December 16th and haven't made any progress yet which I'm very disappointed about. 

    I was thinking I could just move to the on-premise version to get around this problem but I guess not. I've now just created views that source by "Modified On" which helps but is not quite the same as you are not always modifying an entity, you may be just viewing it.

    If you haven't already, please open a case with Microsoft support. Maybe if enough people do that it will motivate MS to fix it.

    Thanks,

    Roland White | AutoPilot Computing




    Thursday, January 23, 2014 3:40 PM
  • I have the exact same problem with on prem, driving me nuts.  Was just about to try reinstalling the whole server but glad I searched.  I even made a new organization after reinstalling 2013 alone and it does it on that one as well, so not an org issue.  Anyone have any updates?
    Monday, April 21, 2014 8:36 PM
  • You can try following code to clean the recently view legacy data, then it should work:

    using System;
    using System.ServiceModel;
    using System.ServiceModel.Description;

    // These namespaces are found in the Microsoft.Xrm.Sdk.dll assembly
    // located in the SDK\bin folder of the SDK download.
    using Microsoft.Xrm.Sdk;
    using Microsoft.Xrm.Sdk.Query;
    using Microsoft.Xrm.Sdk.Client;

    namespace Microsoft.Crm.Sdk.Samples
    {
        /// <summary>
        /// Demonstrates how to do basic entity operations like create, retrieve,
        /// update, and delete.</summary>
        /// <remarks>
        /// At run-time, you will be given the option to delete all the
        /// database records created by this program.</remarks>
        public class CRUDOperations
        {
            #region Class Level Members

            private Guid _accountId;
            private Guid _parentAccountId;
            private OrganizationServiceProxy _serviceProxy;

            #endregion Class Level Members

            #region How To Sample Code
            /// <summary>
            /// This method first connects to the Organization service. Afterwards,
            /// basic create, retrieve, update, and delete entity operations are performed.
            /// </summary>
            /// <param name="serverConfig">Contains server connection information.</param>
            /// <param name="promptforDelete">When True, the user will be prompted to delete all
            /// created entities.</param>
            public void Run(ServerConnection.Configuration serverConfig, bool promptforDelete)
            {
                try
                {
                    //<snippetCRUDOperations1>
                    // Connect to the Organization service.
                    // The using statement assures that the service proxy will be properly disposed.
                    using (_serviceProxy = ServerConnection.GetOrganizationProxy(serverConfig))
                    {
                        // This statement is required to enable early-bound type support.
                        _serviceProxy.EnableProxyTypes();

               

                        QueryExpression recentViewedQuery = new QueryExpression
                        {
                            EntityName = UserEntityUISettings.EntityLogicalName,
                            ColumnSet = new ColumnSet("userentityuisettingsid"),
                            Criteria = new FilterExpression
                            {
                                Conditions =
        {
            new ConditionExpression
            {
                AttributeName = "ownerid",
                Operator = ConditionOperator.Equal,

                Values = { "USER_GUID" }//change the GUID as issue user
            }
        }
                            }
                        };


                        // Retrieve version number of the account. Shows BigInt attribute usage.

                        DataCollection<Entity> recentVieweds = _serviceProxy.RetrieveMultiple(
                            recentViewedQuery).Entities;
                        Console.WriteLine("Retrieved recentViewed num:{0}",
                                recentVieweds.Count);
                        bool deleteRecords = false;
                            Console.WriteLine("\nDo you want these entity records deleted? (y/n) [y]: ");
                            String answer = Console.ReadLine();
                            deleteRecords = (answer.StartsWith("y") || answer.StartsWith("Y") || answer == String.Empty);
                        foreach (Entity entity in recentVieweds)
                        {
                            UserEntityUISettings recentViewed = (UserEntityUISettings)entity;
                            DeleteRequiredRecords(recentViewed.Id, deleteRecords);
                        }


                    }
                    //</snippetCRUDOperations1>
                }

                // Catch any service fault exceptions that Microsoft Dynamics CRM throws.
                catch (FaultException<Microsoft.Xrm.Sdk.OrganizationServiceFault>)
                {
                    // You can handle an exception here or pass it back to the calling method.
                    throw;
                }
            }


            /// <summary>
            /// Deletes any entity records that were created for this sample.
            /// <param name="prompt">Indicates whether to prompt the user
            /// to delete the records created in this sample.</param>
            /// </summary>
            public void DeleteRequiredRecords(Guid id, Boolean deleteRecords)
            {
                if (deleteRecords)
                {
                    _serviceProxy.Delete(UserEntityUISettings.EntityLogicalName, id);
                    Console.WriteLine("id:"+id+" Entity records have been deleted.");
                }
            }

            #endregion How To Sample Code

            #region Main method

            /// <summary>
            /// Standard Main() method used by most SDK samples.
            /// </summary>
            /// <param name="args"></param>
            static public void Main(string[] args)
            {
                try
                {
                    // Obtain the target organization's Web address and client logon
                    // credentials from the user.
                    ServerConnection serverConnect = new ServerConnection();
                    ServerConnection.Configuration config = serverConnect.GetServerConfiguration();

                    CRUDOperations app = new CRUDOperations();
                    app.Run(config, true);
                }

                //<snippetCRUDOperations2>
                catch (FaultException<Microsoft.Xrm.Sdk.OrganizationServiceFault> ex)
                {
                    Console.WriteLine("The application terminated with an error.");
                    Console.WriteLine("Timestamp: {0}", ex.Detail.Timestamp);
                    Console.WriteLine("Code: {0}", ex.Detail.ErrorCode);
                    Console.WriteLine("Message: {0}", ex.Detail.Message);
                    Console.WriteLine("Inner Fault: {0}",
                        null == ex.Detail.InnerFault ? "No Inner Fault" : "Has Inner Fault");
                }
                catch (System.TimeoutException ex)
                {
                    Console.WriteLine("The application terminated with an error.");
                    Console.WriteLine("Message: {0}", ex.Message);
                    Console.WriteLine("Stack Trace: {0}", ex.StackTrace);
                    Console.WriteLine("Inner Fault: {0}",
                        null == ex.InnerException.Message ? "No Inner Fault" : ex.InnerException.Message);
                }
                catch (System.Exception ex)
                {
                    Console.WriteLine("The application terminated with an error.");
                    Console.WriteLine(ex.Message);

                    // Display the details of the inner exception.
                    if (ex.InnerException != null)
                    {
                        Console.WriteLine(ex.InnerException.Message);

                        FaultException<Microsoft.Xrm.Sdk.OrganizationServiceFault> fe = ex.InnerException
                            as FaultException<Microsoft.Xrm.Sdk.OrganizationServiceFault>;
                        if (fe != null)
                        {
                            Console.WriteLine("Timestamp: {0}", fe.Detail.Timestamp);
                            Console.WriteLine("Code: {0}", fe.Detail.ErrorCode);
                            Console.WriteLine("Message: {0}", fe.Detail.Message);
                            Console.WriteLine("Trace: {0}", fe.Detail.TraceText);
                            Console.WriteLine("Inner Fault: {0}",
                                null == fe.Detail.InnerFault ? "No Inner Fault" : "Has Inner Fault");
                        }
                    }
                }
                //</snippetCRUDOperations2>
                // Additional exceptions to catch: SecurityTokenValidationException, ExpiredSecurityTokenException,
                // SecurityAccessDeniedException, MessageSecurityException, and SecurityNegotiationException.

                finally
                {
                    Console.WriteLine("Press <Enter> to exit.");
                    Console.ReadLine();
                }
            }
            #endregion Main method
        }
    }
    //</snippetCRUDOperations>

    After you run the code, the issue should gone.

    Thank

    Wilson

    Tuesday, April 22, 2014 6:47 AM
  • Wilson,

    I am having the same issue as others above, Recently viewed items are not showing for users in CRM 2013. Can you please give me some more information on how to run this script? Is it a Vbs script? Do i only need the GUID of the user or do I also need the connection server (CRM backend)? And other information?


    If you can give me a step by step guide that would help me greatly.

    Kind Regards

    PasD

    Thursday, July 3, 2014 10:53 AM
  • It is a C# sample code to clean the old interrupt recently view data.

    What you need to do is:

    1.Download SDK

    2.Copy the code into one sample code file

    3.Change the GUID to the user's systemuserid

    4.Run it.

    Thanks.

    Wilson

    Friday, July 4, 2014 1:30 AM
  • I understand this script will clear out any existing values and reset the user.  Is there any explanation for why it seems to work for some period of time and the it just stops for some entities for some users??
    Tuesday, August 26, 2014 6:17 AM
  • Hi

    We have been facing the same issues for some users in our organisation. So for some of the users, the history stays, even if they change the desktop and access the environment from a different system. While for the others' the recently viewed records are not available even for 5 minutes. Is there any fix for it?

    Wednesday, March 25, 2015 5:42 PM