L’output del report può essere effettuata utilizzando vari linguaggi.
I più comuni sono:
L'output HTML viene infatti rigenerato a ogni esecuzione del report. Un'estensione per il rendering incorporata determina il tipo di output HTML, incluso il posizionamento e lo stile degli elementi del report. L'estensione per il rendering HTML incorporata non è personalizzabile. Non è pertanto possibile modificare la codifica HTML da essa prodotta, né sostituire elementi di formattazione esistenti con una diversa implementazione.
Per ottenere l'output di un report in formato HTML, il controllo crea una tabella in HTML nella quale verranno inseriti gli elementi di ciascun set di elementi del report. Gli elementi vengono posizionati nella tabella per mantenere il layout del report. Se il set di elementi del report contiene un solo elemento, il rendering viene eseguito senza generare la tabella. Tutte le posizioni e le dimensioni degli elementi sono espresse in millimetri (mm).
L'estensione per il rendering PDF converte i report in file che è possibile aprire in Adobe Acrobat e altri visualizzatori PDF di terze parti compatibili con PDF 1.3. Nonostante la versione PDF 1.3 sia compatibile con Adobe Acrobat 4, Reporting Services supporta Adobe Acrobat 6 e versioni successive. Non è necessaria l'applicazione Adobe per convertire i report mediante l'estensione per il rendering. I visualizzatori PDF, ad esempio Adobe Acrobat, sono tuttavia necessari per visualizzare e stampare i report in formato PDF.
L'estensione per il rendering PDF è basata sull'estensione per il rendering delle immagini, rispetto alla quale, tuttavia, presenta alcune differenze.
L'estensione per il rendering PDF supporta i caratteri ANSI e consente di convertire i caratteri Unicode dalle lingue giapponese, coreano, cinese tradizionale, cinese semplificato, cirillico, ebraico e arabo.
QUERY DI JOIN
I più comuni sono:
L'output HTML viene infatti rigenerato a ogni esecuzione del report. Un'estensione per il rendering incorporata determina il tipo di output HTML, incluso il posizionamento e lo stile degli elementi del report. L'estensione per il rendering HTML incorporata non è personalizzabile. Non è pertanto possibile modificare la codifica HTML da essa prodotta, né sostituire elementi di formattazione esistenti con una diversa implementazione.
Per ottenere l'output di un report in formato HTML, il controllo crea una tabella in HTML nella quale verranno inseriti gli elementi di ciascun set di elementi del report. Gli elementi vengono posizionati nella tabella per mantenere il layout del report. Se il set di elementi del report contiene un solo elemento, il rendering viene eseguito senza generare la tabella. Tutte le posizioni e le dimensioni degli elementi sono espresse in millimetri (mm).
L'estensione per il rendering PDF converte i report in file che è possibile aprire in Adobe Acrobat e altri visualizzatori PDF di terze parti compatibili con PDF 1.3. Nonostante la versione PDF 1.3 sia compatibile con Adobe Acrobat 4, Reporting Services supporta Adobe Acrobat 6 e versioni successive. Non è necessaria l'applicazione Adobe per convertire i report mediante l'estensione per il rendering. I visualizzatori PDF, ad esempio Adobe Acrobat, sono tuttavia necessari per visualizzare e stampare i report in formato PDF.
L'estensione per il rendering PDF è basata sull'estensione per il rendering delle immagini, rispetto alla quale, tuttavia, presenta alcune differenze.
L'estensione per il rendering PDF supporta i caratteri ANSI e consente di convertire i caratteri Unicode dalle lingue giapponese, coreano, cinese tradizionale, cinese semplificato, cirillico, ebraico e arabo.
QUERY DI JOIN
Ti è mai capitato di voler unire due o più tabelle e non ottenere il risultato sperato? E’ possibile spiegare le join usando gli insiemi.
Prendi due tabelle A e B e immagina che siano 2 insiemi
Prendi due tabelle A e B e immagina che siano 2 insiemi
Intersecando i due insiemi otteniamo una zona condivisa (verde) e due aree separate (gialla e azzurra), i diversi tipi di join si occupano di selezionare queste aree estrapolando diversi gruppi di risultati.
INNER JOIN
In base all'esistenza o meno della condizione (WHERE), la inner join restituisce solo i record verificati esistenti in entrambe le tabelle, tutte quelle righe che non hanno corrispondenza verranno escluse.
Per fare un esempio pensiamo una query di questo tipo:
SELECT * FROM tabellaA INNER JOIN tabellaB ON tabellaA.id_dipartimento = tabellaB.id
Il risultato è:
In base all'esistenza o meno della condizione (WHERE), la inner join restituisce solo i record verificati esistenti in entrambe le tabelle, tutte quelle righe che non hanno corrispondenza verranno escluse.
Per fare un esempio pensiamo una query di questo tipo:
SELECT * FROM tabellaA INNER JOIN tabellaB ON tabellaA.id_dipartimento = tabellaB.id
Il risultato è:

Il dipartimento di scienze non ha iscritti, quindi non è stato considerato. Nel caso degli insiemi viene preso in considerazione solo la porzione che si sovrappone.
OUTER JOINLa outer join restituisce tutti i record che non corrispondono alle chiavi di ricerca. E' il contrario della inner join.
Questo è solo un concetto, perchè verrebbero estratti solo risultati non corrispondenti visualizzati con una serie di NULL. In realtà si usa insieme a left o right diventando left outer join o right outer join.
Nel caso degli insiemi viene selezionato tutto quello che sta al di fuori dall'intersecazione.

LEFT OUTER JOIN (RIGHT OUTER JOIN)
Questo tipo di selezione si ottiene mettendo insieme il concetto di inner join e outer join. Il risultato che si ottiene è la selezione di tutti i record della tabella A che corrispondono con la tabella B, più i record della tabella A che non corrispondono. I record che non corrispondono vengono valorizzati a NULL
Esiste anche la right outer join ma normalmente non si usa e per ottenere lo stesso risultato si cambia l'ordine delle tabelle. A volte è possibile omettere il termine OUTER, quindi rimane semplicemente LEFT o OUTER JOIN
Vediamo l'esempio
SELECT * FROM tabellaA LEFT JOIN TabellaB ON tabellaA.id_dipartimenti = tabellaB.id
Il risultato è:
Questo tipo di selezione si ottiene mettendo insieme il concetto di inner join e outer join. Il risultato che si ottiene è la selezione di tutti i record della tabella A che corrispondono con la tabella B, più i record della tabella A che non corrispondono. I record che non corrispondono vengono valorizzati a NULL
Esiste anche la right outer join ma normalmente non si usa e per ottenere lo stesso risultato si cambia l'ordine delle tabelle. A volte è possibile omettere il termine OUTER, quindi rimane semplicemente LEFT o OUTER JOIN
Vediamo l'esempio
SELECT * FROM tabellaA LEFT JOIN TabellaB ON tabellaA.id_dipartimenti = tabellaB.id
Il risultato è:

In questo caso anche la riga "scienze" è stata inserita,ma dal momento che non ci sono iscritti viene inserito NULL nel campi non corrispondenti.
Il disegno con gli insiemi appare così:
CONCLUSIONISe ne deduce che attraverso il report è possibile estrapolare da una serie di dati quelli che corrispondono alle condizioni indicate. L’output del report è la forma grafica del report pertanto attraverso il linguaggio scelto (HTML, PDF o altro) è possibile ricavare una stringa di testo che contiene tutte le indicazioni necessarie per individuare il risultato della query, cioè ciò che viene visualizzato nel report.
Nessun commento:
Posta un commento