Visual Studio Code Einrichtung
In dieser Hilfe wird kurz die Einrichtung von Visual Studio Code
erklärt.
Voraussetzung zum Arbeiten mit AL, DevOps und Docker ist eine installierte GIT- und Docker-Anwendung.
VSCode Settings
Bezüglich AL sind folgende Einstellungen von Nutzen:
Wenn nicht Standardmäßig eingestellt:
al.enableCodeAnalysis: true,
al.codeAnalyzers: ["${CodeCop}","${UICop}(OPTIONAL)"],
al.assemblyProbingPaths: ["./.netpackages","C:/Windows/assembly/","C:/Program Files/Microsoft Dynamics 365 Business Central/[NAME]/Service/Add-ins"],
git.autofetch: true,
VSCode Extensions
Die AL Language
ist essentiell für die Enwicklung von Extensions in AL.
Jede NAV Version hat ihre eigene AL Language, welche ausschließlich nur mit der NAV Version kompatibel ist. Um die richtige VSIX
für die Programmierung auf einem Container zu bekommen, sollte folgende WebSite aufgerufen werden:
http://cronus:8080/
Hier kann die VSIX
runtergeladen werden.
Weitere interessante Extensions
AZ AL Dev Tools/AL Code Outline
Features:
- AL objects wizards
- Symbols browser
- AL symbols outline panel
- Symbols tree view
- AL code generators
- Code actions
- Action images browser
- Documentation comments support
- Code analyzers rules viewer
- Document syntax visualizer
Bracket Pair Colorizer
Mit dieser Erweiterung können zusammenhängende Klammern mit Farben identifiziert werden. Der Benutzer kann definieren, welche Zeichen übereinstimmen und welche Farben verwendet werden sollen.
file-icons
Fügt Dateien im VSCode Explorer schicke Icons hinzu, für eine angenehmere Übersicht.
German Language Pack
Übersetzt alle Visual Studio Code Texte ins deutsche.
Git Graph
Eine schöne Übersicht aller Branches in Git. Besitzt hilfreiche Funktionalitäten.
GitLens
GitLens verbessert die in Visual Studio Code integrierten Git-Funktionen auf. Es hilft dabei, die Quelle vom Code auf einen Blick über Git-Blame und Codeobjektive zu visualisieren, nahtlos in Git-Repositorys zu navigieren und diese zu erkunden, wertvolle Einblicke in leistungsstarke Comparison-Befehle zu gewinnen und vieles mehr.
PowerShell
Ein in Visual Studio Code integriertes PowerShell.
waldo's CRS AL Language Extensions
Eine Reihe nützlicher Befehle, Einstellungen und Snippets, um das Leben eines Entwicklers für Microsoft Dynamics 365 Business Central AL Programmierungen zu erleichtern.
XLIFF Sync
Synchronisiert die globale TranslationFile mit den länderspezifischen Files. Erleichtert das Pflegen von Captions in diversen Sprachen.
Quellenverwaltung
Werden Änderungen an einer Extension vorgenommen, müssen diese erstmal Commitet
werden. Dafür gibt es die Quellenverwaltung an der Seite:
Hier müssen die Änderungen mit dem +
erstmal bereitgestellt werden. Sind diese bereitgestellt, muss ein Commit
ausgeführt werden. Solch ein Commit muss mit einer ordentlichen Nachricht versehen sein, damit nachzuvollziehen ist, was in diesem Commit geändert wurde. Mit einem Klick auf den Haken werden die Änderungen Commitet.
Um die Änderungen nach DevOps zu bekommen, muss mit F1
ein Befehl ausgeführt werden:
git push
Git Befehle
Folgende Git Befehle sind in Visual Studio Code essentiell:
Um sich eine Remote Repo auf die lokale Maschine runter zu laden (zu klonen
):
git clone
Um sich die neusten Änderungen des Remote Repos zu holen und zu integrieren (zu pullen
):
git pull
Um sich die neusten Änderungen des Remote Repos zu holen und neu Aufzubauen (ohne Merge):
git pull rebase
Um lokale Commits in das Remote Repo zu schieben (zu pushen
):
git push
Führt ein Pull und ein Push hintereinander aus (sync
):
git sync
Um die neusten Informationen der Remote Repos/Branches zu ziehen (zu fetchen
):
git fetch (from all remotes)
Um zwischen Branches zu wechseln/ eine neue Branch zu erstellen:
git checkout
Um eine Branch zu löschen:
git delete branch
Git Submodule
Man kann eine Repo als Submodul in eine andere Repo einbinden. Dafür muss man mit Git Bash
in das Repo Verzeichnis navigieren, und führt folgenden Befehl aus:
git submodule add [Weblink zum Repository]
Dies ist dann hilfreich, wenn man das acadon Template für die Online Dokumentationen nutzen möchte. Somit kann man ganz einfach ein anderes Repo einbinden und nutzen.
AL Befehle
Folgende AL Befehle sind wichtig:
Um ein neues AL Projekt inklusive Repo zu starten:
AL Go
Um die Symbole aus der Datenbank bzw. der Dependencies zu laden:
AL Download Symbols
Um die Extensions in eine App zu kompilieren:
AL Package
Um die Extension App zu Publishen:
AL Publish
Mit F5
oder Strg + F5
wird automatisch die Package erstellt und in der launch.json hinterlegten Server gepublished.
Grundsätzliches Arbeiten mit Visual Studio Code
Bevor mit der Programmierung gestartet werden soll, muss auf eine existierende Repo eine neue Branch
erstellt werden. Aus welcher Branch diese erstellt werden soll, ist abhängig von der Aufgabenstellung. Wenn es einen develop
Branch gibt, ist dies meistens auch die Grundlage.
Grundsätzlich muss für jede Programmierung eine neue Branch erstellt werden!
Um eine neue Branch zu erstellen, gibt es folgenden Befehl...:
Git Checkout
Oder auf diesen Knopf drücken:
Wenn die Programmierungen fertig sind, Commitet wurden und nach DevOps gepusht wurden, muss auf diese Branch ein Pull Request
in den develop
gemacht werden.
Hilfreiche Links
AzureDevOpsLabs:
Microsoft "Get Started" Help:
- https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/devenv-get-started
Navision24 Blog Help:
Waldo: