CRMUG Danmark: Dynamics CRM App til Outlook

af Henrik Jensen 14. marts 2018 10:44

Tirsdag den 13. marts 2018 deltog jeg i et CRMUG Danmark-event, som denne gang blev afholdt hos Stark i Odense.

Der var som  sædvanlig nogle spændende emner på bordet, såsom Microsoft Fast Track (en hurtig måde at komme i skyen på), GDPR (Persondataforordningen).

Jeg havde et indlæg om Dynamics CRM til Outlook, hvor jeg gennemgik App'en på godt, men desværre, mest på ondt. Der er rigtig mange udfordringer med såvel Plugin'en og App'en til Outlook i øjeblikket.

Microsoft har ændret strategi vedr. Plugin'n til Outlook (Læs mere: Dynamics 365 til Outlook udgår alligevel ikke med Dynamics 365 v10...), som fortsætter. Da det er alment kendt at der er problemer med Plugin'n, og at der også er problemer med App'en, kan man frygte at det vil skabe endnu flere problemer, men det har Microsoft en løsning på, nemlig ved at bruge følgende matematiske formel:

Her er min PowerPoint-præsentation fra eventen: CRMUG - Dynamics App til Outlook.pdf (563,82 kb)

Fejl ved sletning af poster i Dynamics 365 v9 Online

af Henrik Jensen 15. februar 2018 13:54

Lars Terkelsen fra Bredana Solutions A/S har tippet mig om en fejl man kan støde på i Dynamics 365 v9 Online (9.0.1.127) når man sletter poster.

Hvis man f.eks. sletter Firmaer, Kontaktpersoner, Salgsmuligheder og andre, kan man få følgende fejlmeddelelse:

En analyse af logfilen giver ikke et direkte hint om hvad der er galt andet end der mangler Læse-rettighed???

Fejlen er ganske givet en fejl i CRM, som "almindelige" brugere kan støde på, og som kan henføres til en manglende indstilling i en eller flere Sikkerhedsroller.

Det man skal sikre er, at følgende indstilling har Læs/Read på de anvendte Sikkerhedsroller:

 

 

 

Virtuel objektdatakilde (Virtual Entity data Source) er en ny funktionalitet i Dynamics 365 v9, som giver mulighed for at opbevare data fra andre datakilder, som så kan benyttes sammen med data fra CRM. Læs mere her (Engelsk):

En uannonceret opdatering som ikke løser problemer med CRM til Outlook

af Henrik Jensen 19. december 2017 16:43

I de sidste par måneder, ja faktisk siden frigivelsen af Opdateringspakke 2 til Serviceopdatering 2 til Dynamics 365, har der været rigtig mange problemer med klienter som benytter Server-side synkronisering.

Problemerne er forskelligartede, såsom manglende synkronisering med CRM, fejl i synkroniseringen, sletninger af aftaler i kalenderen samt massivt mange dubletter i Outlook. En af mine kunder fik oprettet mere end 23.000 dublerede Kontaktpersoner i sin Outlook.

Problemerne er komplekse idet de tager udgangspunkt i flere teknologier(Exchange, Mobility, Outlook mv.)

Hos en af mine kunder har jeg brugt mere end 60 timers support med Microsoft, en anden ca. 25 timers support, vel og mærket uden at Microsoft aner hvad de skal gøre ved problemet. Det er ganske uacceptabelt!

Jeg har talt med en række Danske og Norske CRM-partnere, som i den grad er frustreret.

Det seneste Microsoft har gjort (i al stilhed) er at frigive en opdatering til Plugin'en til Outlook (Version 8.2.2.137 Update for Dynamics 365 for Microsoft Outlook...). Opdateringen har løst nogle ganske få af problemerne...men langt fra dem alle. Uofficielt forsøger Microsoft at få endnu en opdatering skubbet ud til den 21. december 2017, alternativt kommer den næste opdatering ultimo januar 2018.

Indtil videre vil jeg anbefale at dem som oplever problemer; at slå synkroniseringen væk fra Server-side synkronisering tilbage til den "gamle" Outlook-synkronisering.

Fejl ved visning af CRM i Outlook

af Henrik Jensen 16. oktober 2017 12:51

Hussain Iqbal fra CoreAmbition har gjort mig opmærksom på en fejl som kan opstå ved visning af CRM i Outlook.

Fejlen resulterer i et tomt skærmbillede.

Microsoft har erkendt fejlen, som kan opstå efter opdatering af i Oktober 2017 Outlook Security Update.

Løsningen

Microsoft har frigivet en artikel som beskriver hvad man skal gøre for at løse/undgå problemet, nemlig ved at oprette en nøgle i registreringsdatabasen, som afhænger af hvilken version af Outlook man benytter: Læs mere her (Engelsk): Microsoft Dynamics 365 for Outlook is unable to render webpages after installing the October 2017 Microsoft Outlook security update...

Opdateringer af sikkerhed i forhold til Dynamics 365 Online

af Henrik Jensen 28. september 2017 11:19

Microsoft er begyndt at udsende informationer om en opgradering af sikkerheden i forhold til Dynamics 365 Online, som kan få indflydelse på brugere af Dynamics 365.

Hvad handler det om?

Til at håndtere sikkerhed anvendes bl.a. en protokol kaldet TLS (Transport Layer Security). TLS benyttes i forskellige versioner TLS 1.0, 1.1 og 1.2.
Når den næste version (Dynamics 365 9.x) frigives online understøttes kun TLS version 1.2.

Hvem kan blive berørt?

Det er vigtigt at pointere at ændringen alene berører dem som benytter Dynamics 365 Online version 9.x (Den nye version som frigives omkring den 1. oktober 2017)

Man kan blive berørt på forskellig vis:

  • Hvis man benytter en ældre version af Windows
  • Hvis man bruger ældre browsere
  • Hvis TLS 1.2 ikke er aktiveret i sin browser
  • Hvis plugins og Windows applikationer, som integrerer med CRM benytter en ændre version af .NET Framework

Hvad kan du gøre?

Det er primært netværksadministratorer og udviklere der skal være opmærksom på problemet, og som kan gøre noget for at afbøde, analysere og løse problemet.

Læs overordnet om problemet (Engelsk): TLS 1.2 support at Microsoft...
Læs detaljeret om problemet og løsningerne (Engelsk): Solving the TLS 1.0 Problem...

Løsning på fejl vedr. SQL Servers instansnavn som ikke matcher computerens navn

af Henrik Jensen 28. september 2017 08:00

Jeg flyttede for nyligt SQL Server på et hostingcenter, og stødte i den forbindelse på en sjælden fejl.

Den nye SQL Server havde følgende karakteristika:

  • SQL Server 2016 Standard Edition
  • 2 Instanser (CRM 2015 og CRM 2016)

SQL Serverens navn var xxHOSTCRMSQL-STD (xx er opfundet for at skjule kundens identitet). Med dette navn skulle de 2 instanser så have følgende navne:

  • xxHOSTCRMSQL-STD\MSSQLSTD2015
  • xxHOSTCRMSQL-STD\MSSQLSTD2016

I forbindelse med etableringen af instanserne fremkom der en fejl som indikerede at server-delen af navnet (xxHOSTCRMSQL-STD) på instansen var for langt. Jeg troede at vi var ovre den tid med korte navne på servere...men nej!

Navnet på serveren skulle ændres (til xxHOSTSQL-STD), og dem som har prøvet det på en server som har installeret SQL Server ved at det gør man ikke bare. Normalt skal man afinstallere og installere SQL Serveren igen efter ændringen af serverens navn. Men sådan er det ikke med SQL Server 2016. Den kan godt finde ud af at omdøbe SQL Serveren og dens instanser..hurra Microsoft - langt om længe!

Jublen varede dog kun til at CRM-organisationerne skulle flytter, så fremkom følgende ballade:

Så havde ændringen af navnet på serveren alligevel ikke slået igennem alle steder, på trods af at dette blev indikeret i navnet når man åbner de 2 instanser på SQL Serveren.

Løsningen

Løsningen var at fjerne det forkerte navn på de 2 instanser og oprette disse igen. Dette gøres således:

  1. Åbn SQL Serveren med den ønskede instans.
  2. Klik, med den højre musknap, på instansen og vælg New Query.


     
  3. Indtast og eksekver følgende kommando for at identificere navnet på instansen: select @@servername
    Resultatet er: xxHOSTCRMSQL-ST\MSSQLSTD2015, altså det forkerte navn.
     
  4. Fjern navnet ved at eksekvere følgende kommando: SP_DROPSERVER "xxHOSTCRMSQL-ST\MSSQLSTD2015"
     
  5. Opret det nye navn ved at eksekvere følgende kommando: SP_ADDSERVER "xxHOSTSQL-STD\MSSQLSTD2016", local
     
  6. Tjek evt. navnet ved at eksekvere følgende kommando: SP_HELPSERVER

Løsningen på fejlmeddelelsen: "The current active key (KeyType: CrmWRPCTokenKey) is expired"

af Henrik Jensen 22. september 2017 14:02

Jeg har tidligere oplevet fejlen "The current active key (KeyType: CrmWRPCTokenKey) is expired" i tidligere versioner af CRM, men nu er det ligesom at fejlen er ved at dukke op igen.

 

Senest har jeg oplevet fejlen i følgende setup:

 

 

Løsningen

Ved ovennævnte CRM-setup var løsningen følgende:

FrontEnd-servere

  1. Åbn en Kommandoprompt (Eleveret) og indtast følgende kommando: "C:\Program Files\Microsoft Dynamics CRM\tools\Microsoft.Crm.Tools.WRPCKeyRenewal.exe" /R
  2. Lav en IISRESET
     

BackEnd-server

  1. Genstart følgende Services:
    • Microsoft Dynamics CRM Asynchronous Processing Service
    • Microsoft Dynamics CRM Asynchronous Processing Service (maintenance)
       
  2. Åbn en Kommandoprompt (Eleveret) og indtast følgende kommando: "C:\Program Files\Microsoft Dynamics CRM\tools\Microsoft.Crm.Tools.WRPCKeyRenewal.exe" /R
     
  3. Genstart følgende service:
    • Microsoft Dynamics CRM Monitoring Service

Fejl vedrørende Sandbox-processer og Trace directory i Dynamics 365 Onpremise

af Henrik Jensen 18. september 2017 08:04

I forbindelse med installation og konfiguration af Dynamics 365 Onpremise, vil man rende ind i et irriterende problem som vedrører Sandbox-processer og en fejl vedrørende Trace directory.

Fejlene forekommer primært ved implementering af Opdatering 2.1.

Fejlen vedrørende Sandbox-processer forekommer primært hvis man har selvudviklede plugins eller implementeret løsninger med plugins, og medfører at CRM kører en del langsommere end normalt, og man vil se at CRM-serveren bruger op til 100% CPU. Fejlen forekommer også hvis man benytter en eller flere Backend- og Frontend-servere.

Fejlen vedrørende Trace directory kan man se i Event Vieweren, hvor der vil optræde rigtig mange fejl som indikerer "Invalid Trace Directory". Fejlen har eksisteret siden CRM-version 2011. Læs tidligere blogindlæg: Fejlmeddelelse samt aktiveres af sporing i MS CRM 2011...

 

Faktisk hænger de to fejl sammen.

Løsningen

Løsningen er tildels ulogisk, idet man skal angive et trace directory (logisk) men også enable tracing (ikke logisk). Vær opmærksom på at det medfører at der bliver oprettet trace-filer i det directory man angiver.

Man kan enten benytte Powershell og køre følgende kommandoer på CRM-serveren/serverne:

Add-PSSnapin Microsoft.Crm.PowerShell
$Setting = Get-CrmSetting TraceSettings
$Setting.Enabled = $True 
$Setting.CallStack=$True 
$Setting.Categories="*:Error" 
$Setting.Directory="C:\Program Files\Microsoft Dynamics CRM\Trace"
Set-CrmSetting $Setting

 

Man kan også oprette følgende i Registreringsdatabasen (Registry), under HKLM\Software\Microsoft\MSCRM:

Key Type Indstilling
TraceDirectory String C:\Program Files\Microsoft Dynamics CRM\Trace
TraceEnabled DWORD 1
SandboxHostMinWorkerProcesses DWORD 1

Genåbne Salgsmulighed, Tilbud eller Ordre

af Henrik Jensen 2. september 2017 09:12

Når man lukker en Ordre i CRM så bliver Ordren samt tilhørende Produkter deaktiveret.

Hvis man ønske at ændre en ting ved en lukket Ordre eller dens Produkter er det, som udgangspunkt, ikke muligt, da den jo er lukket. Men det er faktisk muligt at genåbne en Salgsmulighed, Tilbud og Ordre med en Arbejdsproces (Workflow).

Arbejdsprocessen (Workflow) og indstil følgende:

Man kan også indstille statussen til Ny.

Efter aktivering af Arbejdsprocessen (Workflow'et) kan man køre det i forhold til den eller de Ordrer man ønsker genåbnet.

Vigtigt!

Når man genåbner et Tilbud eller en Ordre, skal man være opmærksom på, at det kan påvirke diverse rapporter i forhold til Pipeline, Hvornår Tilbud og Ordrer er lukket mv.

Når man f.eks. atter lukker en Ordre, vil CRM automatisk udfylde datoer for hvornår Ordren er lukket, og disse felter har man ikke mulighed for at påvirke, med mindre man har databasen til rådighed...og det er ganske usupporteret at ændre data direkte i databasen.

Programmering: Feltet Status årsag opfører sig ikke som forventet...

af Henrik Jensen 19. august 2017 08:52

Jeg faldt over et blogindlæg, som meget fint beskriver en problemstilling, som jeg er rendt ind i et par gange og som der er en løsning til.

Hvis man, med programmering, vil indstiller feltet Status årsag (statuscode) i onLoad-eventen, så er det ikke altid at feltet bliver indstillet til det man ønsker, ja faktisk forbliver tomt!!!

Her sættes feltet:

Her er resultatet:

Læs mere om problemet og løsningen i dette blogindlæg (Engelsk): Options sets and statuscode – doing some testing...

Undgå automatisk oprettelse af dubletter

af Henrik Jensen 13. august 2017 16:45

For nogen tid siden oplevede en af mine kunder at der blev oprettet dubletter af Kontaktpersoner. I perioder blev der oprettet flere hundrede Kontaktpersoner indenfor få minutter...altså ikke en menneskelig handling. Der måtte være noget kode bagved som spillede et puds.

Analysen

Jeg lavede den sædvanlige analyse af Arbejdsprocesser (Workflows), Plugins, Klientside-kode, Forretningsregler (Business Rules). Men der var ikke noget af det som oprettede Kontaktpersonerne.

En anden underlig ting var, at det ofte var en bruger med navnet CRMAdmin, som oprettede Kontaktpersonerne, og vi havde en overgang i tankerne at det kunne være NN Markedsdata (Som nu hedder Bisnode), som var årsagen. NN Markedsdata var inde over for at hjælpe med analyser, og vi endte med at konkludere at årsagen ikke var NN Markedsdata.

Jeg valgte at oprette en supportsag hos Microsoft, som sagde, at de havde lignende sager hos andre kunder.

Årsagen

Årsagen til problemet er en smule mystisk. Det viser sig nemlig at handle om 2 ting:

  1. Der benyttes Server Side Synchronization
  2. Der er ikke mindst 1 aktiv Dublet-regel under Kontaktpersoner

Microsoft har erkendt at der er tale om en fejl (bug) i CRM, og at den vil blive rettet i en fremtidig opdatering.

Løsningen

En midlertidig løsning er at aktivere mindst 1 Regler for registrering af dubletter. I dette tilfælde aktiverede vi 2 regler og analyserede over 3 dage for at konstatere at der ikke længere blev oprettet dubletter.

Reglerne har følgende kriterier:

Opdateringspakke 1 til Dynamics 365 (Serviceopdatering 2 til MS CRM 2016)

af Henrik Jensen 21. maj 2017 09:44

Microsoft har frigivet Opdateringspakke 1 til Dynamics 365 (Serviceopdatering 2 til MS CRM 2016).

Denne opdateringspakke indeholder primært fejlrettelser.

Opdateringen kan implementeres på alle installationer med Serviceopdatering 2 (Dynamics 365) (8.2.0000.0749).

Læs mere op Opdateringspakken: Opdateringspakke 1 til Dynamics 365 (Serviceopdatering 2 til MS CRM 2016)...

Bliv medlem af CRMUG DK

De regionale afdelinger i CRMUG giver mulighed for a mødes med andre medlemmer af CRMUG i dit lokalområde. Hermed får du mulighed for at mødes ansigt til ansigt og vidensdele med andre brugere af Microsoft Dynamics CRM i dit område.

Læs mere den Danske afdeling af CRMUG...

Om Henrik Jensen

Jeg har altid fingeren på pulsen når det drejer sig om Microsofts produkter & teknologier, og især når det handler om Microsoft Dynamics CRM.

Henrik Jensen

Jeg har arbejdet professionelt i IT-branchen mere end 25 års, deraf mere end 18 år med CRM-systemer, og samtidig indehaver af mere end 50 Microsoft-certificeringer.

Mobil: +45 20 300 300
E-mail: hj@easyconsult.dk

EASYConsult ApS

Læs mere...

Downloads, værktøjer, installation og JScript

Downloade komponenter til MS CRM:
    • Microsoft Dynamics CRM 4.0
    • Microsoft Dynamics CRM 2011
    • Microsoft Dynamics CRM 2013
    • Microsoft Dynamics CRM 2015
    • Microsoft Dynamics CRM 2016

Liste over Opdateringspakker (Rollups):
    • Microsoft Dynamics CRM 4.0
    • Microsoft Dynamics CRM 2011
    • Microsoft Dynamics CRM 2013
    • Microsoft Dynamics CRM 2015
    • Microsoft Dynamics CRM 2016

Værktøjer til MS CRM:
    • Liste med værktøjer til MS CRM

Krav og opsætninger til installation:
    • Krav og opsætninger MS CRM 2011
    • Krav og opsætninger MS CRM 2013
    • Krav og opsætninger MS CRM 2015
    • Krav og opsætninger MS CRM 2016

JScript eksempelkode:
    • Javascript API-reference
    • Javascript eksempelkode

Diverse værktøjer:
    • Sysinternals
    • PowerShell og MS CRM 2011

Visual Studio, SSIS og Kingswaysoft
    • Visual Studio 2017
    • Dataværktøjer (SSIS) 2017
    • Kingswaysoft

Månedsliste

Forbehold

Alt hvad du læser på denne blog er alene udtryk for mine egne holdninger og meninger, og kan ikke henføres til andet end som så.

De løsninger jeg fremstiller på denne blog er ikke nødvendigvis testet i et driftsmiljø. Hvis du gør brug af mine løsninger er det på eget ansvar.