Recent List Customisation

This article looks at how the recent list interacts with custom entities.

There are 4 components to consider that make up the functionality of an entity's recent list:
• The code that adds a record to the recent list.
• The find hyperlink (entity name and image in the recent list) and the screen it loads.
• The data that displays as a hyperlink.
• The screen that loads when a recent hyperlink is clicked.

The code that adds a record to the recent list

The first topic is how does an ASP page add a record to the recent list? The convention is that when a user loads a summary page for an entity record to add the ID of the record to the recent list, this is done by the eWare object in the following code sample:
eWare.SetContext("EntityName", "EntityId");
This actually adds the record to Users.User_RecentList field value, which is what the DLL reads to build a user's recent list.

The Find Hyperlink

How do you change the label which displays as the entity name next to entity's image in the recent list? You need to add the following translation:
Caption Code: <>
Caption Family: RecentList
Caption Family Type: Choices
US Translation: <>
You can then translate the find label into any language.

How do you know what ASP page will called if the user clicks the "entity name" label? Well, the answer is that the DLL is hard-coded to look in the CustomPages directory for:
CustomPages/<>/<>Find.asp

So make sure you follow the above naming convention by adding a sub-directory of your entity name and then an ASP page with a file name of "your entity name" + "Find.asp".

The Data that Displays

The data that displays in the list is defined by the following translation record:
Caption Code: NameColumn
Caption Family: <>
Caption Family Type: Tags
US Translation: <>
The only limitation I have found is that you can only enter one field name in the translation. In order to see your change you will have to clear out the list.


The screen that loads when a recent hyperlink is clicked

The screen that is loaded when a record's hyperlink is clicked in the recent list is defined the following translation record:
Caption Code: SummaryPage
Caption Family: <>
Caption Family Type: Tags
US Translation: <>

There is one important note the DLL is hard-coded to look in the CustomPages directory for a directory of your entity name, so if the US translation page name was "DilbertSummary.asp" and the entity was called "ScoobyDoo" the DLL would make the hyperlink point to:
CustomPages/ScoobyDoo/DilbertSummary.asp
This does require an IISRESET before your change will be testable.
Anonymous
  • The recent list is just a simple list of the last "x" number of records a user has viewed. The records are grouped by type (Case, Oppo etc) but there is no priority given to a particular type of record. You could decide to remove records from this but a better approach may be for users to make use of the favourites option to create short cuts to their key records. Perhaps training users to 'favourite' contact records?

  • Hi Jeff

    I've increased the no of records in the history to 40 BUT because I have a large number of custom entities the recent list seems to apportion this over the number of entities. So I only see 3 records against my most popular entity as the rest happen to have been based on me visiting less common entities.

    If I clear history, I start off OK, but again once accessing some lesser used entities the number recorded per entity is reduced. Is there a way of apportioning the history to key entities or will I have to remove the 'not so critical' entities from my history record? Thanks

  • Have a look at the earlier comments that discuss entities and the .NET API.

  • FormerMember @jeff , its quite useful article but what if custom entity is made through DOT NET DATAPages and there is no ASP PAGE (e.g SummaryPage.asp). I have used the above convention but its not showing right page when i click on entity in recent list ??

    Please advise.

    Thanks

    ##crm ##crm73stomASP

  • Hi all,

    It is possible to add Communication entity in Recent List?

    Thanks,

    regards