Überblick über den Dataverse und das Common Data Model
Dataverse hilft Ihnen beim sicheren Speichern und Verwalten von Daten, die von Geschäftsanwendungen verwendet werden. Dataverse speichert die Geschäftsanwendungsdaten in einer Reihe von Tabellen (zuvor Entitäten genannt) gespeichert. Eine Tabelle besteht aus Zeilen (früher bezeichnet als Datensätze) und Spalten (früher bezeichnet als Felder/Attribute). Jede Spalte in der Tabelle dient zum Speichern eines bestimmten Datentyps, z. B. Name, Alter, Gehalt usw. Dataverse umfasst einen Basissatz von Standardtabellen, die typische Szenarien abdecken. Sie können aber auch benutzerdefinierte Tabellen erstellen, die für Ihre Organisation spezifisch sind, und diese dann mithilfe von Power Query mit Daten auffüllen. App-Entwickler können dann Power Apps verwenden, um Anwendungen für Endbenutzer mit Funktionen zu entwickeln, die diese Daten nutzen.
Die Vorteile von Dataverse
Dataverse basiert auf mehreren Azure-Datenspeicherfunktionen, einschließlich Azure SQL, Cosmos DB und Azure Storage. Dataverse bietet mithilfe der grundlegenden Funktionen eine Reihe einheitlicher Funktionen, mit denen Sie unternehmensspezifische Definitionen der Daten und Geschäftsprozesse Ihrer Organisation in einer Vielzahl von Anwendungen erstellen können. Da sowohl Daten als auch Metadaten in der Cloud gespeichert sind, lassen sich Anwendungen einfach verwalten. Darüber hinaus können Sie mithilfe eines integrierten Sicherheitsmodells den Zugriff auf Tabellen und Funktionen basierend auf den Rollen eines Benutzers in Ihrer Organisation steuern.
Microsoft hat bereits mehrere Erstanbieter-Apps auf Dataverse erstellt, darunter Dynamics 365 for Sales, Service, Field Service und Customer Insights - Journeys. Da alle Apps auf der gleichen Dataverse-Plattform aufbauen, können Sie andere Apps erweitern oder mit ihren Daten in Dataverse interagieren.
Mit jeder Art von Daten arbeiten
Dataverse wurde für die Arbeit mit den gängigsten Datentypen entwickelt und umfasst alle wichtigen Kategorien von Datentechnologien, die Ihre Organisation benötigt: relational, nicht relational, Datei, Bild, Suche und Data Lake. In der Regel müssen Entwickler dazu mit mehreren APIs aus verschiedenen Datenmodulen arbeiten. Dataverse bietet eine einheitliche API vor allen Daten, die die konsistente Ausführung aller benutzerdefinierten Geschäftslogiken sicherstellt, die das Standardverhalten erweitern.
Dataverse enthält eine Reihe visueller Designer zum Erstellen, Bearbeiten und Interagieren mit Daten und Datenmodellen. Die Designer machen es einfach Tabellen, Beziehungen, Geschäftsregeln, Formulare, Ansichten und Workflows zu definieren, die Ihr Unternehmen repräsentieren. Entwickler können die API auch verwenden, um programmgesteuert mit den Plattformmetadaten zu interagieren, z. B. um Tabellen und Spalten zu erstellen.
Dataverse unterstützt auch virtuelle Tabellen. Virtuelle Tabellen weisen Daten in einer externen Datenquelle zu, sodass sie anscheinend auch in Dataverse vorhanden sind. Virtuelle Tabellen ermöglichen Dataverse, Echtzeit-Datenoperationen für die externe Datenquelle auszuführen. Entwickler können mit Code Datenanbieter erstellen, um die Verbindung zu externen Datenquellen zu erleichtern. Weitere Informationen: Virtuelle Tabellen erstellen und bearbeiten, die Daten aus einer externen Datenquelle enthalten.
Mit jeder Art von App arbeiten
Wenn eine Organisation eine neue App erstellen möchte, kann sie andere Produktivitätsgewinne mithilfe von Dataverse mit Power Apps erzielen. Power Apps versteht die umfangreichen Metadaten in Dataverse und verwendet sie auf verschiedene Arten, um Ihnen schnell dabei zu helfen, ansprechende Apps zu erstellen, die sicher und skalierbar sind, und sie für Desktop, Web, Mobile und Microsoft Teams verfügbar zu machen.
Für Entwickler, die Dataverse-Daten in vorhandene Apps integrieren oder neue Apps mit benutzerdefiniertem Code schreiben möchten, bietet Dataverse eine REST-basierte API, um die Integration zu vereinfachen. Diese REST-API bietet vollständige Abdeckung der Dataverse Funktionen, die ein uneingeschränktes Erweiterungsmodell für die Erstellung vollständig angepasster Erlebnisse bieten.
Integriertes Sicherheitsmodell
Als Entwickler, der eine Anwendung erstellt, sind Sie es gewohnt, ein eigenes Sicherheitsmodell für die Anwendung zu entwerfen und zu erstellen. Dataverse enthält einen vorgefertigten Satz von Konstrukten, um die Konfiguration eines Anwendungssicherheitsmodells zu ermöglichen. Dataverse verwendet rollenbasierte Sicherheit, um eine Sammlung von Berechtigungen zusammenzustellen, die sowohl den Datenzugriff mit der Granularität auf Zeilenebene als auch Geschäftsfunktionen abdecken, die mehrere Tabellen umfassen können. Diese Sicherheitsrollen können entweder direkt einzelnen Benutzern oder Teams und Konzernmandanten von Dataverse zugewiesen werden.
Da die Zugriffskontrolle auf Zeilenebene bei einigen Geschäftsszenarien möglicherweise nicht ausreicht, gibt es in Dataverse eine Sicherheitsfunktion auf Spaltenebene. Das verbessert die Sicherheit auf Spaltenebene spürbar.
Dataverse umfasst auch zwei Sicherheitskonstrukte, die sich für Hierarchien eignen, das heißt, Managerhierarchie und Positionshierarchie. Bei der Managerhierarchie muss sich ein Manager im selben Konzernmandanten wie der Bericht oder im übergeordneten Konzernmandanten des Konzernmandanten des Berichts befinden, um auf die Daten des Berichts zugreifen zu können. Die Positionshierarchie ermöglicht den Datenzugriff über Konzernmandanten hinweg. Diese kann beim Erstellen komplexerer Sicherheitsmodelle hilfreich sein.
Entwickler können Sicherheitsaufgaben auch mithilfe der API automatisieren.
Zeitpunkt zum Schreiben von Code
Als Power Platform-Entwickler müssen Sie die bestehenden Lücken zwischen dem durch die Konfiguration Erreichbarem und dem Code kennen. In einigen Fällen bieten vorhandene Funktionen möglicherweise nicht die Funktionalität, die zur Erfüllung einer Anforderung erforderlich ist. Dataverse bietet eine Vielzahl von Erweiterungspunkten, an die Entwickler anknüpfen können, um die allgemeinen Funktionen mithilfe von Code zu erweitern.
Zum Identifizieren von Lücken bzw. nicht vorhandenen Funktionen ist es entscheidend, dass alle Power Platform-Entwickler sich mit den von Dataverse gebotenen Möglichkeiten vertraut machen. Wenn Sie mit dem Erstellen von Apps mit Power Apps, die Dataverse verwenden, nicht vertraut sind, empfehlen wir Ihnen, den Lernpfad Eine modellgesteuerte Anwendung in Power Apps erstellen und die Vorgehensweise Eine Canvas-App mit Microsoft Dataverse von Grund auf erstellen in der Power Apps Maker-Dokumentation.
Erweiterbarkeitstypen
Typischerweise werden codebasierte Anpassungsaktivitäten als „Erweiterung“ einer Anwendung bezeichnet. Wenn Sie also Begriffe wie Erweiterbarkeit lesen, bezieht sich dies in der Regel auf Code im Sinne der Power Apps-Entwicklung. Innerhalb des Erweiterbarkeitsmodells werden Aktivitäten in zwei große Gruppen unterteilt: Erweiterung des Benutzererlebnisses und Erweiterung der Plattform oder von Dataverse selbst.
Erweiterung der Benutzererfahrung von Power Apps
Um die Benutzererfahrung einer Power Apps-App zu erweitern, können Sie das Power Apps Component Framework (PCF) verwenden, um Codekomponenten zu erstellen, die für alle Power Apps-Typen verwenden, um Codekomponenten zu erstellen. Modellgesteuerte Power Apps zeigen auch eine JavaScript-Client-API an, mit der Sie mit den Anwendungsseiten interagieren können, um Geschäftslogik in den Anwendungsformularen zu implementieren.
Canvas-Apps bieten zwar keine Skriptfunktionen, ihre Logik wird jedoch mithilfe von Microsoft Power Fx erstellt. Power Fx ist die Low-Code-Sprache, die in der gesamten Microsoft Power Platform verwendet wird. Es ist eine universelle, stark typisierte, deklarative und funktionale Programmiersprache. Professionelle Plattformentwickler sollten mit der Verwendung der Sprache vertraut sein, sie bei Bedarf in Quelldateien bearbeiten und in der Lage sein, die Apps mit Tools wie Monitor zu debuggen. Weitere Informationen finden Sie unter Überblick über Power Apps mit Monitor.
TypeScript ist eine empfohlene Sprache für viele Skriptszenarien. Da TypeScript zu JavaScript transpiliert wird, werden beide Sprachen unter dem Begriff „Clientskript“ zusammengefasst. Mit Clientskript können Sie Formular-Ereignishandler auf die gleiche Weise konfigurieren wie ein HTML-Formularelement. Sie können Skriptfunktionen auch über eine Befehlsleiste (Menüband) aufrufen und Client-Skript-Webressourcen aus HTML-Webressourcen heraus nutzen.
HTML-Webressourcen sind der Vorgänger von PCF-Codekomponenten und werden auch verwendet, um benutzerdefinierte Präsentationslogik in einem Formular in modellgesteuerten Apps anzuzeigen, wenn erweiterte Anforderungen vorhanden sind, die mit den Standardformularen nicht erreicht werden können. Dies kann auftreten, wenn Sie mit Apps arbeiten, die erstellt werden, bevor PCF-Codekomponenten verfügbar sind.
Dataverse erweitern
Das Erweitern von Dataverse als Plattform ist immer dann erforderlich, wenn ein bestimmter Automatisierungsgrad oder ein Verhalten benötigt wird, den vorhandene Funktionen nicht unterstützen. Diese Typen von Erweiterungspunkten werden als serverseitiger Code über ein als Plug-In bezeichnetes Konstrukt ausgeführt. Power Automate und weitere Optionen ermöglichen eine asynchrone Automatisierung und Logik, sind jedoch nicht in der Lage, sämtliche Aufgaben von Plug-Ins in Bezug auf synchrones Verhalten zu erfüllen. Wenn in einer Anwendung Anforderungen für den synchronen Vorgang bestehen, sind weiterhin Plug-Ins erforderlich. Die synchrone Verarbeitung durch Plug-Ins ermöglicht jegliche Dataverse-Änderungen, die als einzelne Arbeitseinheit in einer Transaktion behandelt werden sollen.
Entwickler können zum Erstellen der eigenen APIs in Dataverse auch die benutzerdefinierte API-Funktion verwenden. Sie können einen oder mehrere Vorgänge in einer benutzerdefinierten API konsolidieren, die vom Code, Power Apps-Canvas-Apps oder Power Automate aufgerufen werden können.
Die Plug-In-Entwicklung ist eine wesentliche Fähigkeit und eine häufige Aufgabe, die von einem Power Platform-Entwickler ausgeführt wird.
Dataverse-Lösungen
Eines der grundlegenden Konzepte für die Entwicklung und Erweiterung von Dataverse ist das Lösungskonstrukt. Dataverse-Lösungen sind Container für Apps und andere Komponenten wie Sitemaps, Tabellen, Prozesse, Webressourcen, Auswahlmöglichkeiten, Flows und mehr. Lösungen werden verwendet, um Apps und Komponenten von einer Umgebung in eine andere zu transportieren oder um eine Reihe von Anpassungen auf vorhandene Apps anzuwenden. Mit Lösungen werden auch die Erstanbieter-Apps von Microsoft und Apps von unabhängigen Softwareanbietern in Ihrer Umgebung installiert.
Lösungen sind der Mechanismus zur Implementierung von Application Lifecycle Management (ALM) in der Power Platform. Detaillierte Informationen zu den Lösungskonzepten finden Sie unter Lösungen in Power Apps in der Dataverse-Dokumentation. Power Platform Build Tools können mit Azure DevOps oder GitHub zur Automatisierung von Power Platform ALM-Vorgänge verwendet werden. Weitere Informationen zur Verwendung von Lösungen für das Application Lifecycle Management finden Sie unter Übersicht über ALM mit Microsoft Power Platform in der Microsoft Power Platform ALM-Anleitung.
Common Data Model – Überblick
Microsoft hat ein Common Data Model veröffentlicht, das aus einer erweiterbaren Sammlung von Schemas besteht, die gängige Geschäftskonzepte darstellen. Durch die Verwendung eines gemeinsamen Schemas für alle Geschäftsanwendungen wie Kontakte, Leads, Firmen oder Produkte wird die Dateninteroperabilität erheblich vereinfacht.
Die folgende Infografik stellt den bereitgestellten aktuellen Status des Common Data Model-Basisschemas effektiv dar. Das Common Data Model ist ein sich entwickelndes Ökosystem, und im Laufe der Zeit werden zahlreiche andere auftauchen.
Nutzung des Common Data Model
Das Common Data Model wird durch Datenschemata beeinflusst, die in Dynamics 365 vorhanden sind und eine Reihe von Geschäftsbereichen umfassen. Wenn Sie Debitor oder Partner von Dynamics 365 sind, verwenden Sie bereits das Common Data Model. Dataverse implementiert die Standardentitäten des Common Data Model, z. B. Konto und Kontakt. Einige Standardentitäten im Common Data Model sind in jeder Dataverse-Datenbank integriert. Andere Standardentitäten werden als Teil einer Lösung installiert, einschließlich Erstanbieteranwendungen (beispielsweise Dynamics 365 Field Service) oder Branchenlösungsbeschleuniger (beispielsweise Dynamics 365 Automotive Accelerator).
Das Common Data Model wird in GitHub verwaltet. Schemas werden als JSON-Dateien verwahrt. Eine vollständige Entitätsreferenz finden Sie unter Übersicht über applicationCommon. Microsoft bietet zudem einen Visual Entity Navigator, mit dem Benutzer visuell durch Common Data Model-Entitäten navigieren können.
Wenn Sie mit dem Common Data Model arbeiten, müssen Sie das Schichtprinzip verstehen, das zur Erstellen des Schemas Ihrer benutzerdefinierten Anwendung verwendet wird. Grundlage einer Common Data Model-Anwendung ist ein Kernschema, das häufig verwendete Entitäten wie „Firma“ und „Kontakt“ enthält. Ausgehend davon können Sie funktions- oder branchenspezifische Modelle überlagern, um die Entwicklung Ihrer eigenen benutzerdefinierten Anwendung weiter zu beschleunigen. Anschließend können Sie Ihre eigenen Modelle erstellen.