JScript mere effektivt i Visual Studio

I forbindelse med det nye framework for JScript i MS CRM 2011, anbefaler Microsoft nye metoder til skrivning af Klient-baseret JScript-kode.

For at lette skrivningen af JScript-kode i Visual Studio samt at give mulighed for at simulere forskellige funktioner med data fra MS CRM, har Microsoft oprettet et dokument, som beskriver de komponenter, der skal installeres samt en beskrivelse af funktionere, hvilket dette indlæg handler om. Dokumentet readme.docx findes i SDK'et i mappen \sdk\templates\xrm.pagescriptprojecttemplate.

Dokumentet beskriver installation af 2 komponenter:

  • Xrm.Page JScript Library Project: Mulighed for at oprette et MS CRM JScript-projekt i Visual Studio.
  • Xrm.Page Script Development Form Snapshot: Komponent, i MS CRM, som giver mulighed for at eksportere MS CRM-data, som kan bruges til simulationer.
     

Xrm.Page JScript Library Project

Efter installationen af udvidelsen xrmpagescriptdevelopmentprojectcs (C#) eller xrmpagescriptdevelopmentprojectvb (Visual Basic) kan man oprette et JScript-projekt i Visual Studio ved at vælge File, New Project.

Når projektet er oprettet opnår man følgende:

Forklaring til de forskellige dokumenter:

  • My.Library.js: Anbefalinger til navngivning af functions, samt anvendelse af namespace i JScript-kode.
    I dette eksempel er CRMBlog namespace. Læg mærke til kaldet af funktionen fra funktionen sampleFunction.
     
  • My_Library.js: Alternativ anbefaling til navngivning af functions, uden anvendelse af namespace i JScript-kode.
    JScript-functions uden brug af namespaces.
     
  • PageData.js: Dokument hvor i man kan kopiere live MS CRM-data, som kan bruges til simulationer.
    Se under afsnittet Xrm.Page Script Development Form Snapshot, for yderligere information om brugen af PageData.js-dokumentet.
     
  • XrmPageTemplate.js: Dokumentet skaber MS CRM-IntelliSense ved skrivning i JScript-koden.
     
  • TestPage.htm: Et dokument til test af den kode man har skrevet sammen med MS CRM-data fra dokumentet PageData.js.
    Eksempel på kode i dokumentet My.Library.js. Læg mærke til de 2 functions; firstFunction og secondFunction:

     
    I dokumentet TestPage.htm "kaldes" de forskellige functions (firstFunction og secondFunction). Bemærk endvidere at Account Name-feltet (name) hentes fra MS CRM. Værdien hentes rent fysisk fra dokumentet PageData.js, som indeholder en kopi af live data fra MS CRM.
    For at teste koden køres htm-filen (tast evt. F5).
     
    Bemærk: Første gang man "kører" filen TestPage.htm vil man blive bedt om at oprette en web.config-fil. Dette accepteres således:
     

     
     

Xrm.Page Script Development Form Snapshot

Simuleringer af data og funktioner kan opnås ved at kopiere data fra MS CRM til filen PageData.js. Først skal man dog importere løsningen xrmpagescriptdevelopmentformsnapshot_1_0_0_0_managed. Løsningen findes i SDK'et (\sdk\templates\xrm.pagescriptprojecttemplate).

Efter importen af løsningen kan man f.eks. åbne et Firma og derefter klikke på båndet Tilpas.


Læg mærke til knappen Xrm.Page Snapshot.

Ved klik på knapen åbnes dialogboksen Event Context.

Vælg evt. OnLoad i listen Choose an Event, og klik på knappen Get Data.

Data fra det Firma, man tidligere åbnede, vises nu i en tekstboks. Klik på knappen Copy to Clipboard, for at kopiere tekstboksens indhold.

Returner til Visual Studio, i det Xrm-projekt du ønsker at arbejde i, og åbn dokumentet PageData.js.

Marker al teksten i dokumentet (evt. ved brug af CTRL+A). Indsæt de nye data (evt. ved brug af CTRL+V).

Data (Felter, Etiketter, Meddelelser mv.) er nu tilgængelige fra Firmaet, og kan benyttes til testformål.

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
    • Microsoft Dynamics 365

Ikoner:
    • Icons8

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
    • Krav og opsætninger Dynamics 365

JScript eksempelkode:
    • Javascript API-reference
    • Javascript eksempelkode

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

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

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.