Die Grundlagen der AL-Programmiersprache erlernen

Abgeschlossen

Eine Codeunit ist ein Container für AL-Code (Application Language), den Sie in vielen Anwendungsobjekten verwenden können. Sie würden normalerweise Geschäftslogik in Codeunits implementieren und die Codeunit von dem Objekt aufrufen, das diese spezifische Logik ausführen muss.

Durch Eingabe der Verknüpfung tCodeunit wird das Grundlayout für ein Codeunit-Objekt erstellt, wenn Sie die AL-Spracherweiterung in Visual Studio Code verwenden.

AL ist die Programmiersprache, die zum Bearbeiten von Daten (z. B. das Abrufen, Einfügen und Ändern von Datensätzen) in einer Business Central-Datenbank verwendet wird. Sie dient außerdem zur Steuerung der Implementierung der verschiedenen Anwendungsobjekte wie Seiten, Berichte oder Codeunits.

Mit AL können Sie Geschäftsregeln erstellen, um sicherzustellen, dass die in der Datenbank gespeicherten Daten aussagekräftig und konsistent mit der Art und Weise sind, wie Kunden Geschäfte tätigen.

Im Allgemeinen würden Sie den Code in Codeunits anstatt auf das Objekt schreiben, auf dem er ausgeführt wird. Dieser Ansatz unterstützt ein klares Design und bietet die Möglichkeit, Code wiederzuverwenden. Es hilft auch, die Sicherheit durchzusetzen. Beispielsweise haben Benutzer normalerweise keinen direkten Zugriff auf Tabellen, die vertrauliche Daten enthalten, wie die Tabelle Finanzbuchhaltungseintrag. Sie haben auch keine Berechtigung zum Ändern von Objekten. Wenn Sie den Code, der mit dem Hauptbuch arbeitet, in eine Codeunit einfügen, der Codeunit Zugriff auf die Tabelle gewähren und dem Benutzer die Berechtigung zum Ausführen der Codeunit erteilen, wird die Sicherheit der Tabelle nicht beeinträchtigt, und der Benutzer kann darauf zugreifen.

Wenn Sie Code auf ein Objekt anstatt in eine Codeunit einfügen müssen, platzieren Sie den Code so nah wie möglich an dem Objekt, mit dem es arbeitet. Fügen Sie beispielsweise Code, der Datensätze ändert, in die Trigger der Tabellenfelder ein.

Durch die Wiederverwendung von Code können Anwendungen schneller und einfacher entwickelt werden. Wenn Sie den AL-Code wie vorgeschlagen organisieren, sind Ihre Anwendungen wahrscheinlich weniger fehleranfällig. Durch die Zentralisierung des Codes werden Sie nicht ungewollt Inkonsistenzen erzeugen, indem Sie an vielen Stellen dieselbe Berechnung durchführen. Sie führen beispielsweise mehrere Trigger aus, die dasselbe Tabellenfeld wie ihr Quellausdruck haben. Wenn Sie den Code ändern müssen, können Sie entweder einige dieser Trigger vergessen oder einen Fehler machen, wenn Sie einen davon ändern.

Wenn Sie neue Objekte erstellen, fügen Sie AL-Code in die Trigger dieses Objekts ein. Fast jedes Objekt in Business Central enthält Trigger, mit denen Sie Ihren AL-Code hinzufügen können.

Trigger existieren für die folgenden Objekte:

  • Tabellen und Tabellenerweiterungen

  • Tabellenfelder

  • Seiten und Seitenerweiterungen

  • Berichte

  • Datenelemente

  • XMLports

  • Abfragen

  • Codeunits

Die Verwendung von Ereignissen ist ein bewährtes und etabliertes Programmierkonzept, mit dem Anwendungsaktualisierungen vereinfacht und die Notwendigkeit von Codeänderungen in benutzerdefinierten Anwendungen aufgrund von Änderungen der Anwendungsplattform eingeschränkt oder sogar beseitigt werden können.

Sie können Ereignisse verwenden, um die Anwendung so zu gestalten, dass sie auf bestimmte Aktionen oder Verhaltensweisen reagiert, die auftreten. Mit Ereignissen können Sie benutzerdefinierte Funktionen von der Geschäftslogik der Anwendung trennen. Durch die Verwendung von Ereignissen in der Anwendung, in denen normalerweise Anpassungen vorgenommen werden, können Sie die Kosten für Codeänderungen und Upgrades der ursprünglichen Anwendung auf folgende Weise senken:

  • Codeänderungen an benutzerdefinierten Funktionen können vorgenommen werden, ohne dass die ursprüngliche Anwendung geändert werden muss.

  • Änderungen am ursprünglichen Anwendungscode wirken sich nur minimal auf die Anpassungen aus.

Ereignisse können für verschiedene Zwecke verwendet werden, z. B. zum Generieren von Benachrichtigungen, wenn bestimmte Verhaltensweisen auftreten oder sich der Status einer Entität ändert. Ereignisse können auch zum Verteilen von Informationen und zur Integration in externe Systeme und Anwendungen verwendet werden.