DDC BC 15 januari 2019 - Developing Business Central Extensions

Dinsdag, 15 januari 2019, door Freddy Kristiansen

Het was mijn eerste bezoek aan de DDC en beviel me goed. Interessante presentaties, veel vakcollega’s en goed geregelde catering en locatie. Bij het aanmeldingen had ik me opgegeven om een samenvatting te schrijven en werd geselecteerd om over de Developing Business Central Extensions presentatie een samenvatting te schrijven.
 
Het onderwerp van de DevOps presentatie ging over het implementeren van source control en CI/CD (Continuous Integration/Continuous Delivery) bij het ontwikkelen van extensions in AL met Visual Studio Code. Toen ik me hiervoor ingeschreven had, had ik gehoopt dat het nog een beetje over ontwikkelen in AL ging, maar helaas, daar sloot de presentatie Business Central en dotnet beter op aan.


Zelf ben ik al gewend aan source control, automatisch testen en contineus delivery. Maar in CAL, niet in AL. Freddy Kristiansen van Microsoft geeft op zijn blog veel tips over hoe je het beste dit in kan richten met Git en Azure DevOps. Mocht je dus direct aan de slag willen, dan heb je hier een link naar zijn blog (GitHub / MSDN / Twitter). Of kijk op het Dynamics 365 BC Ready To Go blog (link).

Eindelijk een professioneel ontwikkel platform

Met de komst van AL en ontwikkelen in Visual Studio Code is Dynamics NAV/Dynamics 365 BC eindelijk een professioneel ontwikkel platform geworden. Toen ik dat hoorde schrok ik een beetje en vroeg me af waar we de afgelopen jaren dan mee bezig zijn geweest. Maar Freddy doelt op het feit dat AL gebaseerd is op bestanden en gemakkelijker in source control beheert kan worden.
 
Hierdoor ontstaan een aantal voordelen;

  • Gemakkelijker te mergen naar andere branches
  • Compilatie en emulatie voordat men in de cloud publiceert
  • Automatisch creëren van build bij het goedkeuren van een Pull request
  • Runnen van automatische tests in de build
  • Reviewen van wijzigingen (Pull requests) 
  • Met C/AL was dit moeilijker te realiseren dan nu met AL.

Continuous Integration

Wanneer men in AL gaat programmeren en in Visual Studio Code werkt, dan is Git geadviseerd om te gebruiken voor Source Control volgens Freddy. In de presentatie kwamen 2 voorbeelden voor workflows in Git naar voren.

  • Simpel – workflow zonder branches en reviews
    Deze geeft geen garantie op een functionele build, want men kan direct in de master de changeset pushen. Zonder reviews (Pull request) aan te vragen.
  • Voorkeur – workflow met branches en reviews (pull requests)
    Met deze opzet heb je meer garantie op een functionele build, want elke Pull request wordt goedgekeurd en getest. Zie hier voor instellingen op MSDN.
    Daarnaast kan men met branches/features werken en gemakkelijk een fix, door mergen naar andere releases.

Continues Delivery

Als Source Control opgezet is, dan is de volgende stap het automatisch builden van een release. In DevOps laat Freddy zien hoe je met Docker (build container) en YML script de Pipeline definities kan opzetten, zodat na elke succesvolle Pull request een build gemaakt wordt welke gecompileerd, getest en klaar gezet wordt om te kunnen uitleveren.
 
YML is gemakkelijker te beheren dan Powershell. Ook hier zijn voorbeelden van op zijn blog.

Vragen uit de zaal

  • Is het mogelijk om een extensie op een extensie te bouwen?
    Ja, dat is een ondersteund scenario
  • Hoe kunnen we lokalisaties combineren?
    Daar hebben we nog geen idee over. Als je een idee hebt, dan mag je het doorsturen naar Freddy, hoe gek het idee ook mag zijn.

Verslag: Sjoerd de Clippelaar
Foto's: Vincent van Rens

« Naar het overzicht

Events

29 oktober 2019 - Dynamics 365 BC Event, 29 oktober 2019
Van der Valk Hotel Veenendaal | Bastion 73 | 3905 NJ Veenendaal
Datum: 29 oktober 2019
Meer informatie »

12 juni 2019 - DDC Jaarevent 12 juni 2019
MeetinOffice, De Bleek 13, 3447 GV Woerden
Datum: 12 juni 2019
Meer informatie »

27 maart 2019 - Dynamics 365 BC Event, 27 maart 2019
Van der Valk Hotel, Bastion 73, 3905 NJ Veenendaal
Datum: 27 maart 2019
Meer informatie »


Nieuws

Dutch Dynamics Community - Nieuwsflits * Oktober 2019
16 oktober 2019
Lees bericht »

Event data 2019-2020
18 september 2019
Lees bericht »

Dutch Dynamics Community - Nieuwsflits * Juni 2019
06 juni 2019
Lees bericht »


Blog

DDC Rondetafel Werving en opleiding - Woerden 12 juni 2019
18 juli 2019
Lees blog »

DDC BC/FO-avond Woerden 12 juni 2019 - Algemeen
12 juni 2019
Lees blog »

DDC BC/FO 12 juni 2019 - Security architecture in Microsoft Dynamics 365 for Finance and Operations
12 juni 2019
Lees blog »

Wat is de Dutch Dynamics Community?

Ons doel is het delen van kennis en ervaringen rondom Microsoft Dynamics software.

We bieden de mogelijkheid aan alle Microsoft Dynamics Professionals om met elkaar in contact te komen en deel te nemen aan presentaties en discussies.

Laagdrempelig, onafhankelijk, diepgaand en altijd actueel.

Om iedereen op de hoogte te houden kun je je inschrijven voor een van onze nieuwsbrieven:

Schrijf je hier in voor de Business Central nieuwsbrief

Schrijf je hier in voor de Finance & Operations nieuwsbrief

Platinum sponsors


Gold sponsors

 

Sapphire sponsors


Silver sponsors


Club van 100

c100