We’re thinking of having Sales Order Entry’s Ready to Process button no longer auto-checked, but need a reminder for the sales people to check it when the order is complete (and maybe Ready to Fulfill also)…
This pop-up would happen at the end of the order if RTP is not checked:
When Order Entry is being closed
When an Order Number is changed
I could use a trace to find the method to use a BPM for #2, but don’t know where to start for #1. Would this be a C# customization for the Order Entry UI? Something with WinForms (I’m just name dropping… Very unfamiliar with it, but can copy/paste with the best of 'em!)
You are correct that it would be a UI Customization.
I believe it is the Closing Form Event. Open up the Customization screen and go to the Wizards tab and the Form Event Wizard. You should be able to put a message pop up here that could ask if they need to check RTP.
Below sample which I used for the same purpose.
private void SalesOrderForm_Closing(object sender, System.ComponentModel.CancelEventArgs args)
{
// Add Event Handler Code
if (edvOrderHed.HasRow)
{
if (Convert.ToBoolean(edvOrderHed.dataView[edvOrderHed.Row][“ReadyToCalc”].ToString()) == false)
{
args.Cancel = true;
Epicor.Mfg.UI.EpiMessageBox.Show(“Unable to close the Sales Order Entry form without Ready To Process flag checked. Please check the flag.”,“Critical Warning”,MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
else return;
}
private void baseToolbarsManager_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs args)
{
if (args.Tool.Key == "ClearTool")
{
if (edvOrderHed.HasRow)
{
if (Convert.ToBoolean(edvOrderHed.dataView[edvOrderHed.Row]["ReadyToCalc"].ToString()) == false)
{
throw new System.ArgumentException("Unable to close the Sales Order Entry form without Ready To Process flag checked. Please check the flag.", "original");
}
}
else return;
}
Trust that your users will take notice of the standard Epicor warning…
…but then for belt and braces setup an SSIS Package that runs every 15 mins and looks for any Sales Order where RTP = false, and the ChangeDate is >15 mins ago. Send it to either the “Entered By” person listed, or a team responsible for processing Sales Orders.