Tracking Cancelled Orders

In our quest to make Epicor better for CRM - Is anyone tracking cancelled orders? If so, how are you doing it, and is it working well?

Here’s what I was thinking:

  1. Add boolean field to Order Entry of OrderCancelled
  2. Add a text UD field for the reason why (linked to UD Codes)
  3. Add a decimal UD field to record the OrderHed.DocOrderAmt.

When you click cancel, you get a pop-up with the DocOrderAmt, select the reason for cancellation from UD Codes dropdown. Clicking Yes would close the order & record the order amount and reason why.

I’m all ears! Have a great weekend everyone.

we have done exactly like your thoughts.

in addition, we have removed delete button from sales order entry screen, and if the user press cancel in the pop-up box, order does not close. this is purely to prevent users closing order without choosing reasons.

Regarding 1.
by standard, when orderrel is closed without shipment orderrel.voidrelease field is marked true. we used this field to track cancellation.
Regarding 2.
that’s exactly what we have done.
Regarding 3.
orderrel table contains shipped qty and calculate difference sellingqty-shippedqty to know the cancelled qty and times with price. therefore we did not add new ud field to record cancelled value.

below is the gif.

1 Like

@prakash - Thanks! That looks great. I like the idea of less is more and using the OrderRel table for the value.

With the delete button gone, how do your salespeople handle changing order details while they’re working with the customer? We’ve found that overriding part numbers on a line messes up kit details sometimes, so our people were taught to delete the line.

Is it possible to restrict deleting the orderhed to a specific security group, but allow deleting lines/releases?

As of now, our business is not in the situation of selling kits. At this moment, if our customer changed there order such as cancelling line, our sales team close the line or release(pop-up box comes up to capture the reason if releases is closed or line is closed) .

I anticipate in future, if we start selling kits, will review this piece of work and find out best way to handle. perhaps, in future this modification may not needed at all as Epicor might standardise it?

Is it possible to restrict deleting the orderhed to a specific security group, but allow deleting lines/releases?
yes, you can. for instance, we have edi orders coming through, our sales team can delete lines/releases but not orderhed. this is to capture number of edi orders we received and compare with actual shipments.

from my memories…

  1. create security group allow_orderhed_delete and assisgn to the appropriate user who can delete orderhed.
  2. on bpm SalesOrder.MasterUpdate or SalesOrder.Update pre-processing check whether any orderhed.rowmod = “D” (orderhed table any rowstate is Deleted) and the currently logged in user is part of allow_orderhed_delete user group. if the currently logged in user is not part of the allow_orderhed_delete user group, raise exception and stop orderhed delete.
1 Like