Форум АО "ВЗЛЕТ"

Автоматизация и диспетчеризация => Взлет СП4 => Тема начата: красноярск от 06.05.2025, 15:55:12



Название: отчетная форма для точки учёта
Отправлено: красноярск от 06.05.2025, 15:55:12
Здравствуйте.
для всех подходящих точек учета у меня выводится вот такая форма отчета (см вложение)
с ΔM и ΔM %,
ΔM в процентах вычисляется формулой
[Scheme_WeightConsumedSO]  / [Scheme_SO_in#1_Weight] * 100

проблема такая,
если М1 и М2 = 0,  то в столбце ΔM % выводится текст NaN.
как это исправить или заменить этот текст например на прочерки?
===
PS/ в архиве my_vspr.zip  находятся созданные самостоятельно аналогичные отчетные формы для закрытой СО :
=Теплоснабжение (M и V)_ c процентами_горизонтально
=Теплоснабжение (M)_c процентами
=Теплоснабжение (M и V)_М c процентами
=Теплоснабжение (M и V) (без процентов)
и т.п. из названия понятно примерно какие данные в отчете.
покрывают 70 % моих потребностей в формах отчетов, остальные бы снёс, но они не удаляются...
не жалко,берите кому нужно.


Название: Re:отчетная форма для точки учёта
Отправлено: красноярск от 06.05.2025, 15:56:05
не прикрепилась картинка


Название: Re:отчетная форма для точки учёта
Отправлено: Иван Кривокора от 06.05.2025, 19:29:45
Здравствуйте.
для всех подходящих точек учета у меня выводится вот такая форма отчета (см вложение)
с ΔM и ΔM %,
ΔM в процентах вычисляется формулой
[Scheme_WeightConsumedSO]  / [Scheme_SO_in#1_Weight] * 100

проблема такая,
если М1 и М2 = 0,  то в столбце ΔM % выводится текст NaN.
как это исправить или заменить этот текст например на прочерки?
===
PS/ в архиве my_vspr.zip  находятся созданные самостоятельно аналогичные отчетные формы для закрытой СО :
=Теплоснабжение (M и V)_ c процентами_горизонтально
=Теплоснабжение (M)_c процентами
=Теплоснабжение (M и V)_М c процентами
=Теплоснабжение (M и V) (без процентов)
и т.п. из названия понятно примерно какие данные в отчете.
покрывают 70 % моих потребностей в формах отчетов, остальные бы снёс, но они не удаляются...
не жалко,берите кому нужно.
Здравствуйте.

Вероятно, у вас происходит деление на ноль.

Вот в качестве примера выражение, в котором есть проверка:

Iif([Scheme_SO_in#1_Weight] != 0, ([Scheme_SO_in#1_Weight] - [Scheme_SO_out#1_Weight]) / [Scheme_SO_in#1_Weight] * 100, null)

С уважением,
Кривокора Иван