2016-05-17 23 views
1

私はSSRS式を計算して平均セットアップ時間を計算しますが、各注文に対する複数の異なるポストがあるため、一意の注文の平均セットアップ時間。レポートの他の部分にすべての転記を含める必要があるため、この単一の表現以外の複数の転記をグループ化またはフィルタリングすることはできません。私はかなり確信している...SSRS式内のグループ化

=IIf((Fields!Order_Number.Value) is unique), AVG(iif(IsNumeric(Fields!Setup.Value), CDbl(Fields!Setup.Value), 0), else nothing) 

=AVG(iif(IsNumeric(Fields!Setup.Value), CDbl(Fields!Setup.Value), 0)) 

そして、私は基本的に...擬似コードの着信書き換え上記の発現のための適切な構文を必要としています:だから私は、次の式を持っていますCountDistinct節はこの問題を解決しますが、適切な構文を見つけるのが難しいです。

+0

あなたがデータソースに対するクエリを編集する権限を持っていますか:

=IIf(Fields!RowNumber.Value = 1, Fields!Setup.Value, Nothing) 

今、あなたはあなたのレポートでは、この新しい列を参照することができますし、それが正常に集約されます:さんは「FilteredSetup」と呼んでみましょうか? – StevenWhite

+0

私は、メインクエリで一意のorder_numberだけをフィルタリングすることができましたが、レポートの他の部分にすべての個別エントリが必要です。 –

答えて

0

注文ごとにユニークな行を識別するために列を追加します。

ROW_NUMBER() OVER (PARTITION BY YourOrderID ORDER BY YourOrderID) as RowNumber 

は、あなたのデータセットに計算フィールドを追加します。

=Sum(Fields!FilteredSetup.Value) 
+0

ありがとうございます。それは本当に近いです。データがnvarcharとして格納されているため、無効なデータ型に対して集計関数を使用しようとするとエラーが発生しました。簡単な修正: = SUM(iif(IsNumeric(Fields!FilteredSetup.Value)、CDbl(Fields!FilteredSetup.Value)、0)) –

関連する問題