Перенеси hd...Value вовнутрь WHEN.
Т.о. у тебя будет WHEN hd.Value = 117 AND hdCustomFields.FieldID NOT IN (115, 116, 148) THEN 7
ок это типо флаги что я пробовала но как потом внутри одного запроса добавить логику с открытие и закрытием определеных блоков? я кроме if ничего не знаю