Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Странно работает IIF в CR 11.5. Поле-формула. / 8 сообщений из 8, страница 1 из 1
04.09.2007, 14:16
    #34774547
Сирин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странно работает IIF в CR 11.5. Поле-формула.
Есть поле-формула:
Код: plaintext
IIF(IsNull({поле1}), {поле2}, {поле1})
Если истина, то выводится содержимое поле2, если ложь (?), то _ничего_ не выводится, хотя поле1 не пустое.
Код: plaintext
IIF(IsNull({поле1}), "2222", "1111")
Если истина, то выводится 2222, если ложь, то выводится 1111.
Код: plaintext
IIF(IsNull({поле1}), {поле2}, "1111")
- работает аналогично случаю 1.
В чём дело? Мне нужно вывести поле1 если оно не Null.
...
Рейтинг: 0 / 0
04.09.2007, 16:08
    #34775056
shady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странно работает IIF в CR 11.5. Поле-формула.
А можно увидеть код, а не образное представление?
...
Рейтинг: 0 / 0
04.09.2007, 16:42
    #34775263
tolika
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странно работает IIF в CR 11.5. Поле-формула.
возможно выводимые поля разных типов - бывает такое - надо привести выводимое значение к одному типу....
...
Рейтинг: 0 / 0
04.09.2007, 17:22
    #34775405
FantomGood
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странно работает IIF в CR 11.5. Поле-формула.
может в {поле1} содержится не нулл,а пустая строка ""
...
Рейтинг: 0 / 0
04.09.2007, 20:20
    #34775868
Peter Kirillow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странно работает IIF в CR 11.5. Поле-формула.
стоит галочка в Report Options
Convert Database NULL Values to Default ?

читали в хелпе про про то, что IsNull не всегда корректно работает ?

вобщем поставьте галочку и сравнивайте на пустую строку.
...
Рейтинг: 0 / 0
05.09.2007, 07:57
    #34776216
Сирин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странно работает IIF в CR 11.5. Поле-формула.
СУБД SQL 2000. Поля строковые, CHAR[3] и CHAR[5].
Галка Convert Database NULL Values to Default не стояла, потому и использовал IsNull.
Если поставить галку и использовать сравнение с "", происходит тоже самое.
Код:
Код: plaintext
IIF(IsNull({bs1_code}), {bs2_code}, {bs1_code})
Оба поля могут быть Null одновременно, но не могут быть одновременно не Null.
У меня с таким условием вообще ничего не выводиться, хотя есть строки, в которых bs1_code = Null, а bs2_code <> Null.
Вот такая проверочная формула работает:
Код: plaintext
IIF(IsNull({поле1}), "2222", "1111")
Это наводит на мысль, у меня везде выводимое значение Null. Но это странно как-то.

Решил проблему так:
Поставил галку Convert Database NULL Values to Default, и написал такой код:
Код: plaintext
{bs1_code} & {bs2_code}
...
Рейтинг: 0 / 0
05.09.2007, 07:59
    #34776217
Сирин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странно работает IIF в CR 11.5. Поле-формула.
Вот скриншот нескольких строчек.
...
Рейтинг: 0 / 0
05.09.2007, 09:42
    #34776413
shady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странно работает IIF в CR 11.5. Поле-формула.
Попробуйте вот так.
Код: plaintext
IIF(IsNull({поле1}), {поле2}, IIF(IsNull({поле1}), 'НУЛЛ', {поле1}))
...
Рейтинг: 0 / 0
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Странно работает IIF в CR 11.5. Поле-формула. / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]