SSRS IIF заявление, чтобы найти, округляется ли вверх или вниз
Я нашел несколько способов отформатировать округленное число, но мне нужно найти способ округления числа, особенно в SSRS 2014:
=IIF(Round(Fields!IMPERVIOUS_AREA.Value/4000,2,MidpointRounding.AwayFromZero)=Floor(0),"Round Up","Round Down")
Я хотел бы видеть в своих результатах 5.73 "Rounded Up" и 2.09 "Rounded Down", но все, что я продолжаю получать - "Rounded Down". Я пытался положить =Ceiling(0)
а также =Floor(0)
в моем утверждении, надеясь, что это может оценить истину или ложь.
2 ответа
Решение
Ceiling(value)
всегда округляется до ближайшего целого числа.Round(value)
решает, какой способ округлить на основе общих правил.
Таким образом, следует, что тестирование, если Ceiling(value) = Round(value)
скажет вам, было ли округлено значение.
=IIF(Ceiling(value) = Floor(value), "Value was already an integer.", IIF(Ceiling(value) = Round(value), "Value was Rounded Up.", "Value was Rounded Down."))
Вы можете сравнить округленное и не округленное значение. Это позволяет увидеть направление движения:
=IIF(Round(value) > value,
"Rounded Up",
IIF(Round(value) < value,
"Rounded Down",
"No rounding"))