Einfach & transparent: Cloud Development für Microsoft Dynamics 365 Business Central

Welche neuen und innovativen Möglichkeiten bietet Ihnen Microsoft Dynamics 365 Business Central im Entwicklungsbereich? Wie sieht dies in der Praxis aus? Das zeige ich Ihnen anhand eines direkten Programmierungsbeispiels und stelle Ihnen meine Top 3 Funktionen in diesem Blog vor.

Bild_development-unsplash

Die erste innovative Entwicklung im Vergleich zum Vorgänger ist, dass Business Central in der Cloud individuell anpassbar und um neue Funktionen ergänzbar ist.

Die Erweiterungen nennt Microsoft im Business Central Umfeld „Extensions“. Mithilfe der neuen, zentral platzierten Entwicklungsumgebung Visual Studio Code können Entwicklungen lokal entwickelt, aber trotzdem nativ in der Azure Cloud umgesetzt werden.

Eine neue zentrale Entwicklungsumgebung: Visual Studio Code

Die neue Entwicklungsumgebung erlaubt eine direkte Verbindung von Business Central in die Cloud mittels Sandbox.

Mit Visual Studio Code und dem entsprechenden Framework für die „Business Central AL“ Entwicklung können Extensions programmiert, getestet und automatisch in der Cloud bereitgestellt werden.

Diese Erweiterungen bieten eine einfache Möglichkeit Microsoft Dynamics 365 Business Central anzupassen, ohne den Standard-Code oder zukünftige Upgrades zu beeinträchtigen. Wie einfache Änderungen bzw. Verarbeitungen über Extensions umsetzbar sind, zeige ich Ihnen im folgenden Praxisbeispiel:

HowTo – Einstieg in die Entwicklung

Alle Funktionen in Dynamics 365 Business Central sind in Objekten codiert. Das Erweiterungsmodell ist objektbasiert. Sie erstellen neue Objekte und erweitern vorhandene Objekte, je nachdem, was Ihre Erweiterung tun soll. Tabellenobjekte definieren das Tabellenschema, das Daten enthält. Page-Objekte stellen die in der Benutzeroberfläche angezeigten Seiten dar. Darüber hinaus bestehen Codeunits aus Codes für logische Berechnungen und für das Anwendungsverhalten. Diese Objekte werden als Code (AL-Code) gespeichert und in Dateien mit der Dateierweiterung .al gespeichert

Die AL Language-Erweiterung für Visual Studio Code bietet sämtliche Vorteile einer modernen Entwicklungsumgebung. Zusätzlich wird eine nahtlose Integration von Veröffentlichung und Ausführung in den Dynamics 365 Business Central-Mandanten geboten.

Quelle (Englisch): https://docs.microsoft.com/de-at/dynamics365/business-central/dev-itpro/developer/devenv-dev-overview

Bild_thisisengineering-unsplash

Welche Vorteile bietet Ihnen Visual Studio Code (VS Code)?

  • Microsoft Visual Studio Code ist ein OpenSource Code-Editor zum Entwickeln und Debuggen moderner Cloud- und Webanwendungen.
  • Zusätzlich zum reinen Syntax-Highlighting wird eine Autovervollständigung geboten, die Benutzereingaben sinnvoll ergänzt. Ein Pop-up zeigt zuvor deklarierte Variablen, im Programmkontext erreichbare Methoden, Funktionen und Objekte oder auch umfangreiche Vorlagen von häufig verwendeten Codestücken (Templates und Snippets) an.
  • In VS Code lassen sich dank Split- oder Side-by-Side-Editing mehrere Editorfenster nebeneinander öffnen. Mit der Mehrfachauswahl können mehrere Zeilen gleichzeitig interaktiv geändert werden, beispielsweise beim Umbenennen von Variablen. Die Codenavigation ermöglicht zielgerichtetes Suchen nach bestimmten Codestellen, etwa nach Methoden oder Symbolen.
  • Der standardmäßige Funktionsumfang von VS Code lässt sich durch zusätzliche Pakete erweitern. Die Anpassungen reichen vom Aussehen und Verhalten der Bedienoberfläche bis hin zu Kernfunktionen des Editors. Beispielsweise durch die „AL Extension“, die den VS Code dazu befähigt die Business Central Sprache zu interpretieren bzw. den integrierten Zugriff auf das Microsoft eigene Source Code Management System Azure DevOPs.

Quelle: https://www.heise.de/newsticker/meldung/Test-Microsoft-Visual-Studio-Code-ein-Editor-mit-integriertem-Debugger-4026553.html

 

Welche Anforderungen sind notwendig?

  • Visual Studio Code
    • Erweiterung “AL Extensions” installiert
  • Microsoft Account

 

“Getting started”

Das Programm „Visual Studio Code“ starten und in der Command Leiste “AL: Go” auswählen:

Screenshot_Visual Studio Code Start_ALGo

Es wird dadurch automatisch ein Demo-Projekt erzeugt. Sie können mit Unterstützung des Einrichtungs-Assistenten die gewünschte Umgebung für Ihre Demo Cloud Umgebung auswählen. In unserem Fall habe ich die „Business Central 2020 Wave 1“ gewählt (Version 16).

 

Nach der Authentifizierung wird das Projekt automatisch geöffnet:

Screenshot_Visual Studio Code_Project launch

 

Als Beispiel wird eine „Hello World“ Message in der Kundenliste ausgegeben:

Screenshot_Visual Studio Code_Hello World

 

Weiterhin können Sie mit einfachsten Mitteln weitere Felder in vorhandenen Tabellen hinzufügen (TableExtension).

Hier wird die Kundentabelle mit einem neuen Textfeld „DemoBlog1“ erweitert:

Screenshot_Visual Studio Code_Textfeld DemoBlog1

Eine weitere Möglichkeit ist, dass komplett eigene sogenannte individuelle Tabellen anlegen werden, welche dann in der „Extensions“ zur Verfügung stehen.

 

Wie wird konfiguriert?

Der nächste Schritt besteht darin, die Extension entsprechend zu konfigurieren. Dies ist über die „app.json“ Datei möglich.

Screenshot_Visual Studio Code_Konfiguration app.json

Für die folgenden Informationen können entsprechende Namen hinterlegt werden:

      • die Erweiterung
      • der Firmenname
      • die Version
      • das Logo.

 

Darüber hinaus wird die Ziel-Version der Extension gesteuert und kann für zukünftige Updates des Cloud Systems aktualisiert werden.

 

Im Anschluss Installation und Test

Durch Drücken der „F5“-Taste wird die neue Extension erzeugt und in unsere neu generierte Sandbox automatisch installiert. Im Zuge dessen wird zusätzlich der Browser geöffnet und die Sandbox Umgebung geladen.

Screenshot_Extension fertig

Voila! Unsere erste „Extension“ ist fertig!

 

Alt vs. neu – wo liegt der Vorteil?

Der große Vorteil zu früheren Versionen ist, dass das Standard Produkt Microsoft Dynamics 365 Business Central an sich unverändert bleibt, sondern nur um klar definierte Objekte erweitert wird.

Damit sind laufende Updates des Standard Produkts in der Cloud Umgebung problemlos möglich.

 

Meine Top 3 Funktionen

 

Microsoft hat mit seinem hauseigenen ERP System „Dynamics 365 Business Central“ einen großen Schritt in die Zukunft gewagt. Welcher insbesondere aus technischer Sicht durchaus gelungen ist. Um dies zu unterstreichen möchte ich meine Top 3 Funktionen herausheben:

 

  • Durch die Business Central Einführung existiert jetzt eine klare Trennung zwischen Standard Applikation und Partner-Erweiterungen. Der zentrale Vorteil ist, dass Updates der Business Central Standard Version (Cloud & OnPremise) nachvollziehbar und mit wenig Aufwand möglich sind.

 

  • Mit der Transformation des Systems in die Cloud wurde ein neuer zentraler Platz geschaffen, damit Partner Erweiterungs-Produkte einfach anbieten können. Gleichzeitig schafft das einen Mehrwert für die Kunden, da diese Erweiterungen in diesem zentralen Market Place einfach gefunden, lizensiert und installiert werden können.

 

  • Die Entwicklung mit Business Central ist ab jetzt vollständig textbasiert. Damit sind Code Analysen und die Code Versionierung mit modernen Source Code Management Systemen wie z.B. GIT einfach möglich. Da GIT im VS Code automatisch voll integriert ist, vereinfacht das die interne Zusammenarbeit von Entwicklungsteams massiv. Zusätzlich wird damit die Transparenz und Nachhaltigkeit des geschriebenen Source Codes erhöht.

Mein persönlicher Eindruck:

So einfach und transparent war die ERP-Entwicklung noch nie! Daher kann ich aus Entwickler Perspektive nur sagen: „Weiter so“.

 

Zur Person Gerald Brunner:

 

Bild_Gerald Brunner

Gerald Brunner ist seit mehr als 20 Jahren in der IT-Branche, als Entwickler und IT Consultant, tätig. Seit Juli 2019 leitet er die Entwicklung bei der NewVision Group. Zu seinem Verantwortungsbereich zählen vor allem die technische Koordination, Projektplanung und Vereinheitlichung der Prozesse, der gesamten NewVision Entwicklung.

Davor war er 10 Jahre erfolgreich als Entwicklungsleiter und BI/Datenbank Consultant bei einem IT-Unternehmen in Wien tätig.

Sein Herz schlägt auch abseits der beruflichen Tätigkeit für die Technik, insbesondere neue Technologien wie zum Beispiel Home Automation oder erneuerbare Energiegewinnung.

Gerald Brunner lebt mit seiner Frau am Stadtrand von Wien, seine Freizeit verbringt er gerne im Grünen oder entspannt im Garten.

 

 

 

#microsoft #azure #businesscentral #cloud #cloudcomputing #digitalisierung #digitaletransformation #microsoftdynamics #dynamics365 #erp #development

Bilder: (c) unsplash; Eigene Aufnahmen (c) NewVisionGroup

Gerald Brunner 13.10.2020