The life-cycle of work orders is captured in its status graph - see this blog. A waiting status may be introduced for work orders waiting for parts.
- An approved work order is placed in Waiting status to wait for parts.
 - When parts are received the status is changed to ready for releasing to the field for execution.
 - The following is the partial work order status graph including the waiting status.
 
1. Status Dropdown
The first step is to add the new statuses to the status dropdown list.
- Menu path: Admin | Data Design | Dropdowns, find the work order status "cm_wo_status"
 - Add "Waiting" and "Ready" status
 
2. Status Graph
Next, modify the status graph in client/conf/CmConf.custom.js to link the new statuses to the existing statuses (Approved and Released).
//1) Link in waiting & ready
CmConf['wo_conf']['statusMap']['wos_approved']=
{next: {wos_released: true, wo_waiting: true, wos_new: true, 
wos_disapproved: true, wos_canceled: true, wos_incomplete: true}};
CmConf['wo_conf']['statusMap']['wo_waiting']=
{next: {wo_ready: true, wos_approved: true}};
CmConf['wo_conf']['statusMap']['wo_ready']=
{next: {wo_released: true, wos_approved: true, wo_waiting: true}};
//2) Link in next action
CmConf['wo_conf']['statusMcMap']['wos_approved']=
{next: {wos_released: true, wo_waiting: true}};
CmConf['wo_conf']['statusMcMap']['wo_waiting']=
{next: {wo_ready: true, wos_released: true}};
CmConf['wo_conf']['statusMcMap']['wo_ready']=
{next: {wos_released: true, wo_waiting: true}}; 
Additional Resources