2017-02-01 3 views
0

В Maximo я хочу получить самую последнюю статусную записку и добавить поле WOSTATUS.MEMO в модуль отслеживания заказов на работу через Application Designer. В приложении «Отслеживание заказа на работу», чтобы увидеть ту же информацию, перейдите в индивидуальный рабочий заказ> «Выбрать действие»> «Вид»> «История заказов на работу».Maximo: показать последнюю сохраненную записку для текущего заказа на работу

ответ

0

Возможно, вы заметили отношение WOSTATUS к объекту WORKORDER и обнаружили, что вы не можете контролировать, какая из многих записей WOSTATUS для этого рабочего заказа выбрана для отображения заметки. Вам нужно будет сделать копию этого отношения, которое конкретно найдет последнюю запись. Чтобы найти эту последнюю запись, вы можете перейти к записи WOSTATUS с CHANGEDATE, соответствующей STATUSDATE, в рабочем порядке или с самым высоким WOSTATUSID. Предполагая, что вы идете на первое, так как он не требует подзапроса, вы будете создавать новые отношения с WorkOrder к WOSTATUS называется LastStatus с где положение так:

wonum = :wonum and siteid = :siteid 
and status = :status and changedate = :statusdate 

Вы можете использовать стандартные отношения .Attribute синтаксис для свойства Attribute текстового поля в App Designer: LASTSTATUS.MEMO.

В случае, если вы были заинтересованы, вот где положение вы будете использовать, если вы хотите пойти на WOSTATUSID вместо:

wonum = :wonum and siteid = :siteid 
and wostatusid = (
    select max(wostatusid) 
    from wostatus 
    where wonum = :wonum and siteid = :siteid 
    ) 

(Некоторые могут возразить, жеребьевку о том, является первой строки в приведенном выше запросе Мне было бы предложено проверить план производительности/оптимального исполнения в среде базы данных.)

Надеюсь, что это поможет.

Смежные вопросы