powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Проверка на нуль ячейки в таблице - RS 2005
2 сообщений из 2, страница 1 из 1
Проверка на нуль ячейки в таблице - RS 2005
    #35949036
mynameisvova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.

Есть проблемка. Вывожу в таблицу результат работы sql запроса.
Со строками потом происходит группировка, подсчет сумм и т.д.

Есть одна строка, в которой я нахожу % и делю одну ячейку на 2-ю. чтоб избежать деления на нуль, я проверку вписываю такую:

=iif(reportitems!textbox29.value = 0, 0, (100 * reportitems!textbox27.value/reportitems!textbox29.value))

Однако, она не проходит и в результате всё равно #Error

Что не так?

Спасибо ;)
...
Рейтинг: 0 / 0
Проверка на нуль ячейки в таблице - RS 2005
    #35949278
mynameisvova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос решен.

Итак:
IIF проверяет на правильность сначала всю строку, даже область деления, не смотря на условие о делителе. и если делитель = 0(хотя в условии мы это описали) - тогда ОШИБКА.

Отсюда:
=iif(reportitems!textbox29.value = 0, 0, (100 * reportitems!textbox27.value/reportitems!textbox29.value))

выход:
Создать пользовательскую функцию, в которой написать:
Код: plaintext
1.
2.
3.
Public Function SafeDivide(Numerator as Double, Denominator as Double) as Double
If Denominator =  0  then return  0 
Return (Numerator / Denominator)
End Function

и вызывать её:
=100 * Code.SafeDivide(reportitems!textbox141.value,reportitems!textbox43.value)
http://codemonkeyjas.blogspot.com/2008/03/sql-reporting-services-dividing-by-zero.html
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Проверка на нуль ячейки в таблице - RS 2005
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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