|
![]() |
#1 |
Участник
|
Цитата:
Сообщение от fed
![]() Если я не ошибаюсь, в параметрах операции планирования заданий можно указать номер операции для планирования (или перепланирования). И в вашем случае, просто надо сделать некую обертку, которая последовательно вызывает эту операцию для всех незавершенных операций.
Disclaimer: Сам я этого не пробовал, но раз других вариантов нету - попробуйте копать в этом направлении... Как бы вы оценили решение: при планировании заданий просто пропускать уже завершённые? Чем-то это может грозить? Имею ввиду, что при загрузке заданий в методе WrkCtrJobLinkData_ProdJob\load() добавить условие исключения завершённых заданий. Код приведён ниже: X++: while select forupdate _prodRouteJob index ProdOprIdx where _prodRouteJob.prodId == masterData.rec_NumId() && _prodRouteJob.oprNum == routeData.rec_OprNum() // Кроме завершённых && prodRouteJob.JobStatus != ProdJobStatus::Completed { if (scheduleJobs.schedOprNum() == _prodRouteJob.OprNum && scheduleJobs.schedFromWrkCtrId() != scheduleJobs.schedToWrkCtrId() && scheduleJobs.schedFromWrkCtrId() && scheduleJobs.schedToWrkCtrId()) { if (scheduleJobs.schedToWrkCtrId() == _prodRouteJob.WrkCtrId) throw error(strFmt("@SYS75431",_prodRouteJob.WrkCtrId,_prodRouteJob.OprNum)); if (scheduleJobs.schedFromWrkCtrId() == _prodRouteJob.WrkCtrId) { _prodRouteJob.WrkCtrId = scheduleJobs.schedToWrkCtrId(); _prodRouteJob.doUpdate(); } } . . . Последний раз редактировалось Cardagant; 13.01.2014 в 16:40. |
|
Теги |
планирование заданий, производство |
|
|