Einrichtung VSCode und MS Sandbox für AL/BC

7. Mai 2024 20:46

Liebe Community,

ich bin neu hier im Forum und auch neu in der Welt der Programmierung im Allgemeinen sowie speziell im Bereich MS Dynamics 365 (Business Central). Ich beschäftige mich erst seit 3 Tagen mit diesem Thema, daher sind meine Kenntnisse noch sehr begrenzt. Ich versuche, mich mithilfe von Online-Ressourcen zurechtzufinden und erste Schritte zu unternehmen.

Ich habe einen YouTube-Bootcamp-Kurs begonnen, um die grundlegenden Kenntnisse der Programmierung in AL zu erlernen. Allerdings bin ich gleich zu Beginn auf ein Problem gestoßen, als ich versucht habe, VSCode zu konfigurieren.

Um in AL zu programmieren, muss VSCode konfiguriert werden. Theoretisch sollte die Konfiguration durch die Einrichtung einer Sandbox möglich sein. Dafür müsste man sich im Microsoft 365 Developer Program registrieren, indem man ein Konto bei onmicrosoft.com verwendet.

Ich habe ein neues Konto erstellt und ein Microsoft 365 Business Basic-Abonnement abgeschlossen (mit einem kostenlosen Monat Testzeitraum), sowohl unter Verwendung des Administrator- als auch des normalen Benutzerkontos. Jedoch erhalte ich folgenden Fehler:

"Fehler beim Anmelden mit diesem Konto
Die Anmeldung war nicht erfolgreich. Details finden Sie in den häufig gestellten Fragen zum Microsoft 365 Developer Program.

MS-CorrelationId: 00000000-80b3-4b76-8c9a-2ecc5cdf2493

Code: 41101"

Bei der Recherche im Internet habe ich festgestellt, dass viele Benutzer auf das gleiche Problem gestoßen sind. Es scheint, als läge dies an Änderungen, die Microsoft vorgenommen hat, und daher gibt es derzeit keine Möglichkeit, diese Sandbox zu erhalten. (Falls jemand weiß, wie man sie dennoch erhalten kann, wäre ich sehr dankbar.)

Mir wurde jedoch gesagt, dass eine Alternative Docker sein könnte (was ich momentan nicht kenne). Ich möchte höflich fragen, ob jemand hier im Forum mir erklären kann oder auf ein Tutorial, ein Video usw. verweisen kann, wie Docker für die Verwendung in VSCode konfiguriert werden kann, um praktische Übungen in der AL-Programmierung durchführen zu können (und somit dem YouTube-Bootcamp folgen zu können).

Außerdem wollte ich fragen, ob es sinnvoll ist, zuerst AL zu lernen oder ob es besser ist, zuerst Business Central kennenzulernen (wofür ich natürlich keine Kopie besitze).

Ich danke im Voraus jedem, der mir helfen kann, und entschuldige mich für die Länge meines Beitrags.

Herzliche Grüße,

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 10:06

Herzlich willkommen im Forum!
Ganz ohne Anmeldung kann man BC 24 installieren, das ist zwar für die Variante On-premises, aber da man bei neuen Installationen ohnehin mit Universal Code (also SaaS-kompatibel) programmieren muss, sind die Unterschiede innerhalb von AL nur noch minimal.
Microsoft Dynamics 365 Business Central 2024 Release Wave 1

Mir wurde jedoch gesagt, dass eine Alternative Docker sein könnte (was ich momentan nicht kenne).

Docker verlangt u.a. mehr Hardwareressourcen. Wenn es läuft, eine praktische Sache :wink: .
Docker installieren: https://docs.docker.com/desktop/install ... s-install/
BcContainerHelper installieren: https://www.powershellgallery.com/packa ... nerHelper/ (PowerShell ISE dazu als Admin starten)
Container erstellen (hier die Variante ohne Lizenzdatei nehmen): viewtopic.php?f=79&t=34853&p=144315#p144315

Außerdem wollte ich fragen, ob es sinnvoll ist, zuerst AL zu lernen oder ob es besser ist, zuerst Business Central kennenzulernen (wofür ich natürlich keine Kopie besitze).

Beides gleichzeitig, AL ist nur innerhalb von BC verwendbar und für allgemeine Programmierung unbrauchbar. Mit der öffentlichen Cronuslizenz kann man innerhalb von BC alles Wesentliche ausprobieren und mittlerweile in aktuellen Systemen auch alles programmieren.

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 10:31

Hallo,

Außerdem wollte ich fragen, ob es sinnvoll ist, zuerst AL zu lernen oder ob es besser ist, zuerst Business Central kennenzulernen

Also ein paar Grundlagen von BC solltest du schon verstanden haben, bevor du anfängst zu programmieren.
Denn oft sind Programmierungen nur das Nachvollziehen manueller Schritte die du vorher in der Oberfläche ausprobiert hast.

Gruß Fiddi

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 12:20

Vielen Dank für das herzliche Willkommen!

Zuerst möchte ich auf den Kommentar zum Thema Docker antworten. Gestern Abend habe ich mich tief in die Materie eingearbeitet, da ich zuvor keine Ahnung hatte, was Docker ist. Dabei ist mir aufgefallen, dass die Hardwareanforderungen meines Mini-PCs nicht ausreichen, um Docker zu unterstützen. Ich danke dir herzlich für die Erläuterungen zur Konfiguration.

Nun zur Frage bezüglich AL und BC. Ich habe den Bootcamp-Kurs von Dr. Gomathi entdeckt, der zusammen mit der BC-Tutorial-Playlist mir dabei hilft, die grundlegenden Konzepte der beiden Kontexte zu verstehen. Darüber hinaus bin ich auf den Houggard-Kanal gestoßen, den ich erkunden werde, sobald ich bereit bin, tiefer einzusteigen. Auch die verschiedenen Lernpfade auf der Microsoft-Website habe ich gefunden, aber bevor ich mich damit befasse, muss ich erst die Grundlagen sowohl der Programmierung als auch von BC erlernen.

Jetzt stehe ich vor dem Problem der Sandbox, da ich Docker derzeit nicht nutzen kann. Ich kann nicht programmieren und habe keine Ahnung, was Universal Code ist und welche Unterschiede es zum normalen AL gibt. Anscheinend ist es jedoch die einzige Möglichkeit für mich, praktische Übungen durchzuführen.

So viele Informationen und Konzepte auf einmal, und wenn man bedenkt, dass ich keine Kenntnisse in Programmierung und BC habe, mein Kpf explodiert. :lol:

Vielen Dank für eure Unterstützung und Ratschläge!

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 13:08

Kowa hat geschrieben:Ganz ohne Anmeldung kann man BC 24 installieren, das ist zwar für die Variante On-premises, aber da man bei neuen Installationen ohnehin mit Universal Code (also SaaS-kompatibel) programmieren muss, sind die Unterschiede innerhalb von AL nur noch minimal.
viewtopic.php?f=87&t=39069&hilit=+Download#p151923


In Bezug auf den Universal Code, korrigiere mich bitte, wenn ich falsch liege (ich habe versucht herauszufinden, was es ist):

Theoretisch sollte das Programmieren in Universal Code besser sein, in dem Sinne, dass die entwickelten Apps vom Kunden unabhängig davon genutzt werden können, ob der Kunde eine Cloud- oder On-Premise-Lösung verwendet (oder habe ich das falsch verstanden?).

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 13:26

Bei Universal Code entwickelt man auch für on-premises so, als ob das System als SaaS in der Cloud läuft. Damit ist dann eine spätere eventuelle Migration zum SaaS-System mit minimalen Codeänderungen möglich.
Man kann zwar auch anders arbeiten (also z.B. Standardobjekte direkt verändern (nicht über Table bzw. Pageextensions), statt Events mit Publishern und Subscribern Eingriffe in den Quellcode von MS vornehmen, lokale Netzlaufwerke und Drucker direkt ansprechen, .NET einbinden usw. ) aber das kostet im Einsatz bei Lizenzen ab 03.10.22 dann Strafgebühren, die der Endkunde zahlen muss, Preise siehe hier.

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 13:27

Universal Code bedeutet dass du auch on premise den Einschränkungen einer Cloud/SaaS Lösung unterliegst, z. B. was den Zugriff auf lokale Dateien u. ä. angeht, und dass du die Standardobjekte von Microsoft nicht mehr direkt ändern kannst sondern nur an bestimmten Stellen (Event Publisher) ansetzen kannst.

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 13:29

TheBugDeveloper hat geschrieben:Theoretisch sollte das Programmieren in Universal Code besser sein, in dem Sinne, dass die entwickelten Apps vom Kunden unabhängig davon genutzt werden können, ob der Kunde eine Cloud- oder On-Premise-Lösung verwendet (oder habe ich das falsch verstanden?).



völlig korrekt. Als ein Beispiel wäre hier der Zugriff auf das Dateisystem genannt-> OnPrem könnten wir auf das Dateisystem direkt schreiben/lesen. In der Cloud natürlich nicht.
Wird die App(app.json) dann auf Target Cloud gestellt, verfliegt die Möglichkeit direkt mit dem Dateisystem zu interagieren (einfach gesprochen: Target = Cloud => Universal Code).
Damit man OnPrem trotzdem mit dem Dateisystem interagieren kann, schaltet man "einfach" eine Middleware (z.B. Webservice) dazwischen - dann rufen wir in AL anstatt das Filesystem direkt, halt den Webservice auf - der Dateien liest/schreibt/löscht/etc.

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 13:53

Mehr oder weniger glaube ich, dass ich es verstanden habe.
Aus Ihren Erklärungen scheine ich jedoch zu verstehen, dass es sich hierbei um fortgeschrittene Programmiersituationen handelt und sicherlich nicht um etwas, das die Anfangsphasen des Erlernens der BC- und AL-Programmierung beeinflussen kann.

Danke

Re: Einrichtung VSCode und MS Sandbox für AL/BC

8. Mai 2024 14:27

Dateien importieren und verarbeiten und Belege ausdrucken sind eher erweiterte Basisfunktionen. Wenn die Importdatei aber aus dem Cloudspeicher geholt werden muss, ist in AL ein anderer Umgang damit erforderlich, als wenn die auf Laufwerk C: oder im Intranet liegt.
Drucken aus der Cloud ist ein komplexes Thema und ebenfalls anders, als einen Bericht einem Drucker direkt zuzuweisen. Die Lösung von MS sieht so aus: Was sind Ihre Druckmöglichkeiten in Business Central?, es gibt aber auch Fremdanbieter, die dafür Zusatzmodule anbieten.
Der Umgang mit Events gehört auch zum Basislernpfad: Use events and triggers in Dynamics 365 Business Central

Re: Einrichtung VSCode und MS Sandbox für AL/BC

13. Mai 2024 09:11

Nach zahlreichen Versuchen und Bemühungen ist es mir endlich gelungen, die Microsoft Sandbox zu erhalten und VSCode einzurichten. :-D