At numerous points during order processing the sales order is checked for price, credit and availability among other things. When a sales order fails an audit the following happens:
• The hold code is written to the sales order header, both into the hold_string field and original_holds field. The hold_string field contains the current holds on the order and the original_holds field contains all holds that were ever on an order.
• If the hold is line item specific, i.e. a price hold or “ship complete” hold, the hold code is written to the line item hold_string field and to the order header hold_string.
• A record is created in the SOHOLD file for each hold being placed on the order. The SOHOLD record is created with an open status and it is loaded with the program that created the hold, the operator the hold was assigned to and other information.