Skip to main content

system.mes.oee.getTopInterruptionLocationsByDuration

Retrieves the top interruption locations, ranked by their total accumulated downtime duration, for a specified parent location and time range. This helps identify which child locations are contributing the most to total downtime.

Permissions

This method requires the OEE.READ.GET permission.

Syntax

system.mes.oee.getTopInterruptionLocationsByDuration(locationIdOrPath, startDate, endDate, count)

Parameters

ParameterTypeNullableDescription
locationIdOrPathStringFalseThe parent location path or ID to analyze.
startDateDateFalseThe start time for the analysis period.
endDateDateFalseThe end time for the analysis period.
countIntegerFalseThe maximum number of interruption locations to return.

Returns

A list of JSON representations of DowntimeByInterruptionLocationDTO objects, each representing an interruption location and its aggregated data.

Each object has the following properties:

NameTypeNullableDescriptionDefault Value
interruptionLocationPathStringTruePath of the interruption locationnull
interruptionLocationNameStringTrueName of the interruption locationnull
durationDoubleTrueDuration of downtime caused by the interruption location0.0
countLongTrueCount of downtime events caused by the interruption locationnull
durationPercentDoubleTruePercentage of total duration caused by this interruption location0.0
countPercentDoubleTruePercentage of total count caused by this interruption location0.0

Code Examples

from java.util import Date
from java.util.concurrent import TimeUnit

# Get the top 3 interruption locations by duration for a production line in the last week
lineLocation = "Enterprise/Site/Area/Line1"
endTime = Date()
startTime = Date(endTime.getTime() - TimeUnit.DAYS.toMillis(7))

topLocations = system.mes.oee.getTopInterruptionLocationsByDuration(
lineLocation,
startTime,
endTime,
3
)

print "Top 3 Interruption Locations by Duration:"
for location in topLocations:
print " - {}: {:.2f} hours, {} interruptions".format(
location['interruptionLocationName'],
location['duration'] / 3600.0,
location['count']
)