Исключить данные с нулевыми значениями в отчете о кристалле

132
8

У меня есть эта формула в хрустальных отчетах

Global NumberVar Array Z := [
IF isnull({MIPIRReport;1.1}) then 0 else tonumber({MIPIRReport;1.1}) ,
IF isnull({MIPIRReport;1.2}) then 0 else tonumber({MIPIRReport;1.2}) ,
IF isnull({MIPIRReport;1.3}) then 0 else tonumber({MIPIRReport;1.3}) ,
IF isnull({MIPIRReport;1.4}) then 0 else tonumber({MIPIRReport;1.4}) ,
IF isnull({MIPIRReport;1.5}) then 0 else tonumber({MIPIRReport;1.5}) ,
IF isnull({MIPIRReport;1.6}) then 0 else tonumber({MIPIRReport;1.6}) ,
IF isnull({MIPIRReport;1.7}) then 0 else tonumber({MIPIRReport;1.7}) ,
IF isnull({MIPIRReport;1.8}) then 0 else tonumber({MIPIRReport;1.8}) ,
IF isnull({MIPIRReport;1.9}) then 0 else tonumber({MIPIRReport;1.9}) ,
IF isnull({MIPIRReport;1.10}) then 0 else tonumber({MIPIRReport;1.10}) ];

Minimum (Z)

Я бы хотел, чтобы данные были нулевыми, Это должно быть исключено в моем отчете

Для графического примера значения будут такими:

1.1,1.2,1.9,1.5,1.88,0,0,0,0,0

где 0 представляет нуль, а 1 - значения.

Я хотел бы получить минимальное значение, которое будет равно 1.1 а не 0. Как я должен это делать?

Обратите внимание, что каждый номер в примере - это другое поле в моем кристальном отчете, которое называется так:

1,2,3,4,5,6,7,8,9,10

спросил(а) 2021-01-25T16:37:36+03:00 4 месяца, 4 недели назад
1
Решение
88

Вы можете попробовать два способа.

Если вы хотите сохранить нулевые значения, вы можете взять 2 массива один для хранения только 0 который является нулевым, а другой - для хранения других значений.

Если вам не нужно 0, чтобы сохранить его, измените формулу следующим образом:

Global NumberVar Array Z;

IF isnull({MIPIRReport;1.1}) then 0 else Z:= tonumber({MIPIRReport;1.1}) ,
IF isnull({MIPIRReport;1.2}) then 0 else Z:= tonumber({MIPIRReport;1.2}) ,
IF isnull({MIPIRReport;1.3}) then 0 else Z:= tonumber({MIPIRReport;1.3}) ,
IF isnull({MIPIRReport;1.4}) then 0 else Z:= tonumber({MIPIRReport;1.4}) ,
IF isnull({MIPIRReport;1.5}) then 0 else Z:= tonumber({MIPIRReport;1.5}) ,
IF isnull({MIPIRReport;1.6}) then 0 else Z:= tonumber({MIPIRReport;1.6}) ,
IF isnull({MIPIRReport;1.7}) then 0 else Z:= tonumber({MIPIRReport;1.7}) ,
IF isnull({MIPIRReport;1.8}) then 0 else Z:= tonumber({MIPIRReport;1.8}) ,
IF isnull({MIPIRReport;1.9}) then 0 else Z:= tonumber({MIPIRReport;1.9}) ,
IF isnull({MIPIRReport;1.10}) then 0 else Z:= tonumber({MIPIRReport;1.10}) ;

Minimum (Z)

Дайте мне знать, как это происходит

ответил(а) 2021-01-25T16:37:36+03:00 4 месяца, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема