Sie sind auf Seite 1von 2

Einen Telerik Report Viewer in ASP.

NET MVC 3 einbinden, einen neuen SQL-Report erstellen


Innerhalb der Solution einen Ordner Reports erstellen Dann Verweise einbinden: Telerik.Reporting.dll Telerik.ReportViewer.WebForms.dll

Dann im neuen Ordner eine neue Klasse anlegen Typ der Klasse ist Reporting/Telerik (gelbes Symbol) Es ffnet sich ein Wizard Wir whlen in diesem Fall New Report (um einen Demo-Report anzulegen) Wir whlen eine Datasource aus (in diesem Fall sql) Es stehen folgende Datasources zur Verfgung: SQL ObjectData (hrt sich am vielversprechendsten an) Entity Data OpenAccess (ein Telerik Produkt) CubeData

Als nchstes muss man eine DataConnection erstellen Danach erscheint der QueryBuilder der die Mglichkeit gibt ein SQL-Statement einzugeben oder mithilfe eines graphischen Tools zu erstellen Design/Data Layout whlen (es stehen standard und label als Reporttypenzur Verfgung und anschlieend kann der gewhlte Report etwas customised werden. Dieser Bereich ist etwas drftig, wie komplexere Reports entstehen muss noch erkundet werden. Ausserdem war es etwas schwierig die Felder in der richtigen Reihenfolge einzufgen) Fertigstellen In der Klasse ruht nun in Control das mit einem Report verbunden ist (man hat sogar eine Vorschau auf den fertigen Report!) Als nchstes ist es wichtig zu builden weil der view eine vorkompilierte Klasse erwartet Nun einen neuen view erzeugen, aspx als view engine whlen und keinen layout master oder eine layout.cshtml mitgeben (Hkchen an der Option auf false setzen) Dann den Code fr die aspx-Datei aus dem demo-view bernehmen, lediglich der Name und Pfad zum eigentlichen Report muss angepasst werden, wenn das Report im Designbereich bereits eingefgt ist Dann in den Design Bereich des views wechseln Toolbox ffnen Reportviewer in den View ziehen

Dann im Eigenschaftenbereich des viewers das Property Report des Reportviewers suchen und dort innerhalb der MVCApplication den entsprechenden Report whlen (der Report muss im entsprechenden Ordner liegen wie es scheint, wie dieser Ordner gendert werden kann muss noch erkundet werden) Speichern / Kompilieren. Der partial view wurde erfolgreich erstellt. Nun einen leeren Razor-view erstellen und dort am Ende folgende Zeile plazieren: @Html.Partial(<partial-view-name>); Wenn nun der eben erstelle Razor-view mittles Controller invoked wird, dann wird der Berichtsgenerator mit dem an ihn gebundenen Bericht angezeigt, allerdings gibt es, bedingt durch die Tatsache, dass die Webform (also dem partial view den wir im ersten Schritt erstellt haben) ihr Master zur Formatierung fehlt, einige Anzeigeprobleme die sich wie folgt lsen lassen: Zunchst die Datei reports.css in den Ordner Content deponieren (dort gibt es bereits layout.css) (die Datei ndert sich nicht und kann aus dem Quellcode dieses Projekts bernommen werden) Anschlieend die neue css-Datei in _Layout.cshtml einbinden <link href = @URL.Content(~/Content\Reporting.css) rel=stylesheet type=text/css />

Nun ist es wichtig die Ansicht zu kontrollieren. Sollte die Ansicht in Ordnung sein ist dieses Manual an dieser Stelle zu Ende. Sollten weiter Ansichtenprobleme bestehen: Der Viewer verwendet das Standard-Table-Element der Layout.css Datei um die Elemente des Viewers zu gestalten. Sollten diese durch etwas anderes so definiert sein, dass der Viewer dadurch nicht mehr ordentlich dargestellt wird, muss die Definition fr dieses Element aus der Layout.css verschwinden. Am einfachsten erreicht man dass, indem man die Elemente table, table td sowie table th umbenennt, z.b. in #tablestd, #tablestd td oder #tablestd th Durch das Umbenennen dieser Elemente kann das Aussehen der restlichen Anwendung beeintrchtigt werden. Dort muss dann bei Tabellen immer eine neue Style-Information mitgegeben werden.