2016-03-31 16 views
0

IF条件を使用するように更新された簡単な公式があります。 CR設計者によるとエラーはありません。しかし、数式はまだ空の文字列を返します。Crystalレポートの公式が値を返さない場合

これは新しい式

 IIF (IsNull({TBL_Delivery_Order_Header.DOHD_TotalDOPrice}), sum 
({VIEW_Delivery_Note.Price},{VIEW_Delivery_Note.PODD_Delivery_Order_No}) , 
{TBL_Delivery_Order_Header.DOHD_TotalDOPrice}) 

これは古い式です。

sum({VIEW_Delivery_Note.Price},{VIEW_Delivery_Note.PODD_Delivery_Order_No}) 

このサム部分だけを残しておけば、値が正しく設定されます。 IIF状態で同じサムパーツを置くと、代わりに空の文字列が表示されます。それはまったく同じ値であり、条件は適切に評価されます。

編集:レコードがレコードが最初のケースで Values when record does not exist

存在しないとき、それは正常に動作し、後者の場合は344222.を表示 Values when record exists

値の存在する場合 値、それを取ることになっています価格列18260からの他の値。代わりに、空を表示します。

+0

この文字列は '{TBL_Delivery_Order_Header.DOHD_TotalDOPrice}) 'となります。 – Siva

+0

レコードが存在する場合は、nullまたは何らかのランダム値のいずれかです。レコードが存在する場合、正常に動作します。それ以外の場合は、その列に対してnullを戻します。 (私は、rptファイルからSQLクエリを実行しようとしたが、値が適切に来る)。 – jitendragarg

答えて

2

気にしないでください。私は問題を発見した。それはおそらく私が見ている最も遅れたものです。

とにかく、問題は公式ではありませんでした。どうやらクリスタルレポートは、IIFの式2のヌルは有効ではないと判断しましたが、それがこのIIFの全理由です。したがって、TBL_Delivery_Order_Header.DOHD_TotalDOPriceがnullで、式2の一部であったため、例外がスローされました。nullのときに評価中も考慮されませんが、Crystalレポートではまだそれが嫌でした。私が言ったように、遅らされた。

とにかく、数式エディタにドロップダウンがあり、null値に対して何をすべきかを決定しました。だから、私は "nullsの例外"の代わりに "nullsのデフォルト値"を選択しました。そして今、突然のことすべてがうまくいっています(私は決してデフォルト値を宣言していませんが)。

だから、式は正しいafterallだった。私は、null値が見つかったときに、ひっそりとフィットするようにCrystal Reportに依頼する必要がありました。

関連する問題