我有一個公式,從查詢數據取值現在Pentaho的報告設計libFormulaErrorValue
,我想跳過式如果查詢數據是0
實施例:[value1]-[value2]/[value1]*100
如果[VALUE1 ]爲0,跳過公式。
我有一個公式,從查詢數據取值現在Pentaho的報告設計libFormulaErrorValue
,我想跳過式如果查詢數據是0
實施例:[value1]-[value2]/[value1]*100
如果[VALUE1 ]爲0,跳過公式。
首先,Pentaho Report Designer具有內置的公式編輯器,它可以在構建這些公式時大大簡化您的生活。不確定開始使用哪個版本,但在3.6.1中是肯定的。
此外,在Pentaho的維基,你可能會發現一個有用的頁面描述公式表達:http://wiki.pentaho.com/display/Reporting/Formula+Expressions
至於你的具體問題,我認爲這個公式應該工作:
= IF([值1] = 0;「 「; [value1] - [value2]/[value1] * 100)
每個配方中需要開始等號!
通過觀察公式,分母中有[value1]字段,可能有機會得到該字段的零(0)。這是邏輯錯誤。 如果你處理那個,你可以克服這個錯誤。
對於你的情況這個公式會起作用。
= ([value1]-[value2]/ IF(OR(ISEMPTYDATA([value1]); [value1] = 0) ;1;[value1]))*100
我已經更新了基於Suribabu關於劃分零的公式的公式。 – Vasili