2013-10-07 9 views

Antwort

39
=iif(isNothing(Fields!FV1.Value), Fields!FV2.Value, Fields!FV1.Value) 
+0

Danke für Ihre Hilfe –

+0

Ja - die oben war sehr hilfreich. Vielen Dank L –

27

Wenn Sie es ein paar Mal tun müssen, können Sie auch eine wiederverwendbare Funktion machen, um eine Menge Tipparbeit zu vermeiden. Hier ist eine Lösung aus der SQL's ISNULL Funktion modelliert:

  1. Rechtsklick auf den Bericht Dokument und gehen Sie auf Eigenschaften zu berichten.

    Report Properties

  2. Navigieren Sie zum Tab-Code und fügen Sie die folgende Funktion:

    Public Function IsNull(input As Object, defaultValue As Object) As Object 
        Return IIf(input Is Nothing, defaultValue, input) 
    End Function 
    

    Code
    Hinweis - Auch wenn der benutzerdefinierte Code ist gültig VB.NET-Code erwartet Sie have to use the IIF Ternary operator.

  3. Dann können Sie es in einem Ausdruck wie folgt verwenden:

    =Code.IsNull(Fields!MyField.Value,0) 
    

    Expression

+1

Obwohl beide Antworten richtig sind, mag ich das Potenzial für die Wiederverwendung mit dieser Lösung sehr. Vor allem, wenn Sie einen komplexen Ausdruck haben, in dem Sie ein Feld aggregieren. In diesem Fall ist dies eine viel besser lesbare und wiederverwendbare Lösung. –

+2

3 Jahre danach - aber ich fand das sehr nützlich. – MISNole

Verwandte Themen