Height 100% nel controllo ReportViewer

by Andrea 08 November 2006 16:11

Impostando Height="100%" nel controllo ReportViewer (in ASP.NET) vi potrà accadere la stessa cosa successa a me, e cioè che quando visualizzate una pagina con il controllo così impostato al suo interno, vi apparirà solamente la barra e non vedrete il vostro report.
Accade che il controllo si setta con un'altezza pari alla sola barra.
Non immagino il perchè di questo anomalo comportamento, ma lo posto qui, così che non perdiate anche voi lo stesso tempo che ho perso anch'io nel capire il perchè i dati non comparivano.

Perciò attenzione nel mettere Height="100%" al controllo ReportViewer.

Technorati tags: ,

Tags:

.NET | Reporting Services

Membership: ChangePassword e passwordFormat="Hashed"

by Andrea 31 October 2006 09:10

Ed ecco che su XeDotNet esce un mio nuovo tip, ma questa volta a rigurado delle Membership di ASP.NET.

Questo tip descrive come forzare la modifica della password di un MembershipUser da codice senza conoscere la precedente.

Nel progetto a cui stò lavorando mi trovo a sbattere la testa anche in cose che sembrano banali come questo tip, ma che per risolverli ci si impiega molto tempo, ed ecco perchè condivido queste mie piccole "scoperte".

Tags:

.NET | XeDotNet

Consumare dinamicamente un Web Service

by Andrea 23 October 2006 09:10

Dopo vari tips scritti per XeDotNet, ecco uscito il mio primo articolo e vi riporto qui una breve descrizione:

L'articolo descrive come poter consumare dinamicamente un Web Services a runtime, dando così maggiore flessibilità alle applicazioni

Lo trovate a questo link http://www.xedotnet.org/40/section.aspx/300

Ho usato "dinamicamente" nel senso che non è necessario ricompilare l'applicazione se si vuole modificare alcuni dati del WebService.
Personalmente non mi è mai piaciuta l'idea di vincolare un'applicazione, o una parte di applciazione a dei web services prestabiliti. Anche perchè nella fase di sviluppo di un'applicazione e magari del relativo servizio, il web service può subire mille variazioni, dal nome dei metodi, al namespace, e quant'altro e non mi andava di ricompilare ogni volta il client e allora ho cercato una possibile soluzione.
Quella pubblicata nell'articolo è la prima fase di questa ricerca, infatti mi appoggio ad un'utility framework Wsdl.exe che si occupa di generare un file *.cs con i metodi e le proprietà per accedere e consumare il servizio.
Quello che stò cercando di fare ora è quello di riuscire ad emulare quello che fa wsdl, e magari sarà fonte per un prossimo articolo.

Technorati tags: , ,

Tags:

.NET | +1 | XeDotNet

Grazie Davide

by Andrea 20 October 2006 15:10

Oggi è un giorno veramente stupendo, uno di quei giorni in cui rimani proprio senza parole...
Voglio ringraziare Davide Vernole per il regalo inaspettato che mi ha fatto oggi....una licenza di Visual Studio Team Suite con MSDN premium Subscription.
Non vi nascondo la mia felicità nell'averla ricevuta, e chi non lo sarebbe?! Da quando ho cambiato lavoro e mi sono ritrovato a sviluppare (per mia fortuna) al 100% in .NET, posso ammetere di essere cresciuto parecchio e di aver acquisito davvero molte capacità.
Questo regalo mi sprona a voler imparare sempre di più e ad impegnarmi a trasmettere il mio know how, almeno per quelle che sono le mie capacità. Grazie ancora Davide (e continuerò per molto a dirtelo) ...stai certo che spremerò e sfrutterò quest'occasione fino in fondo. ...e anche la mia autostima ne ha avuto guadagno!

Technorati tags: ,

Tags:

.NET | +1

GhostDoc e le interfacce

by Andrea 12 October 2006 14:10
In questi ultimi giorni mi stò occupando di commentare il codice. Immagino già che qualcuno starà pensando perchè non commento il codice man mano che lo scrivo, ma purtroppo i tempi ristretti provocano tagli e tra le prime cose che si lasciano in dietro sono i commenti. Comunque non sono stati marcati come "da non fare", ma bensì da fare appena si ha tempo. Beh, dove voglio arrivare... E' da più di un giorno che stò commentando un'interfaccia che avrà più di 300 metodi smile_sniff (ed ecco una nuova domanda, ma perchè non usi GhostDoc che ti da una mano? Perchè i commenti li devo fare in italiano) e immaginatevi quando dovrò commentare anche la classe che implementa questa interfaccia...  smile_sad e qui vi voglio stupire, almeno così ci sono rimasto io, quando ho saputo che GostDoc quando commenta un metodo di classe che implementa un'interfaccia, riporta pari pari il commento del metodo dell'interfaccia (scusate il giro diparole), e quindi nel mio caso mi ritroverò i commenti in italiano. smile_party E per questa scoperta devo rigraziare Roberto, un membro del Team dove lavoro.
Nel male (che dovrò fare i commenti in italiano) una nota positiva (avrò GhoStDoc che un pò mi aiuterà).
Quindi, se volete un consiglio, smile_secretse vi trovate una situazione simile alla mia, iniziate a commentare partendo dalle interfacce. Technorati tags: , ,

Tags:

+1 | .NET

Query con parametri dinamici in Reporting Services

by Andrea 28 September 2006 07:09
E' appena uscito sul sito di XeDotNet un mio tip che riguarda la composizione di una Query per il recupero dei dati (in Reporting Services) utilizzando parametri dinamici che possono esser passati nel URL di chiamata del report stesso, rendendolo così molto più dinamico e flessibile. Ecco il link: http://www.xedotnet.org/40/section.aspx/288

Tags:

.NET | Reporting Services | XeDotNet

Membership.FindUserByName, ecco perchè non mi funzionava

by Andrea 12 September 2006 14:09
Se nella vostra applicazione fate uso delle membership di ASP.NET, vi sarà capitato (o vi potrà capitare) di cercare un user dato una parte dello username. La soluzione ovvia è quella di usare la funzione Membership.FindUsersByName, che come dice la descrizione
Gets a collection of membership users where the user name contains the specified user name to match.
Bene, proprio quello che cercavamo, ma qui c'è da prestare un pò di attenzione. Infatti se come stringa mettiamo "pip" e stavamo cercando l'utente "pippo", non ci verrà ritornato proprio niente. La cosa un pò mi puzzava e non capivo il perchè non mi ritornasse una lista di untenti che contenevano la stringa "pip" nello username, e dopo un pò di tentativi mi sono rassegnato ed ho abbandonato il tutto. Ieri con Andrea ci siamo messi a vedere un pò meglio la facenda, ed analizzando con Reflector le classi delle SqlMembershipProvider ci siamo accorti che la stringa di ricerca viene passata direttamente a SQL, e quindi ponendo due bei percento agli estremi della stringa "%pip%" ecco che il tutto inizia a funzionare.

[...] SqlCommand command1 = new SqlCommand("dbo.aspnet_Membership_FindUsersByName", holder1.Connection); MembershipUserCollection collection1 = new MembershipUserCollection(); SqlDataReader reader1 = null; command1.CommandTimeout = this.CommandTimeout; command1.CommandType = CommandType.StoredProcedure; command1.Parameters.Add(this.CreateInputParam("@ApplicationName", SqlDbType.NVarChar, this.ApplicationName)); command1.Parameters.Add(this.CreateInputParam("@UserNameToMatch", SqlDbType.NVarChar, usernameToMatch)); command1.Parameters.Add(this.CreateInputParam("@PageIndex", SqlDbType.Int, pageIndex)); command1.Parameters.Add(this.CreateInputParam("@PageSize", SqlDbType.Int, pageSize)); command1.Parameters.Add(parameter1); [...]

Tags:

.NET

[Reporting Services] Pubblicare un'applicazione che usa ReportViewer

by Andrea 12 September 2006 13:09

Se dovete pubblicare un'applicazione che fa uso del componente ReportViewer per visualizzare i vostri report, ricordatevi che nel server dovrete installare ReportViewer.exe, che trovate al seguente link http://www.microsoft.com/downloads/details.aspx?familyid=8a166cac-758d-45c8-b637-dd7726e61367&displaylang=en .

Per maggiori informazioni ed esempi sull'uso di questo componente vi consiglio di visitare questo sito:
http://www.gotreportviewer.com/

Tags: , ,

.NET | Reporting Services

[Reporting Services] Prelevare un valore da un controllo contenuto nel Report

by Andrea 04 September 2006 14:09

Nei nostri Report ci può tornare utile avere la possibilità di prelevare il valore di un dato contenuto in un'altra controllo , come ad esempio il testo contenuto in una TextBox posizionata nella pagina.

La sintassi è la seguente:
=ReportItems!textbox1.Value

Questo ci può tornare utile nel caso volessimo eseguire operazione e/o funzioni usando dati contenuti in più celle.

Tags: ,

.NET | Reporting Services

Tabelle Orizzontali nei reports di Reporting Services

by Andrea 04 September 2006 11:09

Da quanche giorno ho iniziando ad usare e a conoscere i report di Reporting Services e mi imbatto spesso in semplici problemi, ma che all'apparenza mi appaiono enormi a causa della mia (ancora) scarsa conoscenza dello strumento.

Uno di questi riguarda la creazione di tabelle orizzontali, infatti, nei report di Reporting Services non è possibile creare tabelle orizzontali se non usando qualche work around. Uno di questi richiede l'uso delle matrici.

In questo post troverete spiegati i vari step per creare il tutto.

Tags:

.NET | Reporting Services