Как отформатировать числа в строке для отображения с двумя десятичными знаками
У меня есть поле, которое является типом данных varchar, который передает как текст, так и числа в мой RDL.
Мне нужно отобразить цифры (часто вводимые как
00.00000
) с двумя десятичными знаками при отображении любого текста в поле в виде текста. Я использовал
IIF
оператор для форматирования поля, но он либо отображает D, 00.00, ##.##
, или ошибка в полях.Вот примеры моих попыток:
IIF(Fields.MyField.Value="Number", Format(Fields!MyValue.Value, "D", cstr(Fields!MyValue.Value))
**Это отображало Ds в поле, когда я пытался отформатировать поле как десятичное. Использование нижнего регистра d не сработало. IIF(Fields.MyField.Value"Number", Format(Fields!MyValue.Value, "00.00", cstr(Fields!MyValue.Value))
**Это отображается 00.00.
Удаление двойных кавычек отображало нули вместо фактических строковых значений.Как я могу получить числа, которые находятся в этом поле nvarchar для отображения с двумя десятичными знаками, а также отображать фактический текст в виде текста? Это должно быть очень просто сделать!
Что я уже пробовал:
Мои попытки описаны в моем вопросе.
Richard Deeming
Если поле MyField
содержит литеральную строку "Number"
как вы думаете, как эта строка будет преобразована в число?
Member 10379103
Ричард,
Я случайно набрал не то поле! Фактическое поле, содержащее слово "число", является категорией, поэтому оператор должен читать " IIF(Fields.Category. Value= "Число", Формат (Поля!Моя ценность.Значение), "00.00"), Поля!Моя ценность.Ценность)