1

テキストボックスに値(「NAN」または「#Err」など)を取得したら、それを-(ハイフン)に置き換えます。SSRSレポートでこれを達成する方法は?

前もって感謝します。

4

3 に答える 3

2

それを処理する式を記述する必要があります。理想的には、レポートにカスタム コード関数を含めることをお勧めします (例: Code.SafeDivision())。

=iif(Fields!denominator.Value = 0, "-", Numerator / Denominator)
于 2012-09-20T21:17:13.247 に答える
2

cmotley の回答を詳しく説明するには、以下をカスタム コードとしてレポートに追加します (これを行うには、レポート プロパティに移動し、コードを作成して貼り付けます)。

Function SafeDivide(value1 As Decimal, value2 As Decimal) As Decimal

        If (value1 <> 0.0 And value2 <> 0.0) Then
            Return value1 / value2
        Else
            Return 0
        End If

End Function

次に、これをテキストボックスで使用して、数値やエラーを受信せずに分割できます。たとえば、式として次を追加します (必要に応じてテキストボックス名を変更します)。

=Code.SafeDivide(ReportItems!Textbox186.Value, ReportItems!Textbox184.Value)

関数を使用して 2 つのテキスト ボックスを分割します。

ダッシュを表示するには、テキスト ボックスの書式設定を「数字」に変更し、「0」を「-」に置き換えることを示すボックスにチェックを入れるだけです。

または、何らかの理由で「NaN」がデータソースから明示的に送信されている場合 (SharePoint にロードされたテーブルを参照する場合はまれですが、不可能ではありません)、次を使用できます。

Function evalutator(value as String) as String

    Select Case value
        Case "NaN"
            Return "-"
        Case "NAN"
            Return "-"

    End Select

    Return value

End Function
于 2012-09-28T01:55:18.770 に答える
-2

どうですか:

=IIF(Fields!yourcolumnname.Value = 0, "-", Fields!yourcolumnname.Value*1)

または、取得する場所にゼロが必要な場合はNAN/#ERROR、次を使用できます。

=IIF(Fields!yourcolumnname.Value = 0, Fields!yourcolumnname.Value*1, Fields!yourcolumnname.Value)
于 2012-09-21T09:20:41.083 に答える