Jeg har atter gennemført en analyse af MS CRM, hos en kunde, og resultatet er, som hos så mange andre, ikke overraskende. Der er nemlig, som hos rigtig mange ting, som burde være gjort anderledes.
I dette indlæg vil jeg fokusere på de ting, som ikke var i orden, og som bestemt IKKE hører under "best practice". De ting jeg beskriver er ikke dækkende for alt det man bør være opmærksom på, men ting jeg ofte ser på forskellige installationer.
MS CRM-serveren
Man bør være opmærksom på følgende omkring MS CRM-serveren:
- Man bør overveje at implementere de seneste opdateringspakker (rollups). Dette er ikke et "must", men en rigtig god ide, da der i mange af opdateringspakkerne er taget hånd om fejl samt lavet tiltag til forbedringer af funktionalitet og ydelse.
- Man bør køre med samme opdateringspakker på ALLE delkomponenter i MS CRM-systemet. Dvs. man skal f.eks. køre med Opdateringspakke 9 på såvel server, klienter, SRS-connector osv.. Årsagen er, at der nogle gange ændres en smule på datagrundlaget samt funktionaliteter, som kræver at hver delkomponent skal have samme opdateringspakke for at kunne "snakke" ordentlig sammen.
Noget som kan gå rigtig galt er hvis man kører med Opdateringspakke 7 på klienterne, men på serveren kører med Opdateringspakke 4.
I Opdateringspakke 7 er der rigtig mange fundementale ændringer, som bestemt kræver samme pakke på alle miljøet - her tænker jeg specielt på Outlook-integrationen til MS CRM.
- Man bør jævnlig kontrollere sine arbejdsprocesser (workflows), for at se hvilken status de har (Fuldført, Mislykkedes, Venter mv.). Hvis man har nogle som er Mislykkedes, bør man kigge nærmere på disse, for at se om de er opsat som de skal. Hvis man har ventende arbejdsprocesser (hvilket der ikke er noget problem i), bør man se hvad det er disse venter på, og om det er korrekt at de venter.
SQL Server 2005
Man bør være opmærksom på følgende omkring SQL Serveren (2005-version):
Klienter (Outlook)
- Alle klienter bør have samme opdateringspakke som på MS CRM-serveren, for at sikre korrekt datahåndtering samt udnyttelse af funktioner i MS CRM.
- Alle klienter bør have samme SQL Server Service Pack, som på SQL Serveren. Dette især hvis man benytter Offline-muligheden på klienter, men også efter implementering af Opdateringspakke 7. I disse tilfælde vil der nemlig være installeret SQL Server Express på klienten.
Tilretninger af MS CRM
- Hvis man har mange tilpasninger i MS CRM, vil der ofte også være en del kode, som kører i forbindelse med tilpasningerne. Man bør analysere denne kode. Det er ofte en tendens til at lave rigtig meget klientside-kode (JScript/Javascript).
Hvis det ikke er absolut nødvendig at koden skal arbejde interaktivt med brugerens valg, bør man overveje at udvikle plugins.
Plugins kan køre fra serveren og generere de data der skal gøres tilgængelig for klienten, og sende dataene til klienten.
Forskellen ligger i om dataene bliver genereret på serveren inden afsendelse til klienterne, eller om klienterne forespørger til data. Der kan være en verden til forskel på ydelsen på de to modeller.
- Hvis man benytter lister (Picklist), og disse anvendes i forbindelse med Tilknytninger (Mappings) - og det gør mange jo - bør man analysere om der bliver overført de korrekte værdier mellem listerne.
Når man overfører værdier mellem lister er det kun værdien, og ikke teksten, som bliver overført, og det kan skabe problemer hvis man ikke har styr på værdierne i forhold til tekster i listerne.