Kihagyás

Feladat 3: Értékesítői riport

A feladat önálló munka.

Ebben a feladatban az értékesítőkről fogunk riportot készíteni.

Data set kiegészítése

Az új riporthoz új adatokra lesz szükségünk. Bővítsük ki a lekérdezésünket, azaz a dataset-et.

  1. A Report Data panelen a DataSets alatt az AdventureWorksDataset-en jobb kattintással válasszuk a Dataset properties-t, majd bővítsük a query-t:
SELECT
  soh.OrderDate AS [Date],
  soh.SalesOrderNumber AS [Order],
  pps.Name AS Subcat, pp.Name as Product,
  SUM(sd.OrderQty) AS Qty,
  SUM(sd.LineTotal) AS LineTotal
+ , CONCAT(pepe.FirstName, ' ', pepe.LastName) AS SalesPersonName
FROM Sales.SalesPerson sp
+ INNER JOIN Person.Person as pepe ON sp.BusinessEntityID = pepe.BusinessEntityID
  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
+        , pepe.FirstName, pepe.LastName
HAVING ppc.Name = 'Clothing'

A Refresh Fields gombra kattintva ellenőrizhetjük, sikerült-e jól beírnunk. Ha nem jön hibaüzenet, akkor jók vagyunk. Zárjuk be a szerkesztő ablakot.

  1. A Report data ablakban az AdventureWorksDataset-et nyissuk ki, vagy ha ki van nyitva, akkor csukjuk be és nyissuk ki újra. Ekkor meg kell jelenjen egy új SalesPersonName mező.

  2. Ezután jobb klikk a Data Sources-ben az AdventureWorks2014-re > Convert to shared Data Source, majd jobb klikk az AdventureWorksDataset-re > Convert to shared Dataset. Ezzel a data source és a dataset is megosztható több riport fájl között.

Új riport és adatforrások

Az előbb megosztottá konvertáltuk a data source-t és dataset-et. Ezeket fogjuk egy új riportban felhasználni.

  1. Solution Explorer-ben jobb klikk a Reports mappára > Add new item > Report. Az új riport neve legyen "Sales People".

  2. Nyissuk meg az új riportot. Az új riporthoz még nincsenek adatforrások. A Report Data panelen vegyük fel a már meglevő adatforrásokat:

  3. Jobb klikk a Data Sources node-on > Add Data Source

  4. Válasszuk a Use shared data source reference opciót, és válasszuk ki az "AdventureWorks2014" nevűt.

    Megosztott adatforrás

  5. Jobb klikk a Datasets-en > Add Dataset

  6. Válasszuk ki a Use a shared dataset opciót, és alatta válasszuk ki a már létező AdventureWorksDataset-et

    Megosztott adathalmaz

Riport tartalma

Készíts táblázatos riportot arról, hogy az egyes értékesítők mikor, mit adtak el. Csoportosíts termék kategória és értékesítő szerint. Készíts összegző sort, ami az egyes értékesítők mindenkori eladásait összegzi! Ügyelj a számértékek formázására!

A megoldás kulcsa az alábbi táblázat és csoportosítás összeállítása. A kategóriát a Subcat mező tartalmazza.

Javasolt csoportok

Az alábbihoz hasonló legyen a végső riport:

Összegzés kinézete

Tipp: Ugyanúgy az Add Total > After funkciót kell használni, mint a közös feladatoknál. Amit itt el lehet rontani, hogy az Add Total > After-t nem a [SalesPersonName]-en jobb klikkelve kell kiválasztani, hanem a [Subcat]-en jobbklikkelve – hiszen őket akarjuk összegezni, nem a Sales Person sorokat. (Ha a SalesPersonName-re kattintva csináljuk, abból "teljes összeg" lesz, hiszen minden értékesítőt összegzünk.)

Végeztél

Végeztél a feladatokkal.


2025-09-02 Szerzők