Sei sulla pagina 1di 3

Reports

La struttura da impostare per la creazione di un report la seguente VISUAL STUDIO Aspx o FiltroReport.xml o Report.xml o Report.rdlc App-Code o DataSetReport.xsd DataSetReport.xss SQL Server necessario creare una Stored Procedure
(n.b. I nomi delle pagine sono indicativi)

VISUAL STUDIO

FiltroReport.xml
Un filtro consente di impostare dei parametri in base al quale effettuare lestrazione di dati da riportare. (es: seleziona tra tutti gli impiegati solo quelli associati ad una certa sessione) Tale operazione viene effettuata attraverso luso di strumenti tipici delle pagine analitiche (labeleddatapicker, labeleddropdownlist, labeledradiobutton, ecc..) allinterno della pagina FiltroReport.xml, che ereditando da AdvancedSearch.dtd, presenta alcune caratteristiche particolari. Ad esempio consente di individuare il nome del dbfield per un datapicker direttamente nel tag di definizione dello stesso, attraverso lattributo dbtablename; Oppure, ancora pi rilevante, attraverso lattributo relatedfield consente di definire il datasource di un field in base al valore selezionato in un altro.
caso il datapicker sessione consentir di selezionare le solo sessioni relative alla sessione master selezionata nel datapicker precedente)

Report.xml
Eredita da ToolbarReportPage.dtd; si tratta di una pagina dalla struttura semplice che individua: La struttura della stored procedure pu variare molto in base al tipo di informazioni richieste dal report. Spesso utile popolare delle tabelle temporanee con lid delle risorse di interesse che fornisca una base per la condizione WHERE..IN di successive query necessarie ad estrarre informazioni aggiuntive. Un altro utile accorgimento quello di creare delle etichette che rendano dinamici i nomi delle colonne del report. Tali etichette devono essere incluse in una stringa di questo tipo: 221#SessioneMaster,223#Sessione,REP0001#StatoSCHEDA Con questa struttura ttid#tttext (da SYS_TTEXT) In ogni caso la stored proc deve restituire una tabella.

DataSetReport.xsd
Questo tipo di pagine si trovano allinterno della cartella App_Code. .xsd il dataset; allinterno dell.xsd si definisce il datatable(drag&drop da toolbox) Il nome del dataset deve essere univoco, il nome delle colonne del datatable deve corrispondere al nome delle colonne della tabella restituita dalla stored.

Report.rdlc
Questa la pagina di che definisce il layout grafico del report. (1) Assegnazione DataSet Dal men Toolbox (sulla sx) selezionare il tipo di report di interesse (solitamente Table) Dal men Report Data (sempre sulla sx), click su NewDataSet.

(2) Assegnazione Valori-Celle Header Innanzitutto definiamo la funzione di assegnamento: Right-click sulla parte grigia della paginareport propertiesCode Copiare ed incollare il seguente codice:
Public Shared Function GetTesto (ByVal field as String, ByVal list as String) as String Dim arrlist() As String Dim arrelem() As String Dim i as Integer arrlist = Split(list ,",") for i=0 to ubound(arrlist) arrelem = Split(arrlist(i),"#") if Trim(arrelem(0)) = field then return arrelem(1) exit function end if next return field End Function

Right-click sulla cella di interesseexpressionnella textbox riportare il seguente codice


=Code.GetTesto("ttid",First(Fields!ETICHETTE.Value, "NomeDataSet_NomeDataTable"))

Body Right-click sulla cella di interesseexpressionin Category selezionare Fields selezionare il field di interesse. (3) Layout In generale il layout viene gestito con le properties delle varie componenti del report.

n.b. spesso per ovviare a dei problemi di visualizzazione necessario impostare un opzione di layout (es:colore del testo) nel seguente modo: nel box properties in basso a dx della paginaright-click sulla propriet di interesse expression invece di Black impostare =Black