Calculating Cases Over SLA
The SLA on a Case in Acumatica is calculated by looking at the Class ID and Severity on a Case, then going to the Case Classes (CR206000) screen and looking up the Reaction Time based on those two values.
The Reaction Time gets added to the Date Reported on the Case to come up with the SLA value. You can see in the Case below that the SLA is 8 hours after the Date Reported.
When the Class ID and Severity in the screenshot above is looked up in the Case Classes (CR206000) screen, you can see that the Reaction Time is indeed 8 hours.
I wanted a way to find current Open Cases that are over their SLA.
For closed Cases, you can determine whether you met the SLA by comparing the Closing Date value to the SLA value. In the screenshot below, you can see that this Case met the SLA because the Closing Date is before the SLA.
But what about Open Cases? I wanted to know how many current Open Cases are over their SLA.
To do this I needed to compare the SLA Date/Time to the current Date/Time. But there is a time zoneissue to consider. The SLA value gets stored in the database in the UTC timezone. But the Now function uses the timezone of the system clock of the server. So I had to make sure to use the NowUTC function to make sure that I get Date/Time values in the same timezone.
Here is the formula that I came up with in a Generic Inquiry which shows how many minutes Over or Under the SLA. Then you can drop this on a Dashboard and filter to only show Cases without a Close Date where this calculated columns is positive.