it-swarm.com.de

Verwendung mehrerer Bedingungen (mit UND) in IIF-Ausdrücken in ssrs

Ich möchte nur Zeilen in dem SSRS-Bericht ausblenden, der die Zero Quantity ... -Zahl enthält: Es gibt mehrere Mengenspalten wie Anfangsbestände, Bruttoauslieferungen, Überweisungen, Anzahl der verkauften Mengen, Bestandsanpassungen und Schlussbestände usw. Ich mache das diese Aufgabe mithilfe des folgenden Ausdrucks.

    =IIF(Fields!OpeningStock.Value=0 AND Fields!GrossDispatched.Value=0 AND 
Fields!TransferOutToMW.Value=0 AND Fields!TransferOutToDW.Value=0 AND 
Fields!TransferOutToOW.Value=0 AND Fields!NetDispatched.Value=0 AND Fields!QtySold.Value=0 
AND Fields!StockAdjustment.Value=0 AND Fields!ClosingStock.Value=0,True,False)

Wenn Sie diesen Ausdruck jedoch für die Sichtbarkeit der Zeilen verwenden, blendet der Bericht alle Zeilen außer der Summenzeile aus. Obwohl der Bericht Zeilen mit Mengen der oben genannten Spalten anzeigen soll ..__ Die Gesamtwerte werden korrekt angezeigt.

Hinweis: Ich habe diesen Sichtbarkeitsausdruck für Zeilen in der Detailzeile festgelegt.

Ohne den Ausdruck zu verwenden ist folgendes Ergebnis.

Für die ersten 2 Reihen sind alle Mengen 0 (NULL), ich möchte diese 2 Reihen ausblenden.

enter image description here

Wie kann ich dieses Problem beheben oder welchen Ausdruck muss ich verwenden, um die erforderlichen Ergebnisse zu erzielen?

Vielen Dank im Voraus für Hilfe.

6
almond eyes

Könntest du das mal ausprobieren?

=IIF((Fields!OpeningStock.Value=0) AND (Fields!GrossDispatched.Value=0) AND 
(Fields!TransferOutToMW.Value=0) AND (Fields!TransferOutToDW.Value=0) AND 
(Fields!TransferOutToOW.Value=0) AND (Fields!NetDispatched.Value=0) AND (Fields!QtySold.Value=0) 
AND (Fields!StockAdjustment.Value=0) AND (Fields!ClosingStock.Value=0),True,False)

Hinweis: Wenn Sie Hidden auf False setzen, wird die Zeile sichtbar

11
PeterRing

Sie brauchen hier überhaupt keine IIF (). Die Vergleiche liefern trotzdem "Wahr" oder "Falsch".

Da sich diese Sichtbarkeit dieser Zeile in einer Gruppenzeile befindet, stellen Sie sicher, dass Sie für die Felder dieselbe Aggregatfunktion verwenden wie für die Felder in der Zeile. Wenn also in Ihrer Gruppenzeile Summen angezeigt werden, würden Sie dies in die Hidden-Eigenschaft eintragen.

=Sum(Fields!OpeningStock.Value) = 0 And
Sum(Fields!GrossDispatched.Value) = 0 And 
Sum(Fields!TransferOutToMW.Value) = 0 And
Sum(Fields!TransferOutToDW.Value) = 0 And
Sum(Fields!TransferOutToOW.Value) = 0 And
Sum(Fields!NetDispatched.Value) = 0 And
Sum(Fields!QtySold.Value) = 0 And
Sum(Fields!StockAdjustment.Value) = 0 And
Sum(Fields!ClosingStock.Value) = 0

Wenn jedoch bei der obigen Version ein Datensatz den Wert 1 hat und einer den Wert -1 hat und alle anderen Null sind, ist auch die Summe Null und die Zeile könnte ausgeblendet sein. Wenn Sie nicht möchten, können Sie einen komplexeren Ausdruck schreiben:

=Sum(
    IIF(
        Fields!OpeningStock.Value=0 AND
        Fields!GrossDispatched.Value=0 AND
        Fields!TransferOutToMW.Value=0 AND
        Fields!TransferOutToDW.Value=0 AND 
        Fields!TransferOutToOW.Value=0 AND
        Fields!NetDispatched.Value=0 AND
        Fields!QtySold.Value=0 AND
        Fields!StockAdjustment.Value=0 AND
        Fields!ClosingStock.Value=0,
        0,
        1
    )
) = 0

Dies ist im Grunde eine fantastische Möglichkeit, die Anzahl der Zeilen zu zählen, in denen ein Feld nicht Null ist. Wenn jedes Feld für jede Zeile in der Gruppe Null ist, gibt der Ausdruck "true" zurück und die Zeile wird ausgeblendet.

3
JC Ford

Hier ist ein Beispiel, das Ihnen eine Idee geben sollte.

=IIF(First(Fields!Gender.Value,"vw_BrgyClearanceNew")="Female" and 
(First(Fields!CivilStatus.Value,"vw_BrgyClearanceNew")="Married"),false,true)

Ich denke, Sie müssen den Namen der Datenquelle oder den Tabellennamen angeben, von dem Ihre Daten stammen.

0
roger bulawan