AnyLogic 5 Discussion

Доброго времени суток. У меня вопрос по данному объекту. У меня есть объект Delay, и он должен находиться в "ремонте" , когда количество заявок в очереди queue, стоящей перед Delay, становится равным нулю(пустая очередь). Как я сделал: Я заглянул в параметры объекта Shedule и увидел два параметра:TTF и TTR. Время ремонта у меня постоянное, и я задал в TTR постоянное значение. В параметр TTF я поставил переменную, которая накапливает время поступления заявок в Queue и обнуляется тогда, когда Queue становится пустой(в объекте Queue в параметре onExit код: if (queue.size()==0) b=0; ). Но к моему великому сожалению(хотя это и не удивительно) модель не заработала нужным образом. Объект Delay "ремонтировался" ровно через 10 заявок, прошедших через него. Подскажите, что можно сделать. Думаю(правда, не уверен), что нужно поставить табличную функцию, но не знаю как. Заранее спасибо.
Денис, что значит "в ремонте" - не может принимать заявки? Если так, то его просто нужно блокировать (используйте метод block), проверяя количество заявок в блоке Queue.
Да, Виктор, не принимает заявки. Причем время этого "ремонта" постоянно. В первой записи у меня ошибка: "ремонт начинается" не тогда, когда очередь пуста, а когда в объекте Delay нет заявок. Думал использовать функции блокирования и разблокирования объекта, но мне эти функции нужно связать с этим постоянным временем. Как, не знаю. Сегодня решил данную задачу, но не считаю этот метод правильным. Суть такова: на выходе из очереди я ставлю условие, если количество обслуживаемых в Delay заявок равно нулю, то время обслуживания(переменная time) будет равна времени "ремонта" + равномерный закон распределения(uniform(a,b)) - время, за которое заявка дошла от источника до Delay (time=rem + uniform(a,b) - from_source_to_delay), иначе time=uniform(a,b). В объекте Delay в поле DelayTime ставлю time, и на входе в объект обнуляю from_source_to_delay. Даже и не знаю, правильный ли он =) .
Денис, Ваше идея с проверкой условия на выходе из блока Delay хороша. Однако остальное я бы сделал иначе. Если условие (отсутствие заявок в блоке Delay) выполняется, то блок нужно заблокировать, затем использовать таймер, который через фиксированное время разблокирует его.
Спасибо вам, Виктор, за упоминание о таймере. Просто я не очень хорошо знаком со всеми элементами программы AnyLogic. А как создать как раз этот таймер(в смысле, кодом), долго голову ломал. А он, оказывается, на панели инструментов =)