Quando si usano i dati in Power Pivot, di tanto in tanto potrebbe essere necessario aggiornare i dati dall'origine, ricalcolare le formule create in colonne calcolate o verificare che i dati presentati in una tabella pivot siano aggiornati.
Questo argomento illustra la differenza tra l'aggiornamento dei dati e il ricalcolo dei dati, fornisce una panoramica di come viene attivato il ricalcolo e descrive le opzioni per controllare il ricalcolo.
Confronto tra aggiornamento dati e ricalcolo
Power Pivot usa sia l'aggiornamento dei dati che il ricalcolo:
Aggiornare i dati significa ottenere dati aggiornati da origini dati esterne. Power Pivot non rileva automaticamente le modifiche nelle origini dati esterne, ma i dati possono essere aggiornati manualmente dalla finestra Power Pivot o automaticamente se la cartella di lavoro è condivisa in SharePoint.
Ricalcolo significa aggiornare tutte le colonne, le tabelle, i grafici e le tabelle pivot della cartella di lavoro che contengono formule. Poiché il ricalcolo di una formula comporta un costo per le prestazioni, è importante comprendere le dipendenze associate a ogni calcolo.
Importante: Non è consigliabile salvare o pubblicare la cartella di lavoro finché le formule in essa contenute non vengono ricalcolate.
Ricalcolo manuale o automatico
Per impostazione predefinita, Power Pivot ricalcola automaticamente in base alle esigenze e ottimizza il tempo necessario per l'elaborazione. Anche se il ricalcolo può richiedere tempo, è un'attività importante, perché durante il ricalcolo le dipendenze delle colonne sono selezionate e si riceverà una notifica se una colonna è cambiata, se i dati non sono validi o se in una formula che funzionava veniva visualizzato un errore. Tuttavia, è possibile scegliere di annullare la convalida e aggiornare solo manualmente i calcoli, in particolare se si usano formule complesse o set di dati molto grandi e si vuole controllare l'intervallo degli aggiornamenti.
Sia la modalità manuale che la modalità automatica presentano vantaggi; tuttavia, è consigliabile usare la modalità di ricalcolo automatico. Questa modalità mantiene sincronizzati i metadati Power Pivot e impedisce i problemi causati dall'eliminazione dei dati, dalle modifiche dei nomi o dei tipi di dati o dalle dipendenze mancanti.
Uso del ricalcolo automatico
Quando si usa la modalità di ricalcolo automatico, le modifiche ai dati che potrebbero causare la modifica del risultato di una formula attiveranno il ricalcolo dell'intera colonna che contiene una formula. Le modifiche seguenti richiedono sempre il ricalcolo delle formule:
-
I valori di un'origine dati esterna sono stati aggiornati.
-
La definizione della formula è cambiata.
-
I nomi delle tabelle o delle colonne a cui viene fatto riferimento in una formula sono stati modificati.
-
Le relazioni tra tabelle sono state aggiunte, modificate o eliminate.
-
Sono state aggiunte nuove misure o colonne calcolate.
-
Sono state apportate modifiche ad altre formule all'interno della cartella di lavoro, quindi le colonne o i calcoli che dipendono da tale calcolo devono essere aggiornati.
-
Le righe sono state inserite o eliminate.
-
È stato applicato un filtro che richiede l'esecuzione di una query per aggiornare il set di dati. Il filtro potrebbe essere stato applicato in una formula o come parte di una tabella pivot o di un grafico pivot.
Uso del ricalcolo manuale
È possibile usare il ricalcolo manuale per evitare di sostenere costi per l'elaborazione dei risultati delle formule fino a quando non si è pronti. La modalità manuale è particolarmente utile in queste situazioni:
-
Si sta progettando una formula usando un modello e si vogliono modificare i nomi delle colonne e delle tabelle usate nella formula prima di convalidarla.
-
Si sa che alcuni dati nella cartella di lavoro sono stati modificati, ma si sta lavorando con una colonna diversa che non è stata modificata, quindi si vuole posticipare un ricalcolo.
-
Si sta lavorando in una cartella di lavoro con molte dipendenze e si vuole rimandare il ricalcolo fino a verificare che siano state apportate tutte le modifiche necessarie.
Tenere presente che, purché la cartella di lavoro sia impostata sulla modalità di calcolo manuale, Power Pivot in Excel non esegue alcuna convalida o controllo delle formule, con i risultati seguenti:
-
Tutte le nuove formule aggiunte alla cartella di lavoro verranno contrassegnate come contenenti un errore.
-
Nelle nuove colonne calcolate non verranno visualizzati risultati.
Per configurare la cartella di lavoro per il ricalcolo manuale
-
In Power Pivotfare clic su Progettacalcoli>> opzioni di calcolo> modalità di calcolo manuale.
-
Per ricalcolare tutte le tabelle, fare clic su Opzioni di calcolo> Calcola ora.
Le formule nella cartella di lavoro vengono controllate e le tabelle vengono aggiornate con eventuali risultati. A seconda della quantità di dati e del numero di calcoli, la cartella di lavoro potrebbe smettere di rispondere per un certo periodo di tempo.
Importante: Prima di pubblicare la cartella di lavoro, è consigliabile ripristinare la modalità di calcolo automatica. In questo modo si eviteranno problemi durante la progettazione delle formule.
Risoluzione dei problemi relativi al ricalcolo
Dipendenze
Quando una colonna dipende da un'altra colonna e il contenuto dell'altra colonna cambia in qualsiasi modo, potrebbe essere necessario ricalcolare tutte le colonne correlate. Ogni volta che vengono apportate modifiche alla cartella di lavoro di Power Pivot, Power Pivot in Excel esegue un'analisi dei dati di Power Pivot esistenti per determinare se è necessario eseguire il ricalcolo ed esegue l'aggiornamento nel modo più efficiente possibile.
Si supponga, ad esempio, di avere una tabella, Sales, correlata alle tabelle Product e ProductCategory; e le formule nella tabella Sales dipendono da entrambe le altre tabelle. Qualsiasi modifica apportata alle tabelle Product o ProductCategory causerà il ricalcolo di tutte le colonne calcolate nella tabella Sales . Questo è utile se si considera che potrebbero essere presenti formule che riportano le vendite per categoria o per prodotto. Pertanto, per essere certi che i risultati siano corretti; le formule basate sui dati devono essere ricalcolate.
Power Pivot esegue sempre un ricalcolo completo per una tabella, perché un ricalcolo completo è più efficiente del controllo dei valori modificati. Le modifiche che attivano il ricalcolo possono includere modifiche importanti come l'eliminazione di una colonna, la modifica del tipo di dati numerici di una colonna o l'aggiunta di una nuova colonna. Tuttavia, modifiche apparentemente banali, ad esempio la modifica del nome di una colonna, potrebbero attivare anche il ricalcolo. Il motivo è che i nomi delle colonne vengono usati come identificatori nelle formule.
In alcuni casi, Power Pivot può determinare che le colonne possono essere escluse dal ricalcolo. Ad esempio, se si ha una formula che cerca un valore come [Colore prodotto] dalla tabella Prodotti e la colonna modificata è [Quantità] nella tabella Vendite , non è necessario ricalcolare la formula anche se le tabelle Vendite e Prodotti sono correlate. Tuttavia, se sono presenti formule che si basano su Vendite[Quantità], il ricalcolo è obbligatorio.
Sequenza di ricalcolo per le colonne dipendenti
Le dipendenze vengono calcolate prima di qualsiasi ricalcolo. Se sono presenti più colonne che dipendono l'una dall'altra, Power Pivot segue la sequenza delle dipendenze. In questo modo, le colonne vengono elaborate nell'ordine corretto alla velocità massima.
Transazioni
Le operazioni di ricalcolo o aggiornamento dei dati vengono eseguite come transazione. Questo significa che se una qualsiasi parte dell'operazione di aggiornamento non riesce, viene eseguito il rollback delle operazioni rimanenti. Questo per garantire che i dati non vengano lasciati in uno stato parzialmente elaborato. Non è possibile gestire le transazioni come in un database relazionale o creare checkpoint.
Ricalcolo delle funzioni volatili
Alcune funzioni, ad esempio ADESSO, CASUALE o OGGI, non hanno valori fissi. Per evitare problemi di prestazioni, l'esecuzione di una query o di un filtro non comporta in genere la rivalutazione di tali funzioni se vengono usate in una colonna calcolata. I risultati di queste funzioni vengono ricalcolati solo quando viene ricalcolata l'intera colonna. Tra queste situazioni è incluso l'aggiornamento da un'origine dati esterna o la modifica manuale di dati che comporta la rivalutazione di formule contenenti queste funzioni. Tuttavia, le funzioni volatili come NOW, RAND o TODAY verranno sempre ricalcolate se la funzione viene usata nella definizione di un campo calcolato.