17/06-2006 | Casper Fabricius

Thumbs up til Microsoft Report Server

Når vi udvikler ASP.NET websites her hos Kraftvaerk, terroriserer jeg som regel mine kollegaer med alskens trusler om grim html og manglende overholdelse af standarder, hvis de bruger det berygtede Design View i Visual Studio til at opbygge siderne, i stedet for at skrive koden selv. Med VS2005 skulle alt jo være meget bedre på den front, men jeg har stadig mine forbehold, og foretrækker den ”gammeldags” måde, fordi jeg vel stadig ikke tror på at der kan komme noget godt ud af at bygge websites præcis som man bygger brugergrænsefladen til Windows-applikationer.

Men den fordom er nu gjort til skamme. Med Microsoft Report Server, og det dertil hørende report-projekt i Visual Studio, kan man opbygge nydelige rapporter der kører direkte i browseren (i hvert i IE) uden at skrive hverken en linje C# eller html. Måske er jeg den sidste i verden der får øjnene op for Report Servers fortræffeligheder, når det gælder om at anskueliggøre store mængder data i en SQL database, men skulle du nu ikke være ekspert, vil jeg fortælle lidt om det.

Jeg har for nylig lavet en række rapporter for en af vores kunder, og havde oprindeligt forestillet mig at det skulle foregå i almindelig ASP.NET med brug af en eller anden komponent der kunne tegne nogle pæne grafer. Da kunden foreslog Report Server som platform var jeg først skeptisk, for jeg foretrækker som nævnt at lave tingene “i hånden” og derved have fuld kontrol – jeg ville nødig være tvunget til at skære en stor del af funktionaliteten væk, fordi jeg var begrænset af platformen – men Report Server har faktisk været i stand til at levere stort al den funktionalitet brugerne efterspurgte – den er simpelthen skabt til at generere rapporterer.

Microsoft Report Server er gratis, hvis man har en licens til SQL Server og Windows Server. Man arbejder som antydet med rapporterne i et grafisk miljø fyldt med previews, wizards og dialog-bokse, men den enkelte rapport gemmes heldigvis i xml-format, hvilket gør en i stand til kopiere forskellige ting rundt mellem rapporterne, som skal være ens – fx hvis man skal kunne søge og filtrere på de samme parametre alle steder.

Det er selvfølgelig aldrig pænt at duplikere kode, men på den anden side er knapt nok kode der er tale om – det er bare xml – og hvad der er vigtigere, Report Server giver et gevaldigt produktivitetsboost, og så er det altså til at overleve at man ikke er 100% DRY. Kan Report Server bruges til andet end rapporter, altså andet end til at anskueliggøre og søge i store datamængder gennem tabeller og grafer? Næppe. Den forsøger ikke at være mere end en rapport-generator, og det er bare helt i orden med mig.

Af: Casper Fabricius
Kategorier: Teknologi

Der er lukket for kommentarer.