Please enter your search criteria to begin searching
Earlier today a colleague asked me my opinion on an interesting requirement. Someone he has been speaking to had said they wanted to be able to track how long team members were actually on a Case page so that they can track actual Case work times and not just how long since it was created. My response was that although I have not done it before personally, it sounds like something that should be possible at least to a point.
The Case might have spent a lot of that time in queues or assigned to a Case handler who was off doing something else.
I was thinking of flows with a loop and pause to count time on a page, a Visualforce component using onload and unload etc. It feels like there are a ton of tools and a workable solution should be in there somewhere depending on the exact requirements.
The discussion piqued my interest so I decided to do a bit of research to find out just how practical this might be. I decided to start by having a quick check with my favourite AppExchange developer, Salesforce Labs, before getting my hands dirty. It turns out they have a solution! LWC Service Console Case Timer.
I installed it in a sandbox to take a quick look and within less than 5 minutes I had it running. It is a very simple to set up, drag and drop lightning component, which you add to the Case lightning page. You can configure it to automatically start counting when you arrive on the page or be manually started with a play/pause style button. You can also enable an “Add” button to allow manual logging of additional time or even hide the component completely so that it just counts in the background.
Time logs are stored as records in a custom object so are reportable, and installing the managed package adds a rollup summary field to the Case object to total up logged time. The best thing though is that the source code for this is available on GitHub so administrators or developers with the right skills can take this as a starting point and build upon it if it doesn’t quite fit their use case.
I was all ready to charge off and start playing with things to come up with my own solution, and while that would have been an interesting exercise, I could have spent a lot of time before arriving at any conclusion. A quick check saved me all that. The morale of the story here is to remember the scale of the Salesforce platform and unlike when working with many other systems, there is almost always going to be someone out there who has wanted to do something similar to your requirement. The power that gives us to be able to share solutions, to requirements that allow us to skip huge chunks of development time, or in some cases avoid needing to build anything new at all, cannot be underestimated.