4

フィールドの値を合計したいSSRSレポートがありますが、レポートに各行の行番号を出力させたので、別のフィールドの値が1に等しい場合のみです。基本的に、個別の値を合計して合計を出そうとしています。以下のスクリーンショット。複数の商品を注文するとエラーが発生します。送料(赤いテキスト)を計算するために使用される私の式は次のとおりです。

=SUM(IIF(Fields!RowNumber.Value = 1, Fields!WEIGHT.Value, 0))

ここに画像の説明を入力

しかし、私は #Error を取得しています。テキスト #Error を含むセルは、$11.25 と表示されているはずです。

4

2 に答える 2

3

集計でデータ型の不一致が発生している可能性が高いと思います。IIfSSRS は、これらの種類の/aggregate 式で暗黙的な変換を処理できません。

式ではint0として扱われ、基になるデータ型がdecimalまたはdoubleであると仮定すると、ランタイム エラーがスローされます。BIDS でプレビューすると、実際にはエラーが表示されるはずです。Fields!WEIGHT.Value

これを回避するには、IIf次のような 2 つの結果のデータ型が同じであることを確認する必要があります。

=SUM(IIF(Fields!RowNumber.Value = 1, Fields!WEIGHT.Value, 0.0))

また

=SUM(IIF(Fields!RowNumber.Value = 1, Fields!WEIGHT.Value, CDec(0)))

また

=SUM(IIF(Fields!RowNumber.Value = 1, Fields!WEIGHT.Value, CDbl(0)))

基になるデータ型によっては、いくつかの組み合わせを試す必要があるかもしれませんが、うまくいけば、例の 1 つが正しく機能します。

于 2013-08-14T16:37:22.193 に答える