Reporting Services parametrisointi Analysis Service kuutioista
Parametrisoinnin suunnittelu
Linkitettyjen raporttien ja parametrien välitys niiden välillä on SQL kyselyissä eroaa huomattavasti Analysis services ‘multidimensional dataset’ parametroinnista. Kun käytetään ulottuvuuksien jäseniä (dimension members) Analysis Services kuutiosta listoissa joita käytetään parametreinä, on toteuttaminen huomattavasti yksinkertaisempaa.
Parametrien lisääminen Analysis Services Datasettiin
Verrattuna relatiokanta tietolähteeseen, on Analysis Services tietolähde parametrien lähteenä hieman yksinkertaisempi toteuttaa. Tarvitsee vain määrittää ulottuvuus (dimensio) josta parametrit halutaan hakea ja loppu onkin sitten tehty valmiiksi automaattisesti.
Tässä esimerkissä lisätään parametri filtteroimaan datasetti kalenterivuosilla
Datasets kansiossa – Report Data ikkunassa on Dataset1. Tämä sisältää MDX kyselyn, jossa on määritetty parametrit. Tässä tapauksessa aluksi vain pvm niminen. Tämä parametri tehdään MDX query editorilla. Editorissa muokataan kyselyä hiirellä raahaamalla oikeat elementit ja jäsenet omaan ikkunaansa ja filtterinä toimivat jäsenet omaansa. Filttereinä toimivat voidaan asettaa parametreiksi. Tämän jälkeen kaikki tarpeellinen onkin useimmiten jo tehty ja query editorin tiedoilla generoituu uusi piilotettu (oletus) dataset. Datasetin nimeä ei kannata muuttaa, vaan se kannattaa generoida uudelleen tarpeen mukaan.
1. Klikkaa ponnahdusvalikko esiin datasetin kohdalta ja valitse properties.
2. Valitse ylin vaihtoehto – Query
3. Tee tai muokkaa
jo tekemääsi kyselyä lisäämällä pvm tieto parametriksi (rasti ruutuun) ja valitse filter expression oletusarvoksi. Huomaa, että tässä esimerkissä on vain yhden päivän pvm filtterinä. Käyttökelpoisempaa on usein käyttää alku ja loppu pvm tietoja. Tähän soveltuu Equal operaattorin sijaan Range, jolloin Filter expression valinta muuttuu kaksi osaiseksi alku ja loppu pvm filtteri tietoja varten.
3.1 – yksi osainen filtteri parametrointi:
3.2 – kaksi osainen filtteri parametrointi:
4. Query editori näyttää parametrit tämän jälkeen näin:
5. Varmista pvm tiedon oikea formaatti, joka vaikuttaa siihen että sitä myös käsitellään jatkossa päivämääränä. Tämä on tärkeää esimerkiksi pvm valinta toiminnon kannalta. Jos tietoa ei voida esittää date muodossa, saadaan valintalista ja pitkä lista tekstimuotoisena olevia päivämääriä. Haku toimii myös näin, mutta päivämäärä valintatyökalulla on paljon parempi valita haluttu päivämäärä kriteeri.
Tässä esimerkki, kun pvm tieto on date muotoisena datana:
Tässä esimerkki, kun pvm tieto on teksti muotoisena datana:
Päivämäärä muotoinen data saadaan expressionilla:
="[Date].[Calendar].[Date].[" + Format(CDate(Parameters!Date.Value), "MMMM d, yyyy") + "]"
Jossa käyttämäsi aikaulottuvuus on kuvattava ensimmäisenä skriptin alussa muodossa [Ulottuvuuden nimi].[hierarkian nimi].[pvm kentän data jota halutaan käyttää]
Lisäksi parametrin ominaisuuksissa on valittavissa default – oletus arvo päivämäärälle. Se voi yksinkerteisimmillaan olla vaikkapa = Today(). Tai hieman älykkäämmin valmiiksi asetettuna edellinen kuukausi, tai haluttu täysi kk tai jokin muu haluttu aikaväli tähän tapaan:
=DateSerial(Year(Now()), Month(Now()),0)
Tässä vielä kuvia jotka voivat selventää toteutusta:
Päivämäärä formaatin varmistaminen
Parametrin tiedot MDX kyselyissä. Huomio, että graafisen tilan ja tekstimuotoisen tilan välillä ei voi vaihdella rajoituksetta!
Parametrien asettaminen manuaalisesti.
Kun haluat editoida MDX kyselyä menettämättä graafista näkymää, valitse expression painike ja saat koko MDX kyselyn editoitavaksi. Toiminto ei ole sama kun query editorissa!
Mutta tämäkin saattaa muuttua MDX generaattorin toimesta.