Xrm.Page.ui Not Available on Primary Grid
While developing an EnableRule for some new functionality I decided to use an Async call. Here is a great link on how to use Async calls with EnableRule.
Consider that Microsoft sees this as the “proper way” to do things you might think that they would provide the necessary methods to complete this, that would only be half correct.
All of this works if you are on an entity form because Xrm.Page.ui.refreshRibbon() is available. Unfortunately if you are in a grid such as the one displayed below, Xrm.Page.ui is null, which means you cannot call the refreshRibbon() method.
If anyone knows a way in which to get around this please leave a comment