Updates an existing work order identified by `workOrderId` within `workOrderInfo`, using `userId` for the audit trail (changedBy). 
Call this when work order details change after creation � for example, reassigning a technician, adjusting priority or schedule type, or updating the linked procedure or status. 
All workOrderInfo keys are required.

---
### Parameters
**workOrderInfo** `Dictionary`<br />
<table class='dictionaryKeyTable'>
	<tbody>
 	<tr><td> - assignedTo</td><td>Integer</td><td></td></tr>	
 	<tr><td> - description</td><td>String</td><td></td></tr>	
 	<tr><td> - enabled</td><td>Boolean</td><td></td></tr>	
 	<tr><td> - leadTimeDays</td><td>Integer</td><td></td></tr>	
 	<tr><td> - maintenanceSubTypeId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - maintenanceTypeId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - procedureId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - requestedBy</td><td>Integer</td><td></td></tr>	
 	<tr><td> - requestedDate</td><td>DateTime</td><td></td></tr>	
 	<tr><td> - scheduleTypeId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - title</td><td>String</td><td></td></tr>	
 	<tr><td> - workOrderId</td><td>Integer</td><td>Id of the workOrder</td></tr>	
 	<tr><td> - workOrderPriorityId</td><td>Integer</td><td></td></tr>	
 	<tr><td> - workOrderStatusId</td><td>Integer</td><td></td></tr>	
	</tbody>
</table>

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

---
### Returns
**# of records modified** `Integer`<br />
**message** `String` None if success<br />

---
### Example
```python
# Reassign and reprioritize an existing work order for Conveyor-12 on Line 3
workOrderInfo = {
					"title": "Inspect Pump-204 - unusual vibration",
					"description": "Operator reported abnormal vibration and noise on Pump-204 during morning rounds.",
					"maintenanceTypeId": 2,
					"maintenanceSubTypeId": 5,
					"scheduleTypeId": 1,
					"workOrderPriorityId": 3,
					"workOrderStatusId": 1,
					"procedureId": 118,
					"requestedBy": 1042,
					"assignedTo": 1077,
					"requestedDate": system.date.now(),
					"leadTimeDays": 2,
					"enabled": True
				}

userId = system.kanoa.security.getIDPUserId({'userName': 'SYSTEM'})
workOrderId, message = system.kanoa.cmms.updateWorkOrder(workOrderInfo, userId)
print workOrderId, message 
```
