Добрый день!
Не совсем верно. Верная логика такая - триггеримся на изменение поля, и согласно этим изменениям ограничиваем другое поле в выборе значений.
нет, так не получится:) Как я раньше писала, вы не сможете ограничить, какие значения отображаются в дропдауне. Вы сможете только запретить их выбирать, в зависимости от условия.
Поэтому в логике нужно зайти с другой стороны - пользователь выбирает значения поля field2, воркфлоу тригеррится на это действие и проверяет - а можно было выбрать такое значение? Напр, если field1 в этот момент выставлен в 1, значит можно, одобряем транзакцию. А если нельзя такое значение выбирать, тогда откатываем транзакцию с помощью workflow.check() и пишем пользователю поясняющее сообщение.
Для пользователя это будет выглядеть так: пришел на страницу задачи, попытался поменять значение поля field2, но не смог, потому что воркфлоу выплюнул ошибку с поясняющим сообщением.
Т.е. у вас есть действие (смена значения field2), и есть условия, при котором это действие может быть выполнено (field1 === 1). Воркфлоу тригеррится на совершение действия и идет проверять условия - выполнены они или нет.