It would be useful to extend the functionality whereby the system stores details of cancelled order lines in SOP (and maybe POP) so that when the user is prompted to decide whether they want to create a cancelled order line, they could also assign a reason code. This way, you could determine how many lost sales were due to having insufficient stock, or customers changing their mind, and separate those from just correcting data entry errors.