system.kanoa.cmms.getMaintenanceKPISummary(startDate, endDate, assetId, maintenanceTypeName, priorityName, assignedUser)
Returns an overall maintenance KPI summary for a given date range, optionally narrowed by asset, maintenance type, priority, and/or assigned user. Unlike the grouped KPI functions (by asset, by type, by assigned user), this returns a single filtered summary rather than one row per dimension value, making it suitable for scorecard-style summary tiles or a filterable maintenance report header.
Parameters
startDate DateTime: Start date
endDate DateTime: End date
assetId Integer
maintenanceTypeName String
priorityName String
assignedUser String
Returns
kpiSummary pyDataset
Example
# Get a filtered KPI summary for high-priority corrective work
startDate = system.date.addDays(system.date.now(), -30)
endDate = system.date.now()
assetId = None
maintenanceTypeName = 'Preventive'
priorityName = 'High'
assignedUser = None
data = system.kanoa.utilities.convertDatasetToJSON(system.kanoa.cmms.getMaintenanceKPISummary(startDate, endDate, assetId, maintenanceTypeName, priorityName, assignedUser))
for i, row in enumerate(data):
print 'Row %i'%i
for k,v in row.items():
print k,v
break #Just limiting to returning the columns from the first record for display purposes