2017-02-10 4 views
1

В режиме отслеживания заказов есть поле «LEAD», на котором будет отображаться идентификатор ведущего. В нашем требовании мы должны отображать Leadname вместе с идентификатором Lead. SO Я создал новое поле для Leadname в Workorder и использовал домен кроссовера с новым соотношением между Wordorder и Person. Relation where where personid =: leadMaximo crossover domain

Домен кроссовера копирует значение атрибута Leadname из атрибута Displayname объекта PERSON и отлично работает, когда мы даем идентификатор в атрибуте Lead Workorder.

Однако в случае, если я даю идентификатор ведущего, а затем удаляю идентификатор ввода в WO, тогда имя ведущего файла все еще остается. Оно не изменяется до нуля. Я верю, потому что условие кроссовера (personid =: lead) не выполняется и, следовательно, никаких действий не выполняется. Я также попытался установить условие на Source и Destination, но это также не работает.

Есть ли способ по умолчанию указать поле null в случае, если условие кроссовера, где условие не выполнено.

Мне удалось реализовать это с помощью сценария автоматизации, но хотелось бы знать, может ли он быть достигнут другими способами.

+0

Различные мысли. Как насчет того, что у вас только что доступный только для чтения, это отношения от WORKORDER to PERSON. Если поле LEAD пустое, соответствующее поле только для чтения становится пустым. Если у вас нет бизнес-причины для записи отображаемого имени в таблице рабочих порядков, зачем создавать новое поле в базе данных? – Sun

+0

Бизнес хотел получить информацию о названии вместе с идентификатором. Если я сделаю это только для чтения, в любой момент пользователи не смогут изменить значение ведущего в WO – stackuser11

+0

. Я имел в виду сделать отображаемое имя только для чтения. То же предложение, что и Джеруэн от 5 дней назад. – Sun

ответ

0

Если это просто отображение информации, вы должны использовать многостраничное текстовое поле, чтобы отображать ведущее и отображаемое имя человека. Вам нужно добавить отношение от рабочего порядка к человеку, используя атрибут lead. Тогда нормальная логика Maximo очистит «описание», когда вы очистите фактическое поле ввода.

Существует способ перекрестных фиксированных значений, включая null, чтобы очистить другое поле от кроссовера. Просто сделайте ALNDOMAIN с пустым значением (оставьте описание пустым). В домене кроссовера используйте отношение, которое указывает на этот конкретный домен/значение, и используйте точечную обозначение для перекрестного описания. Use relationname.description как исходное поле в вашем кроссовере

+0

Вы пробовали это? Проблема 1: Изменение значения атрибута на null не приведет к проверке через присоединенный домен (и последующий сбой в домене CO, если применимо). Проблема 2: PERSON.PERSONID требуется (не может быть null). Таким образом, даже если проверка прошла (т. Е. Если проблема 1 не была проблемой), если Lead изменен на null, предложение Validation Where в домене CO не сможет найти совпадение/что-то кроссовер. Поэтому я не думаю, что это сработает. – Preacher

+0

Да, перекрестный overdomain, где предложение не удовлетворено, когда мы делаем Lead как null и, следовательно, никакое действие не выполняется. Алос, я понимаю, как добавить ALNDOMAIN для работы вместе с существующим идентификатором личности и перекрестком displayname – stackuser11

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