# system.kanoa.order.updateProductionOrder(woInfo, userId)

Update a production order

---
### Parameters
**woInfo** `Dictionary`<br />
<table class='dictionaryKeyTable'>
	<tbody>
 	<tr><td> - assetId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - dueDate</td><td>DateTime</td><td></td></tr>	
 	<tr><td> - itemId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - itemUnitId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - modeId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - note</td><td>String</td><td></td></tr>	
 	<tr><td> - reqdQty</td><td>Float</td><td></td></tr>	
 	<tr><td> - updateClients</td><td>Boolean</td><td>If set to True, client sessions will be notified updated. Set to False when importing large numbers of orders and call system.kanoa.order.updateClientsProductionOrderChange() afterwards.</td></tr>	
 	<tr><td> - workOrderId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - workOrderName</td><td>String</td><td></td></tr>	
 	<tr><td> - workOrderSourceId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - workOrderStatusId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - workOrderTitle</td><td>String</td><td>Not required. Can be used to affect what is diplayed for an order on screens</td></tr>	
	</tbody>
</table>

**userId** `Integer`:Id of the user executing the function<br />

---
### Returns
**# of records modified** `Integer`<br />

---
### Example
```python
orderInfo = system.kanoa.utilities.convertDatasetRowToJSON(system.kanoa.order.getProductionOrders({workOrderName': 'XYZ123'}), 0)
orderInfo['reqdQty'] = 200
userId = 5
retVal = system.kanoa.order.updateProductionOrder(orderInfo, userId)
```
