Lesson 3: Adding Parameters to Select Multiple Values in a List
W tej lekcji użytkownik zmieni BusinessPersonID i DayoftheWeek Parametry z jednej wartości parametrów parametrów wielowartościowym. Parametry wielowartościowym pozwalają wybrać więcej niż jedną wartość dla parametru raportu.Aby zmodyfikować parametr raportu BusinessPersonID, zmieni kwerendę dla AdventureWorks2008 zestaw danych sprawdzenia@BusinessPersonID w zestawie wybranych wartości zamiast równą pojedyncza wartość i wyboru wielowartościowego właściwość parametru raportu. Aby zmodyfikować DayoftheWeek parametr, raport będzie wielowartościowym właściwość, ustaw dostępnych wartości z nowego zestaw danych i zawierają wyrażenie dla wartości domyślnych. Spowoduje utworzenie nowego zestawu danych do wartości dostępnych dla DayoftheWeek parametr. Na koniec pola tekstowego spowoduje dodanie do raportu, aby wyświetlić wartości parametrów dla DayoftheWeek wybranych ustawień.
Aby zamienić istniejący zestaw danych
W okienku danych raportu kliknij prawym przyciskiem myszy zestaw danych AdventureWorksDataset, a następnie kliknij przycisk Właściwości zestawów danych.
W urządzenie źródłowe danych, sprawdź, czy wybrano AdventureWorks_Ref.
W Typ kwerendy, zweryfikuj, że Tekst jest zaznaczone.
Kliknij przycisk projektant kwerend przycisk, aby otworzyć Konstruktora kwerend.
Zamień tekst w polu tekstowym na następujące zapytanie:
SELECT soh.OrderDate AS [Date], DATENAME(weekday, soh.OrderDate) as Weekday, soh.SalesOrderNumber AS [Order], pps.Name AS Subcat, pp.Name as Product, SUM(sd.OrderQty) AS Qty, SUM(sd.LineTotal) AS LineTotal FROM Sales.SalesPerson sp INNER JOIN Sales.SalesOrderHeader AS soh ON sp.BusinessEntityID = soh.SalesPersonID INNER JOIN Sales.SalesOrderDetail AS sd ON sd.SalesOrderID = soh.SalesOrderID INNER JOIN Production.Product AS pp ON sd.ProductID = pp.ProductID INNER JOIN Production.ProductSubcategory AS pps ON pp.ProductSubcategoryID = pps.ProductSubcategoryID INNER JOIN Production.ProductCategory AS ppc ON ppc.ProductCategoryID = pps.ProductCategoryID GROUP BY ppc.Name, soh.OrderDate, soh.SalesOrderNumber, pps.Name, pp.Name, soh.SalesPersonID HAVING ppc.Name = 'Clothing' AND (soh.OrderDate BETWEEN (@StartDate) AND (@EndDate)) AND soh.SalesPersonID IN (@BusinessPersonID)Jest w tej samej kwerendy, z tą różnicą, że warunek zmieniła się względem równości do włączenia.
AND soh.SalesPersonID IN (@BusinessPersonID)Kliknij przycisk Uruchamianie (!) przycisk.Gdy zostanie wyświetlony monit o podanie parametrów zapytania, użyj następującej tabeli, aby wprowadzić wartości.Projektant zapytań nie obsługuje testowania parametrów wielowartościowych.
@StartDate
20010101
@EndDate
20030101
@BusinessPersonID
290
Click OK.
Zestaw wyników jest wyświetlana dla sprzedawcy Chudukatil Varkey Ranjit z BusinessPersonID = 290.
Aby edytować parametr raportu BusinessPersonID w celu ustawienia go jako parametru wielowartościowego
W okienku danych raportu rozwiń węzeł Parametry, dwukrotnie kliknij BusinessPersonID parametr.
Wybierz Zezwalaj na wiele wartości opcji.
Click OK.
Kliknij przycisk Podgląd.Raport zostanie uruchomiony automatycznie.Kropla-niedziałający listy dla BusinessPersonID zawiera wszystkie nazwy sprzedawcy.
Uwaga
A)Zaznacz wszystkie) wartość jest dostępna jako pierwsza wartość w rozwijanej dostępnych wartości-niedziałający listy wielowartościowe parametru.To pole wyboru umożliwia zaznaczenie lub wyczyszczenie wszystkich wartości.Domyślnie zaznaczone są wszystkie wartości.
Aby dodać nowy zestaw danych w celu wypełnienia prawidłowych wartości dla parametru raportu
Przełącz do widoku projektu.
W okienku danych raportu kliknij prawym przyciskiem myszy AdventureWorks_Ref, a następnie kliknij przycisk Dodawanie zestawów danych.The Dataset Properties dialog box opens.
W Nazwa Typ poleWeekDaysfromQuery.
W Typ kwerendy, sprawdź, tekst jest zaznaczony.
W Kwerendy, wpisz lub wklej następujący ciąg kwerendy:
SET DATEFIRST 1; SELECT DISTINCT DATEPART(weekday, S.OrderDate) as WeekDayNumber, DATENAME(weekday, S.OrderDate) as Weekday FROM Sales.SalesOrderHeader S Order by WeekDayNumberKliknij przycisk Uruchamianie (!) przycisk na pasku narzędzi projektant kwerend.W zestawie wyników zostaną wyświetlone liczby porządkowe i dni tygodnia.
Kliknij przycisk OK dwa razy, aby zakończyć Właściwości zestawów danych -okno dialogowe.
Zestaw danych WeekDaysfromQuery pojawia się w okienku danych raportu.
Aby edytować parametr, który będzie akceptował wiele wartości, wartości domyślne i prawidłowe wartości
W okienku danych raportu rozwiń węzeł Parametry, a następnie kliknij dwukrotnie DayoftheWeek.The Report Parameter Properties dialog box opens.
Wybierz opcję Zezwalaj na wiele wartości.
Kliknij przycisk Dostępne wartości.
Wybierz opcję Pobieranie wartości z kwerendy.
W Zestaw danych, z rozwijanej-niedziałający zaznacz WeekDaysfromQuery.
W Pole wartości, z rozwijanej-niedziałający zaznacz Dzień tygodnia.
W Etykieta pole, na liście rozwijanej zaznacz Dzień tygodnia.
Kliknij przycisk Wartości domyślne.
Wybierz opcję Określanie wartości.
(Opcjonalnie) Wybierz istniejącą wartość Piątek . , a następnie kliknijUsuwanie.
Kliknij przycisk Dodawanie.
W Wartość, type Sobota.
Kliknij przycisk Dodawanie.
W Wartość, type Niedziela.
Click OK.
Zanim można wyświetlić podgląd raportu, należy zmienić wyrażenie filtru określone dla tabela obszar danych Aby zastosować operator, ponieważ DayoftheWeek parametr akceptuje wiele wartości.
Aby zmienić filtr w celu użycia parametru wielowartościowego
W Projekt widoku, kliknij prawym przyciskiem myszy, w tabela, a następnie kliknij przycisk Właściwości Tablix.The Tablix Properties dialog box opens.
Kliknij przycisk Filtry.Filtr, który został dodany do DaysoftheWeek z Lekcja 1 już istnieje.
W Wyrażenie, z rozwijanej-niedziałający listy, sprawdź wartość [Weekday].
Sprawdź, czy Tekst jest zaznaczone.
Zmiana Operator od znaku równości (=) do W operator.
W Wartość pole tekstowe, z rozwijanej-niedziałający listy, sprawdź, czy wartość [@DayoftheWeek].
Click OK.
Do porównywania wartości pole dzień roboczy z wartością parametru teraz ustawiono filtr tabela DayoftheWeek za pomocą In operator. Po wybraniu wielu wartości dla parametru raportu filtru spowoduje przetestowanie każdego wiersza tabela, aby sprawdzić, czy pole dzień roboczy znajduje się w DayoftheWeek Kolekcja.
Kliknij przycisk Podgląd.Raport zawiera parametr raportu DaysoftheWeek z wartościami domyślnymi Sobota and Niedziela.Użyj listy rozwijanej, aby wybrać wiele wartości dla DayoftheWeek parametr.
Next Steps
Pomyślnie zmieniono właściwości jednowartościowego parametru raportu, dzięki czemu jest on teraz parametrem wielowartościowym.Koniecznych zmian dokonanych w kwerendzie, filtr i wyrażenie, aby pomieścić, użycia kolekcja parametrów wielowartościowym.Użytkownik wie już, jak używać parametrów wielowartościowych w wyrażeniu.W trakcie następnej lekcji użytkownik nauczy się tworzyć parametry, których wartości są wypełniane warunkowo na podstawie wybranej wartości poprzedniego parametru.Zobacz Lesson 4: Adding Cascading Parameters.