У меня есть состояние в рабочем элементе, которое можно установить, только если одно из четырех других полей (дат) заполнено .Неважно, какой из четырех, если хотя бы один заполнен, то состояние может быть установлено .
Пример:
Этот сценарий позволяет изменить состояние рабочего элемента:
DateA 01/05/2012
DateB '
DateC '
DateD '
Этот тоже:
DateA '
DateB 01/05/2012
DateC 01/05/2012
DateD '
Этот не:
DateA '
DateB '
DateC '
DateD '
Я думал об использовании WHEN
, но это не сработает, так как я не могу написать "КОГДА это И КОГДА это "
Есть предложения?
РЕДАКТИРОВАТЬ: Кроме того, я не могу использовать правило "ЗАПРЕЩЕННЫЕ ЗНАЧЕНИЯ" для System.State, поэтому я считаю, что любой подход будет бесполезным.Я думаю, что единственный способ сделать это (но не касаясь основных полей) - это n WHEN
s и n WHENNOT
s, где n - количество полей даты.Затем, с помощью двух глобалистов (одного фиктивного и другого с запрещенными значениями), возможно, можно заблокировать поле для каждой отсутствующей даты, а затем разблокировать для каждой отсутствующей даты (и, таким образом, выполнить этот сценарий).В любом случае, это не может работать в моем случае из-за ошибки TF26062: правило 'insert-rule-here' не поддерживается для поля 'System.State' .
РЕШЕНИЕ: Я принимаю ответ Грегга Бера, потому что вы не можете "AND" together conditional clauses
.Но само по себе мое решение заключалось в том, чтобы прикрепить событие к инструменту подписки на события, где я возвращаю состояние обратно всякий раз, когда какой-либо пользователь изменяет его, не заполняя дату.Затем он получает электронное письмо, объясняющее, почему его изменение было отклонено.Не идеальное решение, но я не могу думать ни о чем другом.