2012-06-08 10 views
7

Chcę wyświetlić liczbę wierszy mojego przefiltrowanego tablix w polu tekstowym w nagłówku mojego raportu SSRS. Przeszukałem trochę, ale nic nie pomogło.Policz wiersze przefiltrowanego tablix w SSRS

Propozycja pod numerem this link pozwala mi liczyć, ale ogranicza się do liczby wierszy nadchodzących na bieżącej stronie. Nawet jeśli mój wynik ma 2 strony, otrzymuję liczbę wierszy tylko na pierwszej stronie.

Próbowałem również, dodając nową kolumnę dla numeru wiersza, a następnie pokazując jego wartość w polu tekstowym nagłówka, ale problem pozostaje taki sam jak powyżej.

Próbowałem za pomocą zmiennych globalnych udostępnionych w raporcie (używam niestandardowego kodu do filtra), to pomogło zapisu do pewnego stopnia, ale zachować na gromadzenie wartości w każdym czasie I kliknij przycisk Wyświetl raport :(

Ponadto należy rozważyć że przejście kryteria filtrowania w procedurze przechowywanej nie jest opcja dla mnie.

Dzięki Ravi

Odpowiedz

3

prawej stronie kliknij poza białej części i będzie można dostać się do sekcji ReportProperties.

Dostosuj wysokość strony do wartości około 500 (można to zrobić tak wysoko, jak chcesz, to spowoduje to tylko powiększenie strony do wymaganej wysokości). Kliknij OK.

Wróć do strony i kliknij prawym przyciskiem myszy nad tablix i kliknij wstaw tekst.

Kliknij prawym przyciskiem myszy pole tekstowe i wyrażenie kliknięcia.

Wklej =CountRows()

Kliknij porządku, podgląd raportu. Mam nadzieję, że to jest to, czego potrzebujesz.

12

Rozwiązanie poniżej działa jak czar dla mnie. To z postu QuestionDude na forum asp.net here:

  1. Dodaj wiersz do dołu tablix poza grupą szczegółów.
  2. W dowolnej komórce w tym wierszu "stopka" ustaw wyrażenie na =COUNT("Fields.[pick a field].Value"). Zawsze paranoidalne, użyłem unikalnego pola. Nie jestem pewien, czy to ma znaczenie. Nazwijmy komórkę Textbox17.
  3. Poza tablix można użyć wyrażenia ReportItems! Textbox17.Value, aby wyświetlić liczbę wierszy przefiltrowanego tablix.
  4. Ukryj wiersz w stopce.

All credit to QuestionDude.

0

Dla mnie licznik nie działał na przefiltrowanym zbiorze danych, zawsze (zarówno dla COUNT, jak i COUNTROWS) zwracał liczbę oryginalnego zestawu danych.

Ponieważ nie znalazłem sposobu, aby to zadziałało, skończyło się na użyciu CountDistinct, ponieważ filtrowanie jest statyczne i wiem, do której kolumny danych należy się liczyć.