TimeMeasureEnd


TimeMeasureEnd вместе с TimeMeasureStart составляет пару объектов, позволяющую измерять время, проведенное заявками между двумя точками диаграммы процесса. Обычно с их помощью измеряется время нахождения заявки в системе или длительность пребывания заявки в каком-то подпроцессе.

TimeMeasureStart задает начальную точку, он запоминает момент времени, в который заявка проходит через этот объект. 

TimeMeasureEnd вычисляет для каждой поступившей в него заявки разность между текущим моментом времени и моментом, запомненным объектом TimeMeasureStart, на который ссылается этот объект. Эта разность добавляется во встроенные в объект TimeMeasureEnd элементы сбора статистики. Вся операция выполняется в течение нулевого времени – как только заявка входит в объект TimeMeasureEnd, она тут же покидает его.

Статистика собирается в два объекта - в одном подсчитывается распределение измеренных времен (элемент "данные гистограммы" distribution). Эта статистика может использоваться, в частности, для построения гистограмм. Второй элемент данных - набор данных  dataset. Его значения удобно отображать, например, на временном графике.

В одной диаграмме процесса может быть несколько объектов TimeMeasureEnd, каждый из которых может ссылаться сразу на несколько объектов TimeMeasureStart. Это позволяет легко подсчитывать время пребывания заявки в системе, заданной разветвленной диаграммой процесса со множеством источников заявок и объектов, поглощающих заявки.


Демонстрационная модель: Measuring Length of Stay

Параметры класса

Класс заявки
Класс заявок, проходящих через объект, должен быть подклассом Entity. Указав класс заявки, Вы можете напрямую обращаться к полям этого класса в коде динамических параметров, например, onEnter.
Синтаксис: T extends Entity
Значение по умолчанию: Entity

Порты

InPort in
Входной порт.
OutPort out
Выходной порт.

Переменные

DataSet dataset
Набор данных, запоминающий для проходящих через объект заявок измеренные времена пребывания заявок в системе со времени прохождения первого объекта TimeMeasureStart из указанных в параметре Объекты TimeMeasureStart {tms1, ...} до времени прохождения данного объекта. 
HistogramData distribution
Набор сбора данных "данные гистограммы", вычисляющий распределение времен пребывания заявок в заданном участке диаграммы процесса. 

Параметры

Объекты TimeMeasureStart {tms1, ...}
Один или несколько объектов TimeMeasureStart, при прохождении первого из которых начнется отсчет времени пребывания заявки в заданном участке диаграммы процесса (отсчет закончится здесь). Здесь Вы должны написать список имен объектов, заключенный в фигурные скобки, причем имена должны отделяться друг от друга запятыми, например: {timeMeasureStart1, timeMeasureStart2}. Если объект только один, то просто напишите его имя в фигурных скобках.
Синтаксис: TimeMeasureStart[] startObjects
Действие при входе [динамический]
Код, выполняемый при поступлении заявки в объект.
Синтаксис: void onEnter
Локальная переменная: Т еntity - заявка.
Вместимость набора данных
Вместимость встроенного в объект набора данных dataset - максимальное количество измеренных значений, которое может храниться в данном наборе данных.
Синтаксис: int datasetCapacity
Значение по умолчанию: 100

Функции

void resetStats() - удаляет статистику, собранную объектом к текущему моменту времени, в элементах сбора данных dataset и distribution.