Nascondere sottoreport

giovedì 17 aprile 2008 - 11.48

gigi90 Profilo | Senior Member

Salve a tutti, ho un report che ha al suo interno un sottoreport, quest'ultimo deve essere visualizzato nel report solamente quando l'utente risponde di si ad una MessageBox, come faccio a nascondere il sottoreport all'interno del report????

freeteo Profilo | Guru

ciao,
la messagebox è della tua applicazione, e il report è visualizzato dentro ad una form?
Se è cosi', ti basta passare al report un parametro (o un campo formula), e discriminare la proprieta' "Suppress" del sottoreport, in base al valore di questo parametro (o campo formula).

Percio', sottoreport->tastoDX->format object->tasto [x+2]->si apre l'editor delle formule:
if {@campoFormula} = 'si' then true else false

e poi da codice gli passi il valore dopo che hai raccolto la scelta dell'utente:

ReportDocument report = new ReportDocument(); report.Load(@"...rptArticoli.rpt"); report.SetDataSource(...); report.DataDefinition.FormulaFields["campoFormula"].Text = 'si'; ...


Io ti consilgio di passare tramite un campo "formula" piuttosto del parametro, perche' quest'ultimo se non viene passato al report (tipo appena lanci il report) viene chiesto all'utente, e magari tu ti dimentichi o non è necessario e il report te lo chiede.
Mentre con i campi formula se non sono passati, viene cmq dato un valore di default (che appunto puoi mettere tu) e tutto va liscio...quindi diciamo che non è "obbligatorio".


Dopodiche' richiami il metodo "RefreshReport" del viewer, in modo da visualizzare le modifiche.


ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

gigi90 Profilo | Senior Member

Grazie molte
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5