Esportazione in Microsoft Excel (Generatore report 2.0)
L'estensione per il rendering Excel consente di eseguire il rendering di un report compatibile con Microsoft Excel 97 e versioni successive. Nel report che viene esportato in un foglio di calcolo di Excel vengono tuttavia rimossi alcuni elementi di layout e della progettazione originale come descritto in questo argomento. Il formato dei report di cui viene eseguito il rendering in Microsoft Excel è Binary Interchange File Format (BIFF). Il tipo di contenuto dei file generati da tale renderer è application/vnd.ms-excel, mentre l'estensione è xls.
Nota sulla protezione |
---|
Quando si definisce un parametro di tipo String, viene visualizzata una casella di testo che può accettare qualsiasi valore. Se un parametro di report non è correlato a un parametro di query e i valori del parametro sono inclusi nel report, un utente potrebbe digitare nel valore del parametro un URL, uno script o la sintassi di un'espressione ed eseguire il rendering del report in formato Excel. Se il report viene in seguito visualizzato da un altro utente che fa clic sul contenuto dei parametri di cui è stato eseguito il rendering, è possibile che venga inavvertitamente eseguito il collegamento o lo script dannoso. |
Per ridurre il rischio di eseguire inavvertitamente script dannosi, aprire solo i report sottoposti a rendering provenienti da fonti attendibili. Per ulteriori informazioni sulla sicurezza dei report, vedere sicurezza di report e risorse.
Elementi del report in Excel
Il rendering di rettangoli, di sottoreport, del corpo del report e delle aree dati viene eseguito come intervallo di celle di Excel. Il rendering di caselle di testo, immagini e grafici deve essere eseguito all'interno di un'unica cella di Excel, che potrebbe risultare unita a seconda del layout della restante parte del report.
Immagini, grafici e linee vengono posizionati all'interno di un'unica cella di Excel, ma vengono inseriti sopra la griglia di celle. Il rendering delle linee viene eseguito come bordi della cella.
Paginazione
Questo renderer supporta solo interruzioni di pagina logiche. Per ogni interruzione di pagina logica definita in modo esplicito viene creata una nuova scheda nel foglio di lavoro di Excel.
Assegnazione del nome alla pagina
Se la cartella di lavoro contiene un solo foglio di lavoro, esclusa la mappa documento, il nome del foglio di lavoro coincide con il nome del report.
Se la cartella di lavoro contiene più fogli di lavoro, esclusa la mappa documento, ai fogli di lavoro viene assegnato il nome FoglioX, dove X corrisponde al numero del foglio della cartella di lavoro. Ad esempio, il quinto foglio di lavoro viene denominato Foglio5.
Ridimensionamento della pagina
L'estensione per il rendering Excel utilizza le impostazioni relative all'altezza e alla larghezza della pagina per determinare l'impostazione del foglio da definire nel foglio di lavoro di Excel. In Excel viene eseguito il tentativo di abbinare le impostazioni delle proprietà PageHeight e PageWidth a uno dei formati carta più comuni.
Se non viene trovata alcuna corrispondenza, vengono utilizzate le dimensioni di pagina predefinite per la stampante. Se la larghezza della pagina è inferiore all'altezza, l'orientamento verrà impostato su Verticale. In caso contrario, verrà impostato su Orizzontale.
Proprietà del documento
Il renderer di Excel scrive i metadati seguenti nel file di Excel.
Proprietà degli elementi del report |
Descrizione |
---|---|
Created |
Data e ora di esecuzione del report espresse come valore data/ora ISO. |
Author |
Report.Author |
Descrizione |
Report.Description |
LastSaved |
Data e ora di esecuzione del report espresse come valore data/ora ISO. |
Intestazioni di pagina e piè di pagina
Il rendering dell'intestazione di pagina può essere eseguito in due diversi modi a seconda dell'impostazione SimplePageHeaders delle informazioni sul dispositivo, ovvero sopra la griglia di celle di ogni foglio di lavoro oppure nell'effettiva sezione di intestazione del foglio di lavoro di Excel. Per impostazione predefinita, il rendering dell'intestazione viene eseguito nella griglia di celle del foglio di lavoro di Excel.
Il rendering del piè di pagina viene sempre eseguito nella sezione effettiva del piè di pagina di foglio di lavoro di Excel, indipendentemente dal valore dell'impostazione SimplePageHeaders.
Nelle sezioni di intestazione e piè di pagina di Excel sono supportati al massimo 256 caratteri, incluso il markup. Se questo limite viene superato, il renderer di Excel rimuove i caratteri di markup a partire dalla fine della stringa dell'intestazione e/o del piè di pagina per ridurre il numero di caratteri totali. Se la lunghezza supera il limite massimo anche dopo l'eliminazione di tutti i caratteri di markup, la stringa verrà troncata a partire da destra..
Impostazioni SimplePageHeader
Per impostazione predefinita, il valore dell'impostazione SimplePageHeaders delle informazioni sul dispositivo è False. Il rendering delle intestazioni di pagina viene pertanto eseguito come righe del report sulla superficie del foglio di lavoro di Excel. Le righe del foglio di lavoro che contengono le intestazioni vengono bloccate. È possibile bloccare o sbloccare il riquadro in Excel. Se l'opzione Stampa titoli è selezionata, le intestazioni vengono automaticamente impostate per la stampa su ogni pagina del foglio di lavoro.
Se l'opzione Stampa titoli è selezionata nella scheda Layout di pagina di Excel, l'intestazione di pagina viene ripetuta all'inizio di ogni foglio di lavoro della cartella di lavoro, ad eccezione della copertina della mappa documento. Se l'opzione Stampa sulla prima pagina o Stampa sull'ultima pagina non è selezionata nelle finestre di dialogo Proprietà intestazione report o Proprietà piè di pagina report, l'intestazione non verrà aggiunta alla prima o all'ultima pagina rispettivamente.
Il rendering dei piè di pagina viene eseguito nella sezione del piè di pagina di Excel.
A causa delle limitazioni di Excel, le caselle di testo sono l'unico elemento di report di cui è possibile eseguire il rendering nella sezione dell'intestazione o del piè di pagina di Excel.
Interattività
Alcuni elementi interattivi sono supportati in Excel. Di seguito è riportata una descrizione di comportamenti specifici.
Elementi visualizzati e nascosti
In Microsoft Excel sono previste limitazioni in relazione alla modalità di gestione degli elementi del report visualizzati e nascosti in seguito all'esportazione. Il rendering di gruppi, righe e colonne contenenti elementi del report attivabili e disattivabili viene eseguito come strutture di Excel. In Excel vengono create strutture per espandere e comprimere righe e colonne nell'intera riga o colonna. È pertanto possibile che vengano compressi anche elementi del report che non devono esserlo. Si possono inoltre verificare problemi con i simboli di struttura di Excel che possono determinare la sovrapposizione di strutture. Per risolvere questi problemi, quando si utilizza l'estensione per il rendering Excel vengono applicate le seguenti regole per la creazione di strutture:
L'elemento di report presente nell'angolo superiore sinistro che può essere attivato/disattivato continuerà a essere attivabile/disattivabile in Excel. Gli elementi del report che possono essere attivati/disattivati e che condividono spazio verticale o orizzontale con l'elemento di report attivabile/disattivabile nell'angolo superiore sinistro non possono essere attivati/disattivati in Excel.
Per stabilire se un'area dati sarà comprimibile in base alle righe o alle colonne, vengono determinate la posizione dell'elemento di report che controlla l'attivazione o la disattivazione e la posizione dell'elemento di report che viene attivato/disattivato. Se l'elemento che controlla l'attivazione o la disattivazione è presente prima dell'elemento da attivare/disattivare, l'elemento sarà comprimibile in base alle righe. In caso contrario, l'elemento sarà comprimibile in base alle colonne. Se l'elemento che controlla l'attivazione o la disattivazione viene visualizzato accanto e sopra l'area da attivare/disattivare in modo uniforme, il rendering dell'elemento viene eseguito con la riga comprimibile in base alle righe.
Per determinare la posizione dei subtotali nel report di cui si esegue il rendering, l'estensione per il rendering esamina la prima istanza di un membro dinamico. Se sopra tale membro è presente un membro statico di pari livello, si presuppone che il membro dinamico corrisponda ai subtotali. Vengono impostate strutture per indicare che si tratta di dati di riepilogo. In assenza di elementi di pari livello statici di un membro dinamico, la prima istanza dell'istanza corrisponde al subtotale.
A causa di una limitazione di Excel, le strutture possono presentare solo fino a 7 livelli di nidificazione.
Mappa documento
Se nel report sono presenti eventuali etichette della mappa documento, viene eseguito il rendering di una mappa documento. Il rendering della mappa documento viene eseguito come foglio di lavoro di copertina di Excel inserito come prima scheda della cartella di lavoro. Al foglio di lavoro viene assegnato il nome Mappa documento.
Il testo visualizzato nella mappa documento viene determinato dalla proprietà DocumentMapLabel dell'elemento di report o del gruppo. Le etichette della mappa documento sono elencate nell'ordine in cui sono inserite nel report, a partire dalla prima riga della prima colonna. In ogni cella dell'etichetta della mappa documento sono presenti rientri il cui numero corrisponde a quello dei livelli di profondità con cui viene visualizzata nel report. Ogni livello di rientro viene rappresentato posizionando l'etichetta in una colonna successiva. Excel supporta fino a 256 livelli di nidificazione della struttura.
Il rendering della struttura della mappa documento viene eseguito come struttura di Excel comprimibile. Tale struttura corrisponde alla struttura nidificata della mappa documento. Lo stato di espansione o compressione della struttura inizia a partire dal secondo livello.
Il nodo radice della mappa corrisponde al nome del report, ovvero <nomereport>.rdl, e non è interattivo. Il tipo di carattere dei collegamenti alla mappa documento è Arial, 10pt.
Collegamenti drill-through
Il rendering dei collegamenti drill-through visualizzati nelle caselle di testo viene eseguito come collegamenti ipertestuali di Excel nella cella in cui viene eseguito il rendering del testo. Il rendering dei collegamenti drill-through per immagini e grafici viene eseguito come collegamenti ipertestuali di Excel nell'immagine durante il rendering stesso. Quando si fa clic su un collegamento drill-through, viene aperto il browser predefinito del client e si passa alla visualizzazione HTML della destinazione.
Collegamenti ipertestuali
Il rendering dei collegamenti ipertestuali visualizzati nelle caselle di testo viene eseguito come collegamenti ipertestuali di Excel nella cella in cui viene eseguito il rendering del testo. Il rendering dei collegamenti ipertestuali per immagini e grafici viene eseguito come collegamenti ipertestuali di Excel nell'immagine durante il rendering stesso. Quando si fa clic su un collegamento ipertestuale, viene aperto il browser predefinito del client e si passa all'URL di destinazione.
Ordinamento interattivo
L'ordinamento interattivo non è supportato in Excel.
Segnalibri
Il rendering dei collegamenti a segnalibro visualizzati nelle caselle di testo viene eseguito come collegamenti ipertestuali di Excel nella cella in cui viene eseguito il rendering del testo. Il rendering dei collegamenti a segnalibro per immagini e grafici viene eseguito come collegamenti ipertestuali di Excel nell'immagine durante il rendering stesso. Quando si fa clic su un segnalibro, si passa alla cella di Excel in cui viene eseguito il rendering dell'elemento di report con segnalibro.
Rendering dello stile in Excel
Di seguito è riportata una breve descrizione della modalità di rendering degli elementi in Excel.
Tavolozza dei colori
In Excel è supportata una tavolozza contenente un massimo di 56 colori. I primi 56 colori univoci utilizzati nel report vengono definiti in una tavolozza personalizzata. Se nel report vengono utilizzati più di 56 colori, l'estensione per il rendering abbina il colore desiderato a uno dei 56 colori già disponibili nella tavolozza. Per abbinare i colori a quelli già esistenti nella tavolozza, viene utilizzato l'algoritmo di corrispondenza dei colori di Excel.
Limitazioni di Excel
In Excel sono previste limitazioni in relazione ai report esportati dipendenti dalle funzionalità del formato BIFF. Di seguito vengono elencate le limitazioni più importanti:
Il numero massimo di righe di un foglio di lavoro è limitato a 65.536. Se tale limite viene superato, nel renderer viene visualizzato un messaggio di errore.
Il numero massimo di colonne di un foglio di lavoro è limitato a 256. Se tale limite viene superato, nel renderer viene visualizzato un messaggio di errore.
La larghezza massima delle colonne è limitata a 255 caratteri o 1726,5 punti. Nel renderer non viene verificato se la larghezza della colonna sia inferiore a tale limite.
L'altezza massima della riga è pari a 409 punti. Se l'altezza della riga è superiore a 409 punti, il contenuto della riga corrente viene diviso e una parte di esso viene aggiunta alla riga successiva.
Il numero massimo di caratteri in una cella è limitato a 32.767. Se tale limite viene superato, nel renderer viene visualizzato un messaggio di errore.
[!NOTA]
In una cella del foglio di lavoro di Excel vengono visualizzati circa 1000 caratteri. Nella barra della formula è possibile tuttavia modificare tale valore fino a raggiungere il numero massimo di caratteri.
Sebbene in Excel non sia definito un numero massimo di fogli di lavoro, alcuni fattori esterni, ad esempio la memoria e lo spazio su disco, possono comportare l'applicazione di limitazioni.
I valori della casella di testo costituiti da espressioni non vengono convertiti in formule di Excel. Il valore di ogni casella di testo viene valutato durante l'elaborazione del report. L'espressione valutata viene esportata come contenuto di ogni cella di Excel.
Se le celle sono unite, la funzionalità di ritorno a capo automatico non funziona correttamente. Se in una riga in cui il rendering di una casella di testo viene eseguito con la proprietà AutoSize sono presenti celle unite, il ridimensionamento automatico non funzionerà.
Le immagini di sfondo per gli elementi del report vengono ignorate poiché in Excel non sono supportate immagini di sfondo per le singole celle.
Il rendering delle caselle di testo viene eseguito all'interno di una cella di Excel. Le dimensioni e il tipo di carattere, gli effetti e lo stile del carattere costituiscono la sola formattazione supportata nel testo singolo in una cella di Excel.
L'effetto di testo "Linea sopra" non è supportato in Excel.
Nelle intestazioni e nei piè di pagina di Excel sono supportati al massimo 256 caratteri, incluso il markup. L'estensione per il rendering tronca la stringa a 256 caratteri.
Nelle strutture sono consentiti solo fino a 7 livelli nidificati.
Se l'elemento di report che controlla l'attivazione o la disattivazione di un altro elemento non è presente nella riga o nella colonna precedente o successiva dell'elemento da attivare/disabilitare, anche la struttura verrà disabilitata.
L'estensione per il rendering Excel supporta solo l'immagine di sfondo del corpo del report. Se nel report viene visualizzata un'immagine di sfondo del corpo di report, il rendering dell'immagine verrà eseguito come immagine di sfondo del foglio di lavoro.
In Excel viene aggiunta una spaziatura interna predefinita di circa 3,75 punti alla sinistra e alla destra delle celle. Se l'impostazione relativa alla spaziatura interna di una casella di testo è inferiore a 3,75 punti e lo spazio disponibile è appena sufficiente per il testo, è possibile che in Excel il testo venga mandato a capo in modo automatico.
[!NOTA]
Per risolvere questo problema, aumentare la larghezza della casella di testo nel report.
Impostazioni relative alle informazioni sul dispositivo
È possibile modificare alcune impostazioni predefinite per questo renderer modificando le impostazioni relative alle informazioni sul dispositivo. Per ulteriori informazioni, vedere Reporting Services Device Information Settings.
Vedere anche