SSRS-Expression die Anzahl der unterschiedlichen Anzahl der sichtbaren Elemente
Derzeit bin ich mit diesem Ausdruck in eine Zelle oberhalb der Spaltenüberschriften einer Tabelle:
= "Num Days " & CountDistinct(Fields!Date.Value)
In der report designer-dies ist der Kontext, der Ausdruck:
Hier ist, was das Ergebnis sieht wie folgt aus:
Der Ausdruck ist ok arbeitet ich.e, die im Datensatz gibt es 60 verschiedene Termine, das ist es, was der Ausdruck gibt. Allerdings gibt es einen filter auf die Gruppe (Date2) so, dass es nur 10 Tagen sichtbar in die tablix-Element.
Wie kann ich ändern, den Ausdruck gibt nur die Daten sichtbar sind?
InformationsquelleAutor whytheq | 2012-10-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die einfachste Lösung ist, verschieben Sie die filter upstream: setzen Sie den filter auf das Dataset anstelle der Tablix-Gruppe? Dann werden diese Zeilen nicht in Ihrer Summe.
Andere Optionen gehören die benutzerdefinierten code zu halten eine laufende Aufzeichnung der Werte, oder setzen Sie eine bedingte, die in Ihrem Aggregat-Ausdruck, vielleicht so etwas wie:
kann ich nicht auf die Anzahl der Spalten, die sichtbar sind in einem tablix-Element?
Wenn die einzigen Daten, die region in diesem Bericht verweisen auf die Daten gesetzt ist, dann können Sie den filter auf das dataset. (Rechtsklick auf Datensatz in BIDS, gehen Sie auf Eigenschaften -> Registerkarte "filter".) Dies erfordert nicht änderung der Abfrage. Dann wird Ihr Ausdruck. Ja, ich verstehe, dass Sie tun kann somethine andere als Oktober, aber da ich nicht weiß, was Ihr filter ist, habe ich in einige beliebige filter. Es ist nicht leicht an der sichtbaren Spalten: das rendering ist ziemlich spät in der SSRS-Prozess.
hmmm - dieser Wunsch könnte schwierig sein, dann: sehen Sie eine sehr kleine 60Tage sparkline in der Siebdruck ich.e ich muss alle 60 Tage in den tablix-region für die sparkline zu verwenden - dann in den Spalten Datum, Gruppe, Filtere ich nur die letzten 10 Tage.
vielleicht wenn wir schauen an [getdate - min(Datum)] dann, wenn diese weniger als 10 sollte es wieder der Ergebnis - ansonsten, wenn mehr als 10 dann, wird nur return 10; ist das möglich?
InformationsquelleAutor Jamie F