ReportViewer IIF выражение в текстовом поле возвращает #Error

StackOverflow https://stackoverflow.com/questions/3972233

  •  09-10-2019
  •  | 
  •  

Вопрос

Я использую ReportViewer для работы, и я пытаюсь получить выражение IIF для работы с несколькими текстовыми полями, которые используют FormatCurrence (). Причина, по которой мне нужна заявление IIF в первую очередь, было связано с тем, что иногда в этом отчете будут нулевые параметры. Пример здесь - это доставка, которое может иметь или не иметь значения. Если у него есть значение, скажем, 15, он будет правильно отформатировать до 15 долларов. Если у него нет значения, он возвращается #Error. Очевидно, это не будет делать.

Вот один оператор IIF, который я использую в другом отчете, который работает совершенно хорошо (устанавливает видимость текстового поля):

=IIf(Fields!DATASET_NAME.Value.ToString() <> "DELETE", True, False)

Вот тот, который не работает:

=IIf(Parameters!ShipAmt.Value.ToString() <> "", FormatCurrency(Parameters!ShipAmt.Value,2), "")

IIF, кажется, работает, потому что если я введу значение, он все еще будет правильно отформатировать, но без значения он все еще возвращает #Error. Любые идеи?

Это было полезно?

Решение

Вызов ToString () на нулевое значение идет Kaboom. Попробуйте ничего не в этом.

Но я думаю, что настоящий ответ здесь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top