1

レポートビルダー2.0を使用する構文に詳しくないので、SSRSの初心者は非常に新しいです。SSRS: '計算された'フィールドの計算%

私は、レポートビルダーに非常に単純なテーブルを作成して、患者に利用可能な予定スロットの総数と、予約されたスロットの総数を表示しました。

私が予約したスロットの%を示すために、追加の列を追加したい(つまり、使用可能なスロット/予約されたスロット×100%):

| Total Slots | Booked Slots | % Booked | 
+-------------+--------------+----------+ 
| 2000  |  1250  | 62.5% | 
+-------------+--------------+----------+ 

どちらも「総スロット」と「予約されたスロット」値は、データセットからの同じフィールド( 'Booked_Flag')に基づいています。このフィールドは 'Y/N'値を持ちます。 「予約されたスロット」列は、基礎となる表現がある=Count(Fields!Booked_Flag.Value)

「総スロット」列には、根本的な表現を持っている=SUM(IIF(Fields!Booked_Flag.Value="Y",1,0))

を誰もが予約された「%を計算するための最も適切な方法を記述することができますしてください'数字?

私はこれを試してみた:=SUM(IIF(Fields!Booked_Flag.Value="Y",1,0))/SUM(Fields!Booked_Flag.Value)が、それは次のようなエラーがスローされます - 私は別の計算の上で計算を実行することはできません手段を想定していた:

The expression used for the calculated field '=SUM(IIF(Fields!Booked_Flag.Value="Y",1,0))/SUM(Fields!Booked_Flag.Value)' includes an aggregate function. Aggregate functions cannot be used in calculated field expressions. 

が大幅にどんな指導を感謝しています。

+0

フィールドを使用する代わりに、実際のテキストボックス値を使用します。 ReportItems!Textbox1.value – Snowlockk

+0

'Y'/'N'の代わりに0または1の値を返すようにデータを変更できますか?そうすれば、単純に合計することができます。 –

+0

@Snowlockkありがとうございます - 私はこれを試しましたが、レポートに「#エラー」が表示されています - これはなぜでしょうか? – Jon295087

答えて

2

レポートセルの内容に直接アクセスし、それらを使用して計算することができます。あなたの場合は簡単です。 レポートデザインでは、 '2000'を含むセルはTextBox1(名前を取得するプロパティをチェック)と呼ばれ、 '1250'を含むセルはTextBox2と呼ばれ、%列式は

=ReportItems!TextBox2.Value/ReportItems!TextBox1.Value 

計算された列の形式をp1(小数点以下1桁のパーセント)に設定し、完了しました。

+0

@Alan_Schofield - 多くのおかげで、しかし、私は、レポートを実行すると、テーブルセルに '#Error'と表示されています – Jon295087

+0

テキストボックス名が正しいことを確認しましたか?私は愚かな何かをした場合にこれをテストしましたが、うまくいきます。それでも問題が解決しない場合は、レポートデザインのイメージと使用した表現を投稿してください。 –

+0

@Alan_Schofieldがそれにひっかかった、ありがとう。私は誤って、実際の値を含むセルの名前の代わりに、式の列見出しセルの名前を使用していました。それらを変更してビンゴに変更しました。ご協力いただき誠にありがとうございます。 – Jon295087

関連する問題