Riferimenti generazione in build dimensioni

I membri della dimensione Essbase che occupano un ramo comune si trovano nella stessa generazione. Generazione 1 è il nome della dimensione e ogni livello inferiore incrementa il numero di generazione. Quando si creano dimensioni da un'origine dall'alto verso il basso, utilizzare il metodo di generazione Generazione. Se i dati di origine contengono valori nulli, utilizzare il metodo di generazione Generazione di processi nulli.

Le origini dei dati dall'alto verso il basso sono organizzate da sinistra a destra dal livello più alto al livello più basso. Ogni record inizia con le informazioni più generali e passa alle informazioni più specifiche. Il nome del nuovo membro si trova alla fine del record. Quando si utilizza un'origine dati dall'alto verso il basso, utilizzare il metodo di generazione dei riferimenti di generazione. Nel file delle regole specificare il numero di generazione e il tipo di campo di ciascun campo dell'origine dei dati.

In Essbase i membri vengono numerati all'interno di una dimensione in base alla posizione gerarchica del membro all'interno della dimensione. I numeri sono denominati riferimenti di generazione. Una dimensione è sempre generazione 1. Tutti i membri dello stesso ramo di una dimensione sono denominati generazione. Le generazioni sono numerate dall'alto verso il basso in base alla loro posizione rispetto alla dimensione; cioè, rispetto alla dimensione 1.

Ad esempio, come illustrato di seguito, la dimensione Prodotto è generazione 1. Il prodotto ha un membro 100, ovvero la generazione 2. 100 ha membri, ad esempio 100-10, che sono generazione 3. Per utilizzare il metodo di generazione dei riferimenti, specificare il numero di riferimento di generazione nel file delle regole.

Figura 14-1 Generazioni


Questa immagine illustra i numeri di riferimento di generazione, come descritto nel testo che precede l'immagine.

Si supponga di disporre di un cubo con una dimensione Prodotto. Le dimensioni sono la generazione 1, quindi il prodotto è la generazione 1. Si supponga di voler utilizzare il seguente file di dati dall'alto verso il basso, delimitato da tabulazioni, per creare la dimensione Prodotto:

500	500-10	500-10-10
500	500-10	500-10-20
500	500-20	500-20-12
500	500-20	500-20-15
500	500-20	500-20-20

In genere, è possibile eseguire una generazione di dimensioni utilizzando il metodo di generazione Generazione quando i membri di livello inferiore vengono ordinati in sequenza da destra a sinistra come mostrato sopra.

È possibile utilizzare la regola seguente per creare le dimensioni utilizzando i riferimenti di generazione. La regola specifica il numero di generazione per ogni campo nell'origine dei dati. È inoltre necessario selezionare il metodo di generazione Generazione nelle proprietà della dimensione della regola, a meno che i dati di origine non contengano valori nulli (per questo caso d'uso, vedere Gestione dei campi vuoti, di seguito).

File di regole per la generazione della build. Campo 1: Prodotto, categoria denominata Generazione 2. Campo 2: Prodotto, SKU prodotto denominata generazione 3. Campo 3: Prodotto, Promozioni denominate Generazione 4

Essbase crea la gerarchia seguente dall'origine dei dati e della regola:

Figura 14-2 Riferimenti di generazione


Questa immagine mostra i nuovi membri creati durante la generazione della build.

Gestione dei campi vuoti

Quando si creano dimensioni dai riferimenti di generazione o livello nei dati di origine, è possibile scegliere di elaborare valori nulli. L'elaborazione nulla specifica le azioni che Essbase deve eseguire quando rileva campi vuoti nell'origine dei dati.

Nota

Le opzioni di elaborazione nulle sono disponibili solo per le regole di generazione delle dimensioni normali (non basate su indice).

Se l'elaborazione nulla non è abilitata, Essbase rifiuta tutti i record con valori nulli e scrive un errore nel log degli errori.

Per abilitare l'elaborazione nulla, selezionare uno dei metodi di generazione di elaborazione nulli nelle proprietà della dimensione quando si crea la nuova regola di generazione della dimensione: generazione processo nulla o livello processo nullo.


Metodi di generazione di elaborazione nulli nelle proprietà delle dimensioni per una nuova regola

Se si utilizza il metodo di generazione Process generation null, viene indicato a Essbase di aspettarsi alcuni valori nulli durante l'elaborazione dei riferimenti di generazione nei dati di origine, il che consente di evitare errori.

Esempio

Per questo esempio di generazione della dimensione, si supponga di voler aggiungere una gerarchia incompleta/asimmetrica come quella riportata di seguito in una nuova dimensione Canale in Sample Basic.


La dimensione canale è generazione 1. Una gerarchia "Tutti i canali" è la generazione 2. La Generazione 3 include i membri "Indiretti" e "Diretti". Indiretto con ID canale come figli alla generazione 4. Direct ha membri della sede "Outlet", "Mall" e "Kiosk" alla generazione 4, seguiti da ID canale alla generazione 5. Gli ID canale indiretto sono alla generazione 4, mentre gli ID canale diretto sono alla generazione 5, rendendo questa gerarchia sbilanciata.

L'origine dati è dall'alto verso il basso, il che significa che i livelli superiori (vicini al membro della dimensione superiore) vengono visualizzati per primi in ogni record. Pertanto, ha senso utilizzare un metodo di generazione dei riferimenti. Tuttavia, saranno necessarie istruzioni di gestione nulle. I primi tre record di dati di origine contengono campi nulli, poiché non esistono dati di posizione per i canali indiretti.

"All Channels",Indirect,,Channel-04
"All Channels",Indirect,,Channel-07
"All Channels",Indirect,,Channel-24
"All Channels",Direct,Outlet,Channel-21
"All Channels",Direct,Mall,Channel-29
"All Channels",Direct,Kiosk,Channel-31

È possibile creare una regola per creare le dimensioni ed evitare errori relativi a valori nulli utilizzando il metodo di generazione Generazione processo nulla.

Per creare una regola per questo esempio,

  1. Importare/creare il cubo di base di esempio utilizzando la cartella di lavoro dell'applicazione disponibile nella gallery nel catalogo file del server Essbase.

  2. Creare un file di dati delimitato da virgole come il seguente, denominarlo genchannel.txt e caricarlo nella directory del cubo Sample Basic.

    "All Channels",Indirect,,Channel-04
    "All Channels",Indirect,,Channel-07
    "All Channels",Indirect,,Channel-24
    "All Channels",Direct,Outlet,Channel-21
    "All Channels",Direct,Mall,Channel-29
    "All Channels",Direct,Kiosk,Channel-31
    
  3. Nella pagina Applicazioni aprire l'applicazione, quindi aprire il database (cubo).

  4. Selezionare la scheda Script, quindi fare clic su Regole.


    La scheda Script è selezionata e la casella Regole è evidenziata nell'interfaccia Web Essbase.

  5. Fare clic su Crea e scegliere Crea dimensione (normale).


    Nella finestra di dialogo Script di database, viene premuto il pulsante Crea e viene selezionata l'opzione Generazione dimensione (normale)

  6. Nella finestra di dialogo Nuova regola,

    1. Immettere un nome di regola, ad esempio genchannel.

    2. Per Tipo di origine selezionare File, fare clic su Catalogo e passare a genchannel.txt.

      Quando si fa clic su Catalogo, si prevede che il file si trovi nella directory del cubo nel server Essbase per impostazione predefinita, pertanto è necessario averlo già caricato utilizzando la sezione File dell'interfaccia Web Essbase. Se il file si trova sul computer client, fare clic su Browser file per individuare il file.

    3. Lasciare i campi Numero record intestazione e Numero record build dimensione come 0. I record intestazione non sono utili per le build dimensione.

    4. Fare clic su Procedi.

    5. La regola di generazione delle dimensioni viene aperta con campi non definiti e vengono visualizzati in anteprima i dati (dal file di testo) che popolano la griglia sotto i campi.
      Immagine dell'editor regole di generazione delle dimensioni per la nuova regola "genchannel", con campi non definiti da 1 a 4 come colonne di metadati in attesa di essere compilate. In ogni campo sono presenti i valori dei dati importati dal file di dati di origine.

  7. Poiché si tratta di una nuova regola, non sono ancora associate dimensioni.

    1. Fare clic su Dimensioni.
      Pulsante Dimensioni nell'editor regole

    2. Digitare il nuovo nome dimensione Canale e fare clic su Aggiungi.
  8. Ora è necessario definire il metodo di generazione e controllare altre istruzioni operative di generazione delle dimensioni. Fare clic sul collegamento Canale per modificare le proprietà della dimensione.

  9. Modificare Metodo di generazione in Generazione processo nulla.


    Immagine della finestra Modifica dimensioni nell'editor regole di generazione dimensione, con generazione processo nulla selezionata.

    Fare clic su OK.

  10. Fare clic sul selettore Dimensione nel campo 1 e selezionare Canale.


    Immagine del campo 1 nell'editor regole di generazione dimensione con la dimensione Canale selezionata.

  11. Modificare il selettore Tipo del campo 1 in Generazione.

  12. Aumentare la generazione a 2, poiché il membro della gerarchia Tutti i canali si trova al livello 2. Il membro generazione 1 è sempre il nome della dimensione; in questo caso, Canale.

  13. Nei campi da 2 a 4 è ora necessario selezionare Canale come dimensione. Modificare i selettori Tipo in Generazione e contrassegnare i numeri di generazione come 3 per il campo 2, 4 per il campo 3 e 5 per il campo 4.


    Questa immagine mostra una regola che crea una dimensione canale con una gerarchia incompleta utilizzando il metodo di generazione dei nulli di generazione del processo. Il campo 1 è definito come canale, generazione, 2 e contiene tutti i canali. Il campo 2 è definito come Canale, Generazione, 3 e contiene Indiretto per tre record e Diretto per tre record. Il campo 3 è definito come canale, generazione, 4 e contiene tre campi nulli e tre campi ubicazione (outlet, centro commerciale e chiosco). Il campo 4 è definito come Canale, Generazione, 5 e contiene gli ID canale.

  14. Verificare la regola, quindi salvare e chiudere. In caso di errori, vedere Requisiti per i file di regole di generazione dimensioni validi.

  15. Eseguire il job di generazione dimensioni.

  16. Visualizzare la struttura per confermare l'aggiunta della dimensione Canale e della gerarchia prevista dei membri.

Flusso di elaborazione nullo per le build dimensione basate su generazione

Se l'elaborazione nulla è abilitata, Essbase elabora la generazione di valori nulli nei modi riportati di seguito.

  • Campo Generazione nulla: se il valore nullo si verifica quando Essbase prevede un campo Generazione, Essbase promuove il campo Generazione successiva per sostituire il campo mancante.

    Esempio

    La generazione della dimensione promuove l'ID canale nella generazione 4 anziché nella generazione 5, perché la generazione 4 contiene un valore nullo.


    Il campo 1 è Canale, Generazione 2 contenente tutti i canali. Il campo 2 è Canale, Generazione 3 contenente Indiretto. Il campo 3 è Canale, Generazione 4 contenente un valore nullo. Il campo 4 è Canale, Generazione 5 contenente un ID canale.

  • Campo nullo prima del campo secondario: se un valore nullo si verifica direttamente prima di un campo secondario, Essbase ignora il campo secondario. (I tipi di campo secondari sono alias, proprietà, formula, generazione di duplicati, alias di generazione duplicati, nome valuta, categoria valuta, padre attributo, ADU e nome di una dimensione attributo).

    Esempio

    La generazione della dimensione ignora l'alias nel campo 4 perché la generazione 4 contiene un valore nullo e promuove l'ID canale nella generazione 4 anziché nella generazione 5.


    Il campo 1 è Canale, Generazione 2 contenente tutti i canali. Il campo 2 è Canale, Generazione 3 contenente Indiretto. Il campo 3 è Canale, Generazione 4 contenente un valore nullo. Il campo 4 è Canale, Alias, contenente il catalogo. Il campo 5 è Canale, Generazione 5 contenente un ID canale.

  • Campo secondario nullo: se il valore nullo si verifica quando Essbase prevede un campo secondario, Essbase ignora il campo nullo secondario e continua il caricamento (lo stesso comportamento del metodo di generazione Generazione).

    Esempio

    La generazione della dimensione ignora l'alias nel campo 4, poiché tale campo contiene un valore nullo. Il membro Outlet viene aggiunto al profilo senza alias.


    Il campo 1 è Canale, Generazione 2 contenente tutti i canali. Il campo 2 è Canale, Generazione 3 contenente Diretto. Il campo 3 è Canale, Generazione 4 contenente Outlet. Il campo 4 è Canale, Alias, contenente un valore nullo. Il campo 5 è Canale, Generazione 5 contenente un ID canale.