Cognos 10 过滤计算的度量
Cognos 10 Filtering a calculated measure
使用交叉表维度报告时,我在过滤掉从计算量度中获得的特定值时遇到问题:
我在 Reporting Studio 中使用以下计算量度来获得所需的输出..
ROUND(([A1_SCHEDQTY]+[B1_SCHEDQTY]) / ([A1_QTY]+[B1_QTY]) * 100, 1)
但是,在某些情况下,我得到的输出是“/0”,我无法将其过滤掉。我试过使用 IF 语句,但我认为我的语法不正确。
IF (ROUND(([A1_SCHEDQTY]+[B1_SCHEDQTY]) / ([A1_QTY]+[B1_QTY]) * 100, 1) = '/0') THEN NULL ELSE ROUND(([A1_SCHEDQTY]+[B1_SCHEDQTY]) / ([A1_QTY]+[B1_QTY]) * 100, 1)
有什么建议吗?
您需要检查等式的除数是否为 0,而不是检查整个等式是否为“/0”。如果检查整个等式,除以 0 仍然会发生。
试试这个:
IF ([A1_QTY]+[B1_QTY] = 0) THEN (NULL) ELSE (ROUND(([A1_SCHEDQTY]+[B1_SCHEDQTY]) / ([A1_QTY]+[B1_QTY]) * 100, 1))
使用交叉表维度报告时,我在过滤掉从计算量度中获得的特定值时遇到问题:
我在 Reporting Studio 中使用以下计算量度来获得所需的输出..
ROUND(([A1_SCHEDQTY]+[B1_SCHEDQTY]) / ([A1_QTY]+[B1_QTY]) * 100, 1)
但是,在某些情况下,我得到的输出是“/0”,我无法将其过滤掉。我试过使用 IF 语句,但我认为我的语法不正确。
IF (ROUND(([A1_SCHEDQTY]+[B1_SCHEDQTY]) / ([A1_QTY]+[B1_QTY]) * 100, 1) = '/0') THEN NULL ELSE ROUND(([A1_SCHEDQTY]+[B1_SCHEDQTY]) / ([A1_QTY]+[B1_QTY]) * 100, 1)
有什么建议吗?
您需要检查等式的除数是否为 0,而不是检查整个等式是否为“/0”。如果检查整个等式,除以 0 仍然会发生。
试试这个:
IF ([A1_QTY]+[B1_QTY] = 0) THEN (NULL) ELSE (ROUND(([A1_SCHEDQTY]+[B1_SCHEDQTY]) / ([A1_QTY]+[B1_QTY]) * 100, 1))