Вы пытаетесь условие прописать через 2 разных поля [254] и [413] в разных строках цикла проверки. Система вероятно не поймет какое принимать, т.к. и по полю 254 и по 413 должно быть одинаковое значение (но, опять-таки берется из условия по разным полям). Возможно нужно более расширенно прописывать условия, при которых нужно выводить нужные значения (типа "when [254] =470 and [413]>25 then 25" или "when [254] =470 or [413]>25 then 25"). Чтобы осуществился правильный последовательный отбор (отбрасывание) условия. И если не удовлетворяет текущей строке, то переход к проверке следующей строки.
Напишите, что у вас конкретно за ситуация, словами, возможно я подскажу. Так, пока не могу понять что вы хотите записать в текущее поле.
условия-то отрабатываются нормально, результаты получаю корректные.
проблема в том, что полученное значение нужно перенести в другую сущность и умножить на значение другого поля.
пробую из другой сущности делать mysql-запрос - краш, пробую перенести через выпадающий список из сущности 1 в сущность 2 - пустое поле (значения других полей где нет такой проверки переносятся нормально)
Тогда, как вариант, создайте техническое поле с типом Статический текст по шаблону, в нем укажите ваше поле с формулой. При сохранении записи/формы - в это поле будет передаваться рассчитанное в формуле значение и записываться в БД как число, а потом уже из него можете вытаскивать сохраненное.
Через запрос не получится, если запрос ссылается на "формульное" поле. В запросе тогда и нужно прописывать все действия формулы из нужной сущности т.е. присать запрос с подзапросом и MySQL функциями.