Skip to main content

system.kanoa.cmms.addWorkOrderScheduleEvent(workOrderEventInfo, userId)

Adds a single work order schedule event � a concrete, dated work order instance that has been generated from a recurring work order schedule (see setWorkOrderSchedule) or triggered by a condition-based rule. Use this function when a schedule event needs to be inserted directly (for example, from a custom generation job) rather than waiting for the platform's automatic schedule-event generation to run. The event is recorded against the parent work order/schedule referenced inside workOrderEventInfo.


Parameters

workOrderEventInfo Dictionary

- assetIdInteger
- assignedToInteger
- conditionIdIntegerNot required. Id of the condition that triggered creating this scheduled event
- currentValueFloatNot required. The value that triggered this scheduledEvent
- dueDateDateTime
- maintenanceSubTypeIdInteger
- requestedByInteger
- workOrderEventStatusIdIntegerNot required. If not provided, will be set to 'Assigned' if assignedTo is set, otherwise 'Open'.
- workOrderIdIntegerId of the reference workOrder template
- workOrderPriorityIdInteger
- workOrderScheduleIdIntegerNot required. Id of the work order schedule that triggered creating this scheduled event

userId Integer:Id of the user executing the function


Returns

workOrderEventId Integer
message String None if success


Example


Example

# Manually insert a work order schedule event, e.g. from a custom schedule-generation job that has computed the next occurrence itself.
workOrderPriorityId = system.kanoa.utilities.getFieldValue('workOrderPriorityId', system.kanoa.cmms.getWorkOrderPriorities({'workOrderPriorityName': 'High'}))
workOrderEventStatusId = system.kanoa.utilities.getFieldValue('workOrderStatusId', system.kanoa.cmms.getWorkOrderStatus({'workOrderStatusName': 'Released'}))
workOrderId = system.kanoa.utilities.getFieldValue('workOrderId', system.kanoa.cmms.getWorkOrder({'workOrderName': 'Seal Inspection'}))
workOrderEventInfo = {
"assetId": 4021,
"assignedTo": 118,
"dueDate": system.date.parse("2026-08-01 08:00:00"),
"maintenanceSubTypeId": 3,
"requestedBy": 205,
"requestedDate": system.date.parse("2026-07-27 09:15:00"),
"workOrderEventName": "Pump 12 - Seal Inspection",
"workOrderEventStatusId": workOrderPriorityId,
"workOrderPriorityId": workOrderEventStatusId,
"workOrderId": workOrderId
}
userId = system.kanoa.security.getIDPUserId({'userName': 'SYSTEM'})
workOrderEventId, message = system.kanoa.cmms.addWorkOrderScheduleEvent(workOrderEventInfo, userId)
print workOrderEventId, message