Condividi tramite


Definizione delle proprietà di elaborazione dei membri sconosciuti e nulli

Quando Analysis Services elabora una dimensione, tutti i valori distinti delle colonne sottostanti nelle tabelle o delle viste nella vista origine dati popolano gli attributi della dimensione. Se Analysis Services rileva un valore Null durante l'elaborazione, per impostazione predefinita, converte questo valore Null in zero per le colonne numeriche o in una stringa vuota per le colonne stringa. È possibile modificare le impostazioni predefinite o convertire i valori Null nel processo di estrazione, trasformazione e caricamento (se presente) del data warehouse relazionale sottostante. Inoltre, è possibile fare in modo che Analysis Services converta il valore Null in un valore designato configurando tre proprietà: le proprietà UnknownMember e UnknownMemberName per la dimensione e la proprietà NullProcessing per l'attributo chiave della dimensione.

La Procedura guidata per le dimensioni e la Procedura guidata per i cubi abiliteranno queste proprietà in base al fatto che l'attributo chiave di una dimensione sia annullabile o che l'attributo radice di una dimensione a fiocco di neve si basi su una colonna annullabile. In questi casi, la proprietà NullProcessing dell'attributo chiave verrà impostata su UnknownMember e la proprietà UnknownMember verrà impostata su Visible.

Tuttavia, quando si costruiscono dimensioni a fiocco di neve in modo incrementale, come stiamo facendo con la dimensione Product in questo tutorial, o quando si definiscono le dimensioni attraverso Dimension Designer e si incorporano queste dimensioni esistenti in un cubo, le proprietà UnknownMember e NullProcessing potrebbero dover essere impostate manualmente.

Nelle attività di questo argomento, aggiungerai gli attributi della categoria e della sottocategoria di prodotto alla dimensione Product, provenienti da tabelle snowflake che verranno incluse nella vista della sorgente dati Adventure Works DW. Si abiliterà quindi la proprietà UnknownMember per la dimensione Product, specificare Assembly Components come valore per la proprietà UnknownMemberName , correlare gli Subcategory attributi e Category all'attributo product name e quindi definire la gestione degli errori personalizzata per l'attributo chiave membro che collega le tabelle snowflaked.

Annotazioni

Se hai aggiunto gli attributi Sottocategoria e Categoria quando hai originariamente definito il cubo Example Analysis Services usando la procedura guidata per cubi, questi passaggi sarebbero stati eseguiti automaticamente.

Revisione della gestione degli errori e delle proprietà dei membri sconosciuti nella dimensione Product

  1. Passare a Designer dimensioni per la dimensione Product, fare clic sulla scheda Struttura dimensione e quindi selezionare Product nel riquadro Attributi.

    In questo modo è possibile visualizzare e modificare le proprietà della dimensione stessa.

  2. Nella finestra Proprietà esaminare le proprietà UnknownMember e UnknownMemberName .

    Si noti che la proprietà UnknownMember non è abilitata, perché il relativo valore è impostato su None anziché Visible o Hidden e che non viene specificato alcun nome per la proprietà UnknownMemberName .

  3. Nella finestra Proprietà selezionare (personalizzato) nella cella della proprietà ErrorConfiguration e quindi espandere l'insieme delle proprietà ErrorConfiguration .

    L'impostazione della proprietà ErrorConfiguration su (personalizzata) consente di visualizzare le impostazioni di configurazione degli errori predefinite, senza modificare le impostazioni.

  4. Esaminare le proprietà di configurazione della chiave e dell'errore di chiave Null, ma non apportare modifiche.

    Si noti che, per impostazione predefinita, le chiavi null vengono convertite nel membro sconosciuto e l'errore di elaborazione associato a tale conversione viene ignorato.

    L'immagine seguente mostra le impostazioni delle proprietà per l'insieme delle proprietà ErrorConfiguration .

    Raccolta di proprietà di configurazione degli errori

  5. Fare clic sulla scheda Browser , verificare che l'opzione Product Model Lines sia selezionata nell'elenco Gerarchia e quindi espandere All Products.

    Note i cinque membri del livello Linea di Produzione.

  6. Espandi Componenti, quindi espandi il membro senza etichetta del livello Nome modello.

    Questo livello contiene i componenti dell'assembly utilizzati per la compilazione di altri componenti, a partire dal prodotto Race regolabile , come illustrato nell'immagine seguente.

    Componenti di assemblaggio usati per costruire altri componenti

Definizione degli attributi dalle tabelle con struttura a fiocco di neve e dalla gerarchia della categoria di prodotto User-Defined

  1. Aprire Progettazione Visualizzazione Origine Dati per la visualizzazione dell'origine dati Adventure Works DW, selezionare Reseller Sales nel riquadro Organizzatore Diagrams e quindi fare clic su Aggiungi/Rimuovi oggetti dal menu Visualizzazione Origine Dati di SQL Server Data Tools (SSDT).

    Verrà visualizzata la finestra di dialogo Aggiungi/Rimuovi tabelle .

  2. Nell'elenco Oggetti inclusi selezionare DimProduct (dbo) e quindi fare clic su Aggiungi tabelle correlate.

    Vengono aggiunti sia DimProductSubcategory (dbo) che FactProductInventory (dbo). Remove FactProductInventory (dbo) in modo che solo la tabella DimProductSubcategory (dbo) venga aggiunta all'elenco Oggetti inclusi .

  3. Con la tabella DimProductSubcategory (dbo) selezionata per impostazione predefinita come tabella aggiunta più di recente, fare di nuovo clic su Aggiungi tabelle correlate .

    La tabella DimProductCategory (dbo) viene aggiunta all'elenco Oggetti inclusi .

  4. Fare clic su OK.

  5. Scegliere Layout automatico dal menu Formato di SQL Server Data Tools e quindi fare clic su Diagramma.

    Si noti che la tabella DimProductSubcategory (dbo) e la tabella DimProductCategory (dbo) sono collegate tra loro e anche alla tabella ResellerSales tramite la tabella Product .

  6. Passare a Progettazione Dimensioni per la dimensione Product e quindi fare clic sulla scheda Struttura Dimensioni.

  7. Fare clic con il pulsante destro del mouse in un punto qualsiasi del riquadro Vista origine dati e quindi scegliere Mostra tutte le tabelle.

  8. Nel riquadro Vista origine dati individuare la tabella DimProductCategory , fare clic con il pulsante destro del mouse su ProductCategoryKey in tale tabella e quindi scegliere Nuovo attributo da colonna.

  9. Nel riquadro Attributi modificare il nome di questo nuovo attributo in Category.

  10. Nella finestra Proprietà fare clic nel campo proprietà NameColumn e quindi fare clic sul pulsante Sfoglia (...) per aprire la finestra di dialogo Nome Colonna .

  11. Selezionare EnglishProductCategoryName nell'elenco Colonna di origine e quindi fare clic su OK.

  12. Nel riquadro Vista origine dati individuare la tabella DimProductSubcategory , fare clic con il pulsante destro del mouse su ProductSubcategoryKey in tale tabella e quindi scegliere Nuovo attributo da colonna.

  13. Nel riquadro Attributi modificare il nome di questo nuovo attributo in Subcategory.

  14. Nella finestra Proprietà fare clic nel campo proprietà NameColumn e quindi fare clic sul pulsante Sfoglia (...) per aprire la finestra di dialogo Nome colonna .

  15. Selezionare EnglishProductSubcategoryName nell'elenco Colonna di origine e quindi fare clic su OK.

  16. Creare una nuova gerarchia definita dall'utente denominata Categorie di prodotti con i livelli seguenti, in ordine dall'alto verso il basso: Category, Subcategorye Nome prodotto.

  17. Specificare All Products come valore per la proprietà AllMemberName della gerarchia definita dall'utente Product Categories.

Esplorazione delle gerarchie di User-Defined nella dimensione Prodotto

  1. Sulla barra degli strumenti della scheda Struttura dimensionale di Progettazione dimensionale della dimensione Prodotto, fare clic su Elabora.

  2. Fare clic su per compilare e distribuire il progetto, quindi fare clic su Esegui per elaborare la dimensione Product .

  3. Al termine dell'elaborazione, espandere Dimensione di elaborazione 'Product' completata con successo nella finestra di dialogo Progresso del processo, espandere Elaborazione dell'attributo della dimensione 'Product Name' completata e quindi espandere Query SQL 1.

  4. Fare clic sulla query SELECT DISTINCT e quindi su Visualizza dettagli.

    Si noti che una clausola WHERE è stata aggiunta alla clausola SELECT DISTINCT che rimuove i prodotti senza valore nella colonna ProductSubcategoryKey, come illustrato nell'immagine seguente.

    Clausola SELECT DISTINCT che mostra la clausola WHERE

  5. Fare clic su Chiudi tre volte per chiudere tutte le finestre di dialogo di elaborazione.

  6. Fare clic sulla scheda Browser nella Progettazione delle dimensioni per la dimensione Product, poi fai clic su Riconnetti.

  7. Verificare che nell'elenco Gerarchia siano visualizzate linee modello prodotto, espandere All Productse quindi espandere Componenti.

  8. Selezionare Categorie di prodotti nell'elenco Gerarchia , espandere All Productse quindi Componenti.

    Si noti che nessuno dei componenti dell'assembly viene visualizzato.

Per modificare il comportamento indicato nell'attività precedente, si abiliterà la proprietà UnknownMember della dimensione Products, si imposta un valore per la proprietà UnknownMemberName, si imposta la proprietà NullProcessing per gli Subcategory attributi e Model Name su UnknownMember, si definirà l'attributo Category come attributo correlato dell'attributo e quindi si definirà l'attributo Product Line come attributo correlato dell'attributo SubcategoryModel Name. Questi passaggi causeranno l'uso da parte di Analysis Services del valore attribuito al nome del membro sconosciuto per ogni prodotto che non ha un valore per la colonna SubcategoryKey, come vedrai nell'attività seguente.

Abilitazione del membro sconosciuto, definizione delle relazioni tra attributi e specifica delle proprietà di elaborazione personalizzate per i valori Null

  1. Fare clic sulla scheda Struttura dimensione nel Designer dimensioni per la dimensione Product e quindi selezionare Product nel riquadro Attributi.

  2. Nella finestra Proprietà modificare la proprietà UnknownMember in Visible e quindi modificare il valore per la proprietà UnknownMemberName in Assembly Components.

    La modifica della proprietà UnknownMember su Visible o Hidden abilita la proprietà UnknownMember per la dimensione.

  3. Fare clic sulla scheda Relazioni tra attributi .

  4. Nel diagramma fare clic con il pulsante destro del mouse sull'attributo Subcategory e quindi scegliere Nuova relazione tra attributi.

  5. Nella finestra di dialogo Crea relazione tra attributil'attributo di origine è Subcategory. Imposta Attributo correlato su Category. Lasciare il tipo di relazione impostato su Flessibile.

  6. Fare clic su OK.

  7. Nel riquadro Attributi selezionare Sottocategoria.

  8. Nella finestra Proprietà espandere la proprietà KeyColumns e quindi espandere la proprietà DimProductSubcategory.ProductSubcategoryKey (Integer).

  9. Modificare la proprietà NullProcessing in UnknownMember.

  10. Nel riquadro Attributi selezionare Nome modello.

  11. Nella finestra Proprietà espandere la proprietà KeyColumns e quindi espandere la proprietà Product.ModelName (WChar).

  12. Modificare la proprietà NullProcessing in UnknownMember.

    A causa di queste modifiche, quando Analysis Services rileva un valore Null per l'attributo o l'attributo SubcategoryModel Name durante l'elaborazione, il valore del membro sconosciuto verrà sostituito come valore della chiave e le gerarchie definite dall'utente verranno costruite correttamente.

Esplorazione di nuovo della dimensione del prodotto

  1. Scegliere Distribuisci Analysis Services Tutorial dal menu Compila.

  2. Al termine della distribuzione, cliccare sulla scheda Browser in Progettazione dimensioni per la dimensione Product e quindi cliccare su Riconnetti.

  3. Verificare che l'opzione Categorie di prodotti sia selezionata nell'elenco Gerarchia e quindi espandere All Products.

    Si noti che i Componenti di assemblaggio vengono visualizzati come un nuovo elemento del livello Categoria.

  4. Espandere il Assembly Components membro del Category livello e quindi espandere il Assembly Components membro del Subcategory livello.

    Si noti che tutti i componenti dell'assembly vengono ora visualizzati a livello di Nome prodotto , come illustrato nell'immagine seguente.

    Livello del Nome Prodotto che mostra i componenti dell'assemblaggio

Lezione successiva

Lezione 5: Definizione delle relazioni tra dimensioni e gruppi di misure