maanantai 26. elokuuta 2013
VB.net ja ReportViewer
Tämä ominaisuus on mielestäni huonosti dokumentoitu, niin laitanpa sen itsellenikin tänne muistiksi.
Parametrin välittäminen ReportViewer:n SQL-kyselyyn:
1. Lisää "parametri" report.rdlc Report data:aan, ilman arvo (arvo välitetään koodilla myöhemmin).
2. Avaa Dataset ja siellä valitse Tableadapter - Configure:
Lisää SQL- lauseeseen välittävän "parametrin" paikalle ?- merkki.
3. Jos toimit oikein tähän asti, niin Tableadapterissa näkyy nyt: Fill ("parametri")
4. Avaa Tableadapter.Fill("parameter")- ominaisuudet, ja SelectCommand. Ja lisää Parameters (Collection)- kohtaan se parametrin nimi, johon viittasit SQL-lauseessa.
5. Koodissa sitten luot Reportviewerille vastaavan parametrin, ja annat sille arvon:
Esim.
Dim p_lahetenro As New ReportParameter("lahetenro", lahetenro.ToString)
Dim p_otsikko As New ReportParameter("laheteotsikko", laheteotsikko.ToString)
Lahete.Viewer.LocalReport.SetParameters(p_lahetenro)
Lahete.Viewer.LocalReport.SetParameters(p_otsikko)
Lahete.Viewer.RefreshReport()
Lahete.Show()
Kuulostaa monimutkaiselta, mutta ei loppujen lopuksi sitä ole :)
Toinen vaihtoehto antaa parametri ReportViewerille on käyttää Filter ominasuutta, mutta sille löytyy paremmin googlesta vinkkejä!
Tilaa:
Lähetä kommentteja (Atom)
Ei kommentteja:
Lähetä kommentti