Calcoli
Un calcolo è un'espressione o uno script MDX utilizzato per definire un membro calcolato, un set denominato o un'assegnazione di ambito in un cubo di MicrosoftSQL ServerAnalysis Services. I calcoli consentono di aggiungere oggetti definiti non dai dati del cubo, ma da espressioni che possono fare riferimento ad altre parti del cubo, ad altri cubi o persino a informazioni esterne al database di Analysis Services. I calcoli consentono di estendere le funzionalità di un cubo, aggiungendo flessibilità e potenza alle applicazioni di Business Intelligence. Per ulteriori informazioni sulla creazione di script per i calcoli, vedere Introduzione alla creazione di script MDX in Microsoft SQL Server 2005. Per ulteriori informazioni su problemi di prestazioni legati a calcoli e query MDX, vedere la Guida alle prestazioni di SQL Server 2005 Analysis Services.
Membri calcolati
Un membro calcolato è un membro il cui valore viene calcolato in fase di esecuzione utilizzando un'espressione MDX (Multidimensional Expressions) specificata dall'utente durante la definizione del membro stesso. Un membro calcolato è disponibile per le applicazioni di Business Intelligence come qualsiasi altro membro. I membri calcolati non aumentano le dimensioni del cubo dato che solo le definizioni vengono archiviate nel cubo, mentre il calcolo dei valori, necessario per rispondere alle query, viene eseguito in memoria.
È possibile definire membri calcolati per qualsiasi dimensione, inclusa la dimensione delle misure. I membri calcolati creati per la dimensione Measures vengono denominati "misure calcolate".
Sebbene i membri calcolati siano generalmente basati su dati già esistenti nel cubo, è possibile creare espressioni complesse combinando questi dati con operatori aritmetici, numeri e funzioni. È inoltre possibile utilizzare le funzioni MDX, ad esempio LookupCube, per accedere ai dati degli altri cubi nel database di Analysis Services. Analysis Services include librerie di funzioni di Visual Studio standardizzate ed è possibile utilizzare stored procedure per recuperare dati da origini diverse dal database corrente di Analysis Services. Per ulteriori informazioni sulle stored procedure, vedere Definizione delle stored procedure.
Si supponga, ad esempio, che i dirigenti di una società di spedizioni desiderino determinare i tipi di merci più vantaggiosi da trasportare in base al profitto per unità di volume. A tale scopo, utilizzano un cubo Shipments contenente le dimensioni Cargo, Fleet e Time e le misure Price_to_Ship, Cost_to_Ship e Volume_in_Cubic_Meters. Il cubo, tuttavia, non contiene una misura per la redditività. In tal caso, è possibile creare nel cubo un membro calcolato come misura denominata Profit_per_Cubic_Meter combinando le misure esistenti nell'espressione seguente:
([Measures].[Price_to_Ship] - [Measures].[Cost_to_Ship]) /
[Measures].[Volume_in_Cubic_Meters]
Dopo aver creato il membro calcolato, la misura Profit_per_Cubic_Meter verrà visualizzata insieme alle altre alla successiva esplorazione del cubo Shipments.
Per creare membri calcolati, utilizzare la scheda Calcoli in Progettazione cubi. Per ulteriori informazioni, vedere Creazione di membri calcolati.
Set denominati
Un set denominato è un'istruzione CREATE SET MDX che restituisce un set. L'espressione MDX viene salvata nella definizione di un cubo in MicrosoftSQL ServerAnalysis Services. Un set denominato viene creato per il riutilizzo in query MDX e consente agli utenti aziendali di semplificare le query e utilizzare un nome di set anziché un'espressione set per le espressioni set complesse utilizzate di frequente. Argomento correlato: Creazione di set denominati
Comandi script
Un comando script è uno script MDX incluso nella definizione del cubo. I comandi script consentono di eseguire quasi tutte le operazioni supportate da MDX in un cubo, ad esempio la definizione dell'ambito di un calcolo da applicare solo a parte del cubo. In SQL ServerAnalysis Services è possibile applicare gli script MDX all'intero cubo o a sezioni specifiche del cubo, in punti specifici nell'esecuzione dello script. L'istruzione CALCULATE, che è il comando script predefinito, popola le celle del cubo con dati aggregati in base all'ambito predefinito.
L'ambito predefinito è l'intero cubo, ma è possibile definire un ambito più limitato, noto come sottocubo, e quindi applicare uno script MDX solo a tale area del cubo. L'istruzione SCOPE definisce l'ambito di tutte le successive espressioni e istruzioni MDX nello script di calcolo fino a quando l'ambito non viene terminato o ridefinito. Viene quindi utilizzata l'istruzione THIS per applicare un'espressione MDX all'ambito corrente. È possibile utilizzare l'istruzione BACK_COLOR per applicare alle celle nell'ambito corrente un colore di sfondo che agevoli le operazioni di debug.
È ad esempio possibile utilizzare un comando script per allocare obiettivi di vendita ai dipendenti, suddivisi per periodo di tempo e territorio di vendita, in base ai valori ponderati delle vendite in un periodo di tempo precedente.