I have a custom processing screen:

In order to get the non-intrusive validation to work I had to create my own PXProcessButton vs. using the built-in processing delegate. All is working, however, now that I have done this I don’t have a processing dialog, just a little green dot that shows everything processed. How can I show the processing dialog in this scenario? FYI, I used code in AR507000 (Calculate Overdue charges) as the example for hooking up a custom processing button and having my required fields validate in this way prior to processing. Client didn’t like the behavior of just throwing PXExceptions.
Here is my custom PXProcessButton:
public PXAction<PMTaskToAssignFilter> Assign;
[PXUIField(DisplayName = "Assign", MapEnableRights = PXCacheRights.Update, MapViewRights = PXCacheRights.Update)]
[PXProcessButton]
public virtual IEnumerable assign(PXAdapter adapter)
{
PMTaskToAssignFilter filter = Filter.Current;
if (!CheckRequiredFieldsFilled(Filter.Cache, filter))
{
return adapter.Get();
}
List<PMTask> pMTasks = new List<PMTask>();
foreach (PMTask task in Tasks.Select())
{
if (task.Selected ?? false)
{
pMTasks.Add(task);
}
}
if (pMTasks.Count == 0) {
// Acuminator disable once PX1050 HardcodedStringInLocalizationMethod [Justification]
throw new PXException("No records selected!");
}
PXLongOperation.StartOperation(this, () =>
{
this.IsProcessing = true;
PMTaskAssignValues assignGraph = PXGraph.CreateInstance<PMTaskAssignValues>();
assignGraph.AssignValues(pMTasks, filter);
});
return adapter.Get();
}