Definizione della granularità della dimensione in un gruppo di misure
È possibile dimensionare le tabelle dei fatti a diversi livelli di dettaglio o granularità a seconda degli scopi. È ad esempio possibile registrare per ogni giorno i dati relativi alle vendite per rivenditore o le vendite effettuate tramite Internet, mentre le informazioni sulle quote di vendita esistono solo per il mese o il trimestre. In questi casi è possibile che la dimensione temporale abbia un livello di dettaglio diverso per ognuna di queste diverse tabelle dei fatti. Anche se è possibile definire una nuova dimensione del database come dimensione temporale con questa granularità diversa, esiste un modo più semplice con Analysis Services.
Per impostazione predefinita in Analysis Services, quando una dimensione viene usata all'interno di un gruppo di misure, la granularità dei dati all'interno di tale dimensione è basata sull'attributo chiave della dimensione. Ad esempio, quando una dimensione temporale è inclusa in un gruppo di misure e il livello di dettaglio predefinito della dimensione temporale è giornaliero, il livello di dettaglio predefinito della dimensione nel gruppo di misure è anch'esso giornaliero. In molti casi ciò risulta appropriato, ad esempio per i gruppi di misure Internet Sales e Reseller Sales di questa esercitazione. Quando tuttavia una dimensione di questo tipo è inclusa in altri tipi di gruppi di misure, quali gruppi di misure relative a budget o quote di vendita, risulta generalmente più appropriato un livello di dettaglio mensile o trimestrale.
Per specificare un livello di dettaglio per la dimensione del cubo diverso da quello predefinito, si modifica l'attributo di granularità per la dimensione del cubo usato in un particolare gruppo di misure nella scheda Utilizzo dimensioni di Progettazione cubi. Quando il livello di dettaglio di una dimensione in un gruppo di misure specifico viene modificato in un attributo diverso dall'attributo chiave della dimensione, è necessario garantire che tutti gli altri attributi del gruppo di misure siano direttamente o indirettamente correlati al nuovo attributo di granularità. A tale scopo, specificare le relazioni tra tutti gli altri attributi e l'attributo specificato come l'attributo di granularità del gruppo di misure. In questo caso si definiscono ulteriori relazioni tra attributi anziché spostare quelle esistenti. L'attributo specificato come attributo di granularità diventa l'attributo chiave all'interno del gruppo di misure per gli attributi rimanenti nella dimensione. Se non si specificano le relazioni tra attributi in modo appropriato, Analysis Services non sarà in grado di aggregare correttamente i valori, come si vedrà nelle attività in questo argomento.
Per altre informazioni, vedere Relazioni tra dimensioni, Definire una relazione di tipo Regolare e le relative proprietà.
Nelle attività di questo argomento verrà aggiunto un gruppo di misure Sales Quotas e la granularità della dimensione Date in questo gruppo di misure verrà definita a livello mensile. Si definiscono quindi le relazioni tra l'attributo month e altri attributi di dimensione per assicurarsi che Analysis Services aggrega correttamente i valori.
Aggiunta di tabelle e definizione del gruppo di misure Sales Quotas
Passare alla vista origine dati Adventure Works DW 2012 .
Fare clic con il pulsante destro del mouse in un punto qualsiasi del riquadro Diagramma , fare clic su Nuovo diagramma e quindi assegnare un nome al diagramma
Sales Quotas
.Trascinare il riquadro Employee, Sales Territory e
Date
tabelle dal riquadro Tabelle al riquadro Diagramma .Aggiungere la tabella FactSalesQuota al riquadro Diagramma facendo clic con il pulsante destro del mouse su un punto qualsiasi del riquadro Diagramma e selezionando Aggiungi/Rimuovi tabelle.
Si noti che la tabella SalesTerritory è collegata alla tabella FactSalesQuota tramite la tabella Employee .
Esaminare le colonne nella tabella FactSalesQuota e quindi esplorarne i dati.
Si noti che il livello di dettaglio dei dati contenuti nella tabella è il trimestre di calendario, che rappresenta il livello di dettaglio più basso nella tabella FactSalesQuota.
In Visualizzazione origine dati Designer modificare la proprietà FriendlyName della tabella FactSalesQuota su
SalesQuotas
.Passare al cubo Esercitazione di Analysis Services e quindi fare clic sulla scheda Struttura cubo .
Fare clic con il pulsante destro del mouse in qualsiasi punto del riquadro Misure, scegliere Nuovo gruppo di misure, fare clic nella finestra di dialogo Nuovo gruppo di misure e quindi fare clic
SalesQuotas
su OK.Il
Sales Quotas
gruppo di misure viene visualizzato nel riquadro Misure . Nel riquadro Dimensioni si noti che viene definita anche una nuovaDate
dimensione del cubo in base alla dimensione delDate
database. Una nuova dimensione del cubo correlata all'ora è definita perché Analysis Services non conosce quale delle dimensioni del cubo relative al tempo esistente da correlare alla colonna DateKey nella tabella dei fatti FactSalesQuota che sottolizza il gruppo di misure Sales Quotas. Questa modifica verrà eseguita più avanti in un'altra attività di questo argomento.Espandere il
Sales Quotas
gruppo di misure.Nel riquadro Misure selezionare Sales Amount Quotae quindi impostare il valore della proprietà FormatString su Currency nella finestra Proprietà.
Selezionare la misura Sales Quotas Count e quindi digitare
#,#
come valore per la proprietà FormatString nella Finestra Proprietà.Eliminare la misura Calendar Quarter dal
Sales Quotas
gruppo di misure.Analysis Services ha rilevato la colonna che sottolizza la misura Calendar Quarter come colonna che contiene misure. Questa colonna e la colonna CalendarYear, tuttavia, contengono i valori che saranno utilizzati più avanti in questo argomento per collegare il gruppo di misure Sales Quotas alla dimensione Date.
Nel riquadro Misure fare clic con il pulsante destro del mouse sul
Sales Quotas
gruppo di misure e quindi scegliere Nuova misura.Verrà visualizzata la finestra di dialogo Nuova misura , contenente le colonne di origine disponibili per una misura con tipo di uso Somma.
Nella finestra di dialogo Nuova misura selezionare Conteggio distinto nell'elenco Utilizzo , verificare che
SalesQuotas
sia selezionato nell'elenco Tabella di origine, selezionare EmployeeKey nell'elenco Colonna di origine e quindi fare clic su OK.Si noti che la misura viene creata in un nuovo gruppo di misure denominato Sales Quotas 1. Le misure di conteggio distinte in SQL Server vengono create nei propri gruppi di misure per ottimizzare le prestazioni di elaborazione.
Modificare il valore per la proprietà Name per la misura Employee Key Distinct Count su
Sales Person Count
e quindi digitare#,#
come valore per la proprietà FormatString .
Visualizzazione delle misure nel gruppo di misure Sales Quota in base al valore della data
Scegliere Distribuisci Analysis Services Tutorial dal menu Compila.
Al termine della distribuzione, fare clic sulla scheda Browser in Cubo Designer per il cubo Esercitazione di Analysis Services e quindi fare clic sul pulsante Riconnessione.
Fare clic sul collegamento Excel e quindi fare clic su Abilita.
Nell'elenco campi tabella pivot espandere il
Sales Quotas
gruppo di misure e quindi trascinare la misura Quota importo vendite nell'area Valori.Espandere la dimensione Sales Territory , quindi trascinare la gerarchia definita dall'utente Sales Territories in Etichette di riga.
Si noti che la dimensione del cubo Sales Territory non è correlata, direttamente o indirettamente, alla tabella Fact Sales Quota come illustrato nella figura seguente.
Sales
Nella serie passaggi successiva di questo argomento verrà definita una relazione della dimensione di riferimento tra la dimensione e la tabella dei fatti.
Spostare la gerarchia utente Sales Territories dall'area Etichette di riga all'area Etichette di colonna.
Nell'elenco di campi della tabella pivot selezionare la gerarchia definita dall'utente Sales Territories e quindi fare clic sulla freccia giù visualizzata a destra.
Nel filtro fare clic sulla casella di controllo Seleziona tutto per annullare tutte le selezioni, quindi scegliere solo America del Nord.
Nell'elenco campi tabella pivot espandere
Date
.Trascinare la gerarchia utente Date.Fiscal Date in Etichette di riga.
Nella tabella pivot fare clic sulla freccia in giù accanto a Etichette di riga. Deselezionare tutti gli anni ad eccezione di FY 2008.
Si noti che viene visualizzato solo il membro di luglio 2007 del livello Month, anziché il membro luglio 2007, agosto2007 e settembre 2007 del livello Month e che viene visualizzato solo il membro del 1 luglio 2007 del
Date
livello, anziché tutti i 31 giorni. Questo comportamento si verifica perché la grana dei dati nella tabella dei fatti è a livello trimestre e la grana dellaDate
dimensione è il livello giornaliero. Questa impostazione verrà modificata nell'attività successiva di questo argomento.Si noti anche che il valore Sales Amount Quota per i livelli mese e giorno è lo stesso valore presente per il livello trimestre ovvero $13,733,000.00. Il livello dei dati più basso nel gruppo di misure Sales Quotas è infatti impostato sul livello trimestrale. Questa impostazione verrà modificata nella Lezione 6.
Nell'immagine seguente vengono illustrati i valori per Sales Amount Quota.
Definizione delle proprietà di utilizzo delle dimensioni per il gruppo di misure Sales Quotas
Aprire Progettazione dimensioni per la dimensione Employee , fare clic con il pulsante destro del mouse su SalesTerritoryKey nel riquadro Vista origine dati , quindi scegliere Nuovo attributo da colonna.
Nel riquadro Attributi selezionare SalesTerritoryKey, quindi nella finestra Proprietà impostare le proprietà AttributeHierarchyVisible su False , AttributeHierarchyOptimizedState su NotOptimizede AttributeHierarchyOrdered su False.
Questo attributo è necessario per collegare la dimensione Sales Territory ai
Sales Quotas
gruppi di misure Sales Quotas 1 come dimensione a cui si fa riferimento.Nel cubo Designer per il cubo Esercitazione di Analysis Services fare clic sulla scheda Utilizzo dimensioni e quindi esaminare l'utilizzo della dimensione nei
Sales Quotas
gruppi di misure Sales Quotas 1.Si noti che le dimensioni del dipendente e
Date
del cubo sono collegate ai gruppi di misure Sales Quotasand Sales Quotas 1 tramite relazioni regolari. Si noti anche che la dimensione del cubo Sales Territory non è collegata a nessuno di questi gruppi di misure.Fare clic sulla cella all'intersezione della dimensione Sales Territory e del
Sales Quotas
gruppo di misure e quindi fare clic sul pulsante Sfoglia (...). Verrà visualizzata la finestra di dialogo Definisci relazione .Nell'elenco Selezionare il tipo di relazione selezionare Riferimento.
Nell'elenco Dimensione intermedia selezionare Employee.
Nell'elenco Attributo della dimensione di riferimento selezionare Sales Territory Region.
Nell'elenco Attributo della dimensione intermedia selezionare Sales Territory Key. (la colonna chiave dell'attributo Sales Territory Region è la colonna SalesTerritoryKey).
Verificare che la casella di controllo Materializza sia selezionata.
Fare clic su OK.
Fare clic sulla cella all'intersezione della dimensione Sales Territory e del gruppo di misure Sales Quotas 1 e quindi fare clic sul pulsante sfoglia (...). Verrà visualizzata la finestra di dialogo Definisci relazione .
Nell'elenco Selezionare il tipo di relazione selezionare Riferimento.
Nell'elenco Dimensione intermedia selezionare Employee.
Nell'elenco Attributo della dimensione di riferimento selezionare Sales Territory Region.
Nell'elenco Attributo della dimensione intermedia selezionare Sales Territory Key. (la colonna chiave dell'attributo Sales Territory Region è la colonna SalesTerritoryKey).
Verificare che la casella di controllo Materializza sia selezionata.
Fare clic su OK.
Eliminare la dimensione del
Date
cubo.Anziché avere quattro dimensioni del cubo correlate all'ora, si userà la dimensione del cubo Data ordine nel
Sales Quotas
gruppo di misure come data in base alla quale verranno dimensionate le quote di vendita. Questa dimensione del cubo verrà inoltre utilizzata come dimensione di data primaria del cubo.Nell'elenco Dimensioni rinominare la dimensione del cubo Order Date in
Date
.Ridenominazione della dimensione del cubo Order Date per
Date
semplificare la comprensione del ruolo da parte degli utenti come dimensione di data primaria in questo cubo.Fare clic sul pulsante Sfoglia (...) nella cella all'intersezione del
Sales Quotas
gruppo di misure e dellaDate
dimensione.Nella finestra di dialogo Definisci relazione selezionare Regolare nell'elenco Selezionare il tipo di relazione .
Nell'elenco Attributo di granularità selezionare Calendar Quarter.
Verrà visualizzato un avviso per notificare che, avendo selezionato un attributo non chiave come attributo di granularità, è necessario assicurarsi che tutti gli altri attributi siano direttamente o indirettamente correlati all'attributo di granularità specificandoli come proprietà del membro.
Nell'area Relazione della finestra di dialogo Definisci relazione collegare le colonne delle dimensioni CalendarYear e CalendarQuarter della tabella sottostante la dimensione Date del cubo alle colonne CalendarYear e CalendarQuarter della tabella sottostante il gruppo di misure Sales Quota e quindi fare clic su OK.
Nota
Calendar Quarter è definito come attributo di granularità per la dimensione Date del cubo nel gruppo di misure Sales Quotas mentre l'attributo Date continua ad essere l'attributo di granularità per i gruppi di misure Internet Sales e Reseller Sales.
Ripetere i quattro passaggi precedenti per il gruppo di misure Sales Quotas 1 .
Definizione delle relazioni tra attributi tra l'attributo Calendar Quarter e gli altri attributi della dimensione nella dimensione Date
Passare a Dimensione Designer per la
Date
dimensione e quindi fare clic sulla scheda Relazioni attributo.Si noti che anche se l'anno del calendario è collegato al calendario trimestre tramite l'attributo Calendar Semestre , gli attributi del calendario fiscale sono collegati solo tra loro; non sono collegati all'attributo Calendar Quarter e pertanto non verranno aggregati correttamente nel
Sales Quotas
gruppo di misure.Nel diagramma fare clic con il pulsante destro del mouse sull'attributo Calendar Quarter , quindi scegliere Nuova relazione tra attributi.
Nella finestra di dialogo Crea relazione tra attributi l'opzione Attributo di origine è impostata su Calendar Quarter. Impostare Attributo correlato su Fiscal Quarter.
Fare clic su OK.
Si noti che viene visualizzato un messaggio di avviso che indica che la dimensione contiene una o più relazioni di attributi ridondanti che potrebbero impedire l'aggregazione
Date
dei dati quando un attributo non chiave viene usato come attributo di granularità.Eliminare la relazione tra l'attributo Month Name e l'attributo Fiscal Quarter .
Scegliere Salva tutti dal menu File.
Visualizzazione delle misure nel gruppo di misure Sales Quota in base al valore della data
Scegliere Distribuisci Analysis Services Tutorial dal menu Compila.
Al termine della distribuzione, fare clic sulla scheda Browser in Cubo Designer per il cubo Esercitazione di Analysis Services e quindi fare clic su Riconnetti.
Fare clic sul collegamento Excel e quindi fare clic su Abilita.
Trascinare la misura Sales Amount Quota nell'area Valori.
Trascinare la gerarchia utente Sales Territories in Etichette di colonna, quindi applicare il filtro per America del Nord.
Trascinare la gerarchia utente Date.FiscalDate in Etichette di riga, fare clic sulla freccia giù accanto a Etichette di riga nella tabella pivot e deselezionare tutte le caselle di controllo ad eccezione di FY 2008per visualizzare solo l'anno fiscale 2008.
Fare clic su OK.
Espandere FY 2008, H1 FY 2008e quindi espandere Q1 FY 2008.
L'immagine seguente mostra una tabella pivot per il cubo Esercitazione di Analysis Services, con il gruppo di misure Sales Quota ridimensionato correttamente.
Si noti che ogni membro del livello trimestre fiscale ha lo stesso valore del livello trimestre. Prendendo come esempio Q1 FY 2008 , la quota di $9,180,000.00 per Q1 FY 2008 è anche il valore per ognuno dei relativi membri. Ciò si verifica perché il livello di dettaglio nella tabella dei fatti è impostato sul livello trimestrale così come il livello di dettaglio della dimensione Date. Nella Lezione 6 verranno illustrate le procedure per allocare gli importi trimestrali proporzionalmente a ogni mese.
Lezione successiva
Lezione 6: Definizione di calcoli
Vedere anche
Relazioni tra dimensioni
Definire una relazione di tipo Regolare e le relative proprietà
Utilizzare diagrammi in Progettazione vista origine dati (Analysis Services)