Die logische Datenbank und ihre Objekte entdecken

Abgeschlossen

Dynamics 365 Business Central wird wie viele andere Cloud-Anwendungen auf Basis einer Datenbank erstellt. Diese Datenbank enthält nicht nur die Daten (wie Debitoren, Kreditoren, Produkte usw.). Sie enthält auch jedes Objekt, das in der Anwendung verwendet wird. Wenn Sie Debitorendaten anfordern, werden diese Daten als Seite auf dem Bildschirm mit einer bestimmten Struktur angezeigt.

In der Datenbank von Business Central wird auch die Struktur dieser Seite gespeichert, sodass Entwickler vorhandene Objekte hinzufügen und ändern und neue Lösungen schnell bereitstellen können. Sie müssen keine neue Version des Produkts erstellen, wenn Sie die Position bestimmter Eingabefelder auf dem Bildschirm ändern möchten.

Jede Lösung basiert auf einem oder mehreren Objekten. Sie benötigen Tabellen zum Speichern Ihrer Daten, Seiten zum Präsentieren Ihrer Daten, die Möglichkeit zur Benutzerinteraktion, die Darstellung von Berichten und die Fähigkeit zum Drucken von Daten in bestimmten Layouts.

Mit codeunits können Sie Funktionen gruppieren, die an verschiedenen Stellen wiederverwendet werden sollen. Sie können das Objekt Abfrage verwenden, um die Datenbank abzufragen, und wenn Sie Import‑ oder Exportfunktionen in Ihrer Lösung benötigen, verwenden Sie das Objekt XMLPort.

Die häufig verwendeten Objekttypen umfassen:

  • Tabelle – Beschreibt, wie Daten gespeichert und abgerufen werden.

  • Seite – Ermöglicht Benutzern das Anzeigen, Hinzufügen, Ändern oder Löschen von Datensätzen in einer Tabelle

  • Bericht – Drucken, Verarbeiten oder Anzeigen von Daten in einer Vorschau

  • Codeunit – Container mit Programmcode Codeunits werden von anderen Objekten aufgerufen, um eine bestimmte Aufgabe auszuführen.

  • Abfrage – Ein relationales Datenmodell zur direkten und effizienten Abfrage der zugrunde liegenden Datenbank.

  • XMLPort – Importiert oder exportiert Daten im XML‑ oder Textformat

Business Central besitzt zahlreiche integrierte Funktionsobjekte. Sie können den Quellcode der Objekte nicht ändern, aber Sie können das Verhalten ändern, indem Sie die integrierten Objekte erweitern.

Zwei andere Objekttypen, die Sie verwenden können, sind:

  • Tabellenerweiterung – Erweitert die Funktionalität vorhandener Tabellen

  • Seitenerweiterung – Erweitert die Funktionalität vorhandener Seiten

  • Berichtserweiterung – Erweitert die Funktionalität vorhandener Berichte.

Logische Datenbank

In der Business Central-Datenbank können Sie verschiedene Unternehmen einrichten. Die Daten eines Unternehmens werden als Datensätze in verschiedenen Tabellen gespeichert, und jeder Datensatz besteht aus mehreren Feldern.

Unternehmen sind die größte logische Struktur in einer Datenbank, und Daten sind und sollten größtenteils unternehmensspezifisch sein. Während Daten meist unternehmensspezifisch sind, ist dies bei Objekten nicht der Fall. Als Entwickler erstellen und ändern/erweitern Sie Objekte. Die Objekte gelten dann für alle Unternehmen innerhalb derselben Datenbank.

Abbildung mit einem Design einer logischen Datenbank

Objekte verwalten

Beachten Sie die Konventionen zur Objektnummerierung, bevor Sie neue Objekte für Ihre benutzerdefinierten Lösungen erstellen. Jedes Objekt in Ihrer Business Central-Lösung wird durch eine eindeutige Nummer identifiziert. Mithilfe von Nummerierungskonventionen können Sie die Versionsverwaltung, ‑lokalisierung und ‑anpassung organisieren und erfolgreiche Upgrades sicherstellen.

Die Objektnummern von 0 bis 49.999 sind Objekte, die von Microsoft verwendet und in den weltweiten Versionen genutzt werden. Der Nummernbereich von 100.000 bis 999.999 enthält die lokalisierten Objekte. Diese Objekte sind normalerweise für verschiedene Länder und Regionen der Welt konzipiert. Diese bereichsspezifischen Objekte werden ebenfalls von Microsoft erstellt.

Wenn Sie eine App für Business Central Online entwickeln, müssen Sie im Rahmen der Lizenzierung einen Objektbereich anfordern. Die Entwicklung für Business Central erfolgt unter Verwendung von Visual Studio Code mit der AL-Spracherweiterung für Microsoft Dynamics 365 Business Central.

Aktuell stehen Ihnen zwei Bereiche zur Verfügung, die Sie anfordern können. Beide weisen einige Merkmale auf, die Sie beachten sollten:

  • RSP-Objektbereich (ID-Bereich 1000000-69,999,999) – Dieser Objektbereich ist an das RSP-Programm gebunden. Sie müssen sich mit einem Arbeits‑ oder Schulkonto anmelden, um diese Informationen anzuzeigen. Wir raten neuen Herausgebern derzeit, keinen RSP-Objektbereich anzufordern.

  • App-Objektbereich (ID-Bereich 70,000,000-74,999,999) – Dieser Objektbereich wurde ursprünglich nur für Apps im kommerziellen Microsoft-Marktplatz zur Verwendung in Business Central online entwickelt. Derzeit raten wir neuen Herausgebern, einen App-Objektbereich anzufordern.

Momentan können Sie sowohl im RSP-Bereich als auch im App-Objektbereich entwickelte Apps in Business Central online und vor Ort sowie von Partnern gehostet implementieren.

Weitere Informationen finden Sie unter Anfordern eines Objektbereichs.

In den folgenden Abschnitten werden die verschiedenen Objektbereiche beschrieben, die Sie in der Basisanwendung und den Erweiterungen finden können.

0-49,999

Dieser Bereich ist der Basis-App-Funktionalität von Business Central zugewiesen und darf nicht in Erweiterungen oder Anpassungen verwendet werden.

50.000–99.999

Dieser Bereich ist für Anpassungen und Testzwecke gedacht. Für Business Central Online kann ein Partner eine Erweiterung entwickeln, die auf den jeweiligen Mandanten zugeschnitten ist. Der Partner entwickelt die Erweiterung entweder durch Verwendung eines Sandbox-Mandanten oder durch Abrufen eines Docker-Image. Nach Abschluss der Entwicklung kann die Erweiterung für den einzelnen Mandanten bereitgestellt werden.

Sie können diesen Bereich auch im Rahmen von Schulungen und/oder ähnlichen Vorhaben nutzen, beispielsweise wenn Sie einen Sandbox-Mandanten oder einen Build von Business Central auf Docker verwenden.

100,000-999,999

Die Objekte in diesem Bereich werden entworfen, wenn das Microsoft-Team Business Central für ein bestimmtes Land oder eine bestimmte Region lokalisiert. Diese Objekte können nicht von Partnern verwendet werden.

1,000,000-69,999,999

Dieser Objektbereich ist für das Registered Solution Program (RSP) vorgesehen. Der Partner kann diesen Bereich für die Entwicklung von Erweiterungen verwenden, die in Business Central Online oder lokal verwendet werden können. Bei Verwendung in Business Central Online werden diese Erweiterungen als Apps von AppSource bezogen.

70.000.000–74.999.999

Partner können IDs in diesem Bereich für die Erweiterungen erhalten, die in Business Central Online ausgeführt werden. Diese Erweiterungen können als Apps oder auch über AppSource bezogen werden. Weitere Informationen finden Sie unter Erste Schritte beim Erstellen von Apps.

Informationen zum Herunterladen der Business Central-Lizenzierungsanleitung finden Sie in den Lizenzierungshandbüchern.

Präfix und Suffix

In Ihrer Erweiterung muss der Name jedes neuen Anwendungsobjekts (Tabelle, Seite, Codeunit) ein Präfix oder Suffix umfassen. Diese Regel gilt für alle Objekte. Sie können die Caption-Werte für die Elemente verwenden, die Sie dem Benutzer anzeigen möchten. Wenn Sie ein zentrales Dynamics 365-Objekt mithilfe einer Tabellenerweiterung oder Seitenerweiterung ändern, muss das Präfix/Suffix auf Steuerelement-/Feld-/Aktions-/Gruppenebene definiert werden.

Vorteile

Die Verwendung eines Präfixes/Suffixes reduziert Namenskollisionen mit Objekten, die in anderen Erweiterungen definiert sind. In Umgebungen mit Erweiterungen mit Namenskollisionen können beim Bereitstellen neuer Erweiterungen, beim Upgrade von Umgebung oder beim Erstellen einer Sandbox als Kopie des aktuellen Umgebung (für Produktionsumgebungen) Probleme auftreten.

Allgemeine Regeln

Hier sind einige allgemeine Regeln, die befolgt werden sollten:

  • Das Präfix/Suffix muss mindestens drei Zeichen umfassen.

  • Der Objekt-/Feldname muss mit dem jeweiligen Präfix/Suffix beginnen oder enden.

  • Wenn ein Konflikt auftritt, wird immer das Objekt bevorzugt, das das Präfix/Suffix registriert hat.

  • Für Ihre eigenen Objekte müssen Sie das Präfix/Suffix auf der obersten Objektebene einrichten.

  • Für Seiten/Tabellen/Enumerationen/Berichte/permissionsets in der Basisanwendung oder andere Apps, die Sie erweitern, müssen Sie das Präfix/Suffix auf der obersten Objektebene und auch auf der Kontroll-/Feld-/Aktions-/Verfahrens-/Werte/dataitem-/Spaltenebene einrichten.

  • Nutzen Sie das AppSourceCop-Tool, um alle fehlenden Präfixe und/oder Suffixe zu finden. Konfigurationsoptionen für dieses Tool sowie einen Regelabschnitt finden Sie unter AppSourceCop Analyzer-Regeln. Im Abschnitt „Regeln“ werden die verschiedenen Prüfungen erläutert, die durch den Analysator durchgeführt werden. Im Abschnitt „Konfiguration“ finden Sie Informationen zur Präfix-/Suffix-Erkennung. Hier wird erklärt, wie Sie Ihr Präfix/Suffix in der Datei „AppSourceCop.json“ festlegen.

Präfix‑ und Suffixanforderungen für Erweiterungen

Es gibt einige Anforderungen für AppSource und Mandantenerweiterungen.

Für AppSource-Erweiterungen

Die Verwendung eines Präfixes/Suffixes für Objektnamen ist für AppSource-Einreichungen als Teil der Checkliste zur technischen Validierung erforderlich.

Um die Anforderungen für die technische AppSource-Validierung zu erfüllen, müssen Sie für Ihren Erweiterungsherausgeber ein dreistelliges Präfix/Suffix registriert haben und es in Ihrer Erweiterung verwenden.

Wenn Sie noch kein Präfix/Suffix registriert haben, wenden Sie sich unter d365val@microsoft.com an Microsoft, und geben Sie die folgenden Informationen an, um das Präfix/Suffix Ihrer Wahl zu reservieren.

  • Ihre MPN-ID

  • Der Herausgebername, den Sie in Ihren Erweiterungen verwenden (in der app.json-Datei)

  • Sie müssen mindestens fünf Präfix-/Suffixvorschläge machen. Jedes muss genau drei Zeichen lang sein.

Bei Präfixen/Suffixen wird die Groß-/Kleinschreibung nicht beachtet, d. h., dass beispielsweise „ABC“, „abc“ und „AbC“ als dasselbe behandelt werden. Die Angabe der beiden Wörter „ABC“ und „abc“ zählt nur als einer Ihrer Vorschläge.

Beachten Sie, dass Sie bereits registrierte Präfixe/Suffixe nicht ändern müssen. Sie können diese weiterhin verwenden. Die Richtlinien gelten nur für Neuanmeldungen.

Für mandantenspezifische Erweiterungen

Für mandantenspezifische Erweiterungen ist es nicht erforderlich, ein Präfix oder Suffix zu verwenden, wir empfehlen dies jedoch dringend. Sie können pte als Präfix oder Suffix verwenden, um Konflikte mit AppSource-Apps oder Basisobjekten zu vermeiden.

Wenn Ihre mandantenspezifische Erweiterung einen Konflikt mit einem neuen Objekt in der Basisanwendung oder einer aktualisierten AppSource-App verursacht, ist für die Änderung die mandantenspezifische Erweiterung erforderlich.

Weitere Informationen zur Verwendung von Präfixen oder Suffixen finden Sie unter Vorteile und Richtlinien zur Verwendung eines Präfixes oder Suffixes.