Некорректная работа условия Iif

отредактировано 14:46 Раздел: FastReport .NET
Добрый день
в поле такое условие [IIf(1<0,1/[Table1.field1],0)]
При наличии в указанном поле ноля, возникает ошибка деления на ноль. :)

Комментарии

  • отредактировано November 2010
    MariaM написал: »
    Добрый день
    в поле такое условие [IIf(1<0,1/[Table1.field1],0)]
    При наличии в указанном поле ноля, возникает ошибка деления на ноль. :)
    II

    у меня всё отлично, только что пробовал, выдает falsePart, попробуйте обновиться или может проблема в другом чем то )
    7cg1ui2tax2m.jpg
  • отредактировано 14:46
    Oloth Teken написал: »
    II

    у меня всё отлично, только что пробовал, выдает falsePart, попробуйте обновиться или может проблема в другом чем то )

    То что он выдаст falsePart, с этим не спорю.
    Проблема в том что функция IIf высчитывает falsePart и truePart, вне зависимости от значения expression.

    Шаги для воспроизведения:
    Создаём параметр p1 типа Int32, ставим значение 0.
    В элемент типа Текст пишем:
    [IIf([p1]>0,1/[p1],0)]
    
    пытаемся просмотреть отчёт.

    В аттаче данный пример отчета который выдаст ошибку.
  • отредактировано 14:46
    Впишусь в эту тему с вашего позволения.....

    вот тоже как-то странно работает:
    ((Decimal)Report.GetParameterValue("P2")) - ошибка

    Convert.ToDecimal(Report.GetParameterValue("P2")) - выводит

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.