Contiki bruker Reporting Services


fredag 13. mars 2009 Jobb Databaser User experience

Contiki ECMJeg jobber i et software-selskap (eller ISV om du vil) som heter CMA Contiki. Vi lager en enterprise contract management løsning som brukes av kunder over hele verden - av selskaper som Total, Halliburton, ConocoPhillips og Telenor.

Contiki ECM versjon 6, som er det jeg har jobbet med i snart 3 år, har hele tiden vært et veldig fleksibelt produkt som i stor grad kan tilpasses ulike kunder - bl.a. gjennom en egenprodusert workflow-løsning. Rapportering har også vært en sentral del, og vi hadde bygget inn XtraReports fra DevExpress i klienten vår for å kunne gi kundene en fleksibel rapporteringsløsning.

Nå har vi derimot gått bort fra denne løsningen, og i versjon 6.6 vil våre kunder få et produkt som er fullt integrert med SQL Server Reporting Services (SSRS) fra Microsoft. Vi tror både vi og kundene vil tjene på dette, siden SSRS er en mer kjent løsning som mange allerede har erfaring med.

Vi lar selvsagt kundene definere opp og tilgjengeligjøre alle de rapportene de selv ønsker, men vi har også valgt å ta et ekstra steg og bytter nå ut enkelte, sentrale skjermbilder i klienten vår med SSRS rapporter.

Standard contract summary
Contiki ECM: Standard contract summary

I skjermdumpen over ser du Contiki ECM versjon 6.5, hvor jeg har åpnet hovedbildet for en kontrakt. Det inneholder 6 faner (til høyre i bildet) hvor man får tilgang til nøkkeldata om kontrakten. Ulempen er at ulike kunder er interessert i ulike ting, og vi skulle derfor hatt en måte å tilpasse dette skjermbildet på. Derfor jobber vi nå med å bytte ut dette bildet..

Contract summary with SSRS
Contiki ECM: Custom contract summary with SSRS

Skjermdumpen over viser det samme oversiktsbildet for kontrakt, men denne gangen er den en SSRS rapport som lastes. Denne kan enkelt skreddersys til å vise akkurat de dataene kunden er mest opptatt av - de som er viktigst for dem. Takket være vårt konfigurasjonssystem kan man velge å vise ulike skjermbilder (dvs. rapporter) for ulike avdelinger (f.eks. markedsavdelingen kontra innkjøpsavdelingen), eller til og med for enkeltbrukere - CEO kan få sitt helt eget oversiktsbilde for kontrakter.

Som du kanskje ser gjenstår det litt på designet, men det er en smal sak. Vi har lagt mye arbeid ned i integrasjonen, for eksempel for å knytte SSRS mot vårt ACL system, slik at brukerne bare får tilgang til data de skal ha tilgang til.

Standard commercial commitment screen
Contiki ECM: Standard commercial commitment

Her ser du et annet skjermbildet vi ønsker å bytte ut. I bildet over ser du de komersielle dataene for en kontrakt slik det ser ut i versjon 6.5 og tidligere. Her har kundene meget varierende behov, og vi velger derfor å gå for en rapport (bildet nedenfor) som kan tilpasses.

Commercial overview with SSRS
Contiki ECM: Commercial commitment with SSRS

Denne strategien betyr også mere arbeid for våre konsulenter, som vil tilpasse skjermbildene og også lage nye rapporter for kundene. Erfaringen sålangt er bra, og kunsulentene har raskt lært seg å jobbe med SQL Server og Reporting Services. En bi-effekt er muligens at utviklerne ikke har behovet for å forstå kundenes behov i samme detaljgrad, som kanskje også vil kunne øke effektiviteten i utviklingen noe.

For å muligjøre en så tett integrasjon som mulig mellom rapportene og klienten vår har vi også utviklet funksjonalitet får å kunne klikke på linker i rapportene som navigerer til objekter i klienten. Vi har implementert en egen Contiki-protokoll som gjør at vi kan lage linker som f.eks. contiki://open/contract/id/1234 - som vil åpne kontrakten med id 1234. Slik blir rapportene er helt naturlig del av grensesnittet.

Vi bruker selvsagt også SSRS-integrasjonen i webklienten vår, som har vært mitt ansvarsområde. Reporting services kommer med Report-viewer for både WinForms og WebForms.

Jeg mener det har vært et lite genitrekk å knytte rapportene så tett inn i løsningen vår. Etterhvert som vi implementerer rapport-muligheter flere og flere steder i klienten, vil kundene kunne tilpasse produktet mere og mere til akkurat det de trenger, uten at vi behøver å øke kompleksiteten i det vi leverer. Nå gjenstår det bare å gjøre Contiki skriptbart, så kan vi slutte å kode selv også :)

Knagger: Contiki, SQL Server.


comments powered by Disqus