Erstellen oder bearbeiten einer virtuellen Entität mit Daten aus einer externen Datenquelle

Dieses Thema bezieht sich auf Dynamics 365 Customer Engagement (on-premises). Die Power Apps-Version dieses Themas finden Sie unter: Erstellen und Bearbeiten von virtuellen Entitäten, die Daten aus einer externen Datenquelle enthalten

Eine virtuelle Entität ist eine benutzerdefinierte Entität in Dynamics 365 Customer Engagement (on-premises), die Felder mit Daten von einer externen Datenquelle enthält. Virtuelle Entitäten erscheinen Benutzern in Ihrer App als reguläre Entitätsdatensätze, enthalten aber Daten von einer externen Datenbank, z. B. einer Azure-SQL-Datenbank. Datensätze auf Grundlage virtueller Entitäten stehen in allen Clients zur Verfügung, einschließlich benutzerdefinierter Clients, die Dynamics 365 for Customer Engagement-Webdienste verwenden.

In der Vergangenheit brauchte man für die Integration der separaten Datenquellen einen Konnektor, um die Daten zu verschieben, oder man musste ein benutzerdefiniertes Plug-In auf der Client- oder Serverseite erstellen. Mit virtuellen Entitäten können Sie zur Laufzeit direkt eine Verbindung zu einer externen Datenquelle einrichten, sodass spezifische Daten aus der externen Datenquelle in einer Umgebung zur Verfügung stehen, ohne dass eine Datenreplikation erforderlich ist.

Virtuelle Entitäten bestehen aus drei Hauptkomponenten, einem Datenanbieter, einem Datenquelldatensatz und einer virtuellen Entität. Der Datenanbieter besteht aus Plug-Ins und einer Datenquellentität. Die Datenquelle ist ein Entitätsdatensatz in Dynamics 365 Customer Engagement (on-premises), der Metadaten enthält, die das Schema der Verbindungsparameter darstellen. Jede virtuelle Entität verweist auf eine Datenquelle in der Entitätendefinition.

Dynamics 365 Customer Engagement (on-premises) beinhaltet einen OData-Datenanbieter, den Sie verwenden können, um eine Verbindung mit einem OData v4-Webservice einzurichten, der auf die externen Daten zugreift.

Alternativ können Entwickler ihre eigenen Datenanbieter erstellen. Datenanbieter werden in einer Umgebung als Lösung installiert. Weitere Informationen: Erste Schritte mit virtuellen Entitäten

Virtuelles Entitätsdiagramm.

Vorteile der virtuellen Entität

  • Entwickler können zum Lesen, Aktualisieren oder Löschen von externen Daten mithilfe von Dynamics 365 for Customer Engagement-Webdiensten und des Customer Engagement-Plug-In-Registrierungstools implementieren.

  • Systemanpasser verwenden Dynamics 365 Customer Engagement (on-premises), um den Datenquelldatensatz zu konfigurieren und virtuelle Entitäten zu erstellen, die für den Zugriff auf externe Daten verwendet werden, ohne dafür Code schreiben zu müssen.

  • Endbenutzer verwenden die Datensätze, die von der virtuellen Entität erstellt wurden, um die Daten in Feldern, Rastern, Suchergebnissen und FetchXML-basierten Berichten sowie Dashboards zu betrachten.

Eine Datenquelle für virtuelle Entitäten hinzufügen

Entwickler erstellen ein benutzerdefiniertes Plug-In, das als Datenanbieter für eine virtuelle Entität verwendet wird. Alternativ können Sie den zur Verfügung gestellten OData v4-Datenanbieter verwenden. Weitere Informationen: OData v4 Datenanbieterkonfiguration, Anforderungen und bewährten Methoden

  1. Wählen Sie Einstellungen>Verwaltung>Datenquellen für virtuelle Entitäten aus.

  2. Wählen Sie auf der Aktionssymbolleiste Neu aus.

  3. Wählen Sie im Dialogfeld „Datenanbieter auswählen” aus den folgenden Datenquellen aus, und wählen Sie dann OK aus.

Hinzufügen eines gesicherten Felds zu einer Datenquelle

Sie erstellen Felder für eine Datenquelle auf die gleiche Weise wie für jede andere Entität. Für Daten, die vertraulich oder verschlüsselt sind, aktivieren Sie das Attribut "Datenquelle geheim" auf dem benutzerdefinierten Feld der Datenquelle. Beispielsweise zum Speichern eines Felds, das eine Datenbankverbindungszeichenfolge enthält.

Notiz

Das Attribut "Datenquelle geheim" ist nur verfügbar bei den Feldern, die einem Datenquellenformular hinzugefügt werden.

Attribut „Datenquelle geheim.

Eine virtuelle Entität erstellen

Sie erstellen eine virtuelle Entität genauso wie jede andere Entität in der Kundenbindung mit einigen zusätzlichen Attributen, die hier beschrieben werden.

Notiz

Obwohl Sie eine virtuelle Entität erstellen können, indem Sie Keine als Datenquelle auswählen, ist für eine virtuelle Entität, um Daten abzurufen, eine Datenquelle erforderlich. Weitere Informationen: Eine Datenquelle für virtuelle Entitäten hinzufügen

  1. Gehen Sie zu Einstellungen>Anpassungen>System anpassen.

  2. Erstellen Sie im Projektmappen-Explorer eine neue Entität. Wählen Sie dazu im linken Navigationsbereich die Option Entitäten aus, und wählen Sie anschließend Neu aus.

  3. Wählen Sie auf der Registerkarte Allgemein der Entitätsdefinition die Option Virtuelle Entität aus, und wählen Sie dann in der Dropdownliste Datenquelle die gewünschte Datenquelle aus.

    Virtuelle Entitätsoption bei Entitätsdefinition.

  4. Füllen Sie in der Entitätsdefinition die folgenden erforderlichen Felder aus.

    • Externer Name. Geben Sie den Namen der Tabelle in die externe Datenquelle ein, die dieser Entität zugeordnet ist.

    • Externer Sammlungsname. Geben Sie den Plural-Namen der Tabelle in die externe Datenquelle ein, die dieser Entität zugeordnet ist.

      Nachfolgend sehen Sie ein Beispiel für eine virtuelle Entität mit dem Namen Movie, die einen Azure Cosmos DB-Datenanbieter verwendet, um auf Dokumentdateien zuzugreifen.

    Virtuelle Entitätsdefinition mithilfe des Azure Cosmos DB-Datenanbieters

    Wichtig

    Einige Optionen stehen nicht für virtuelle Entitäten zur Verfügung, wie beispielsweise Zugriffsteams, Warteschlangen und Schnellerfassung. Weitere Informationen: Überlegungen bei der Verwendung virtueller Entitäten

    Ergänzen Sie die zusätzlichen erforderlichen und optionalen Eigenschaften nach Bedarf, wie beispielsweise Anzeige- und Pluralnamen. Weitere Informationen über diese Eigenschaften finden Sie unter Erstellen und Bearbeiten von Entitäten.

  5. Erstellen Sie ein oder mehrere Felder für die virtuelle Entität, und fügen Sie diese hinzu. Neben den Standardfeldeigenschaften, die für die Erstellung eines benutzerdefinierten Felds erforderlich sind, stehen diese optionalen Eigenschaften für jedes benutzerdefinierte Feld zur Verfügung, das Sie für eine virtuelle Entität erstellen.

    • Externer Name. Dies ist normalerweise der eindeutige Name, der die Daten identifiziert, die Sie in dem Feld anzeigen wollen.

    Notiz

    Wenn der Typ des erstellten Felds OptionSet ist, stehen die folgenden zusätzlichen Felder zur Verfügung.

    • Externer Typname. Diese Eigenschaft wird auf den externen Namen der Wertemenge im externen Service für den Optionssatz abgebildet. Dies kann eine Auflistung oder der Name einer Zeichenfolgenwerteklasse sein. Der externe Typname kann verwendet werden, wenn ein vollständig qualifizierter Name benötigt wird. Wie beispielsweise der Typname bei OData, wo Parameter in einer Warteschlange den vollständig qualifizierten Namen benötigen, z. B. [Typname].[Wert].
    • Externer Wert. Diese Eigenschaft wird auf den entsprechenden Wert in der externen Datenquelle für das Optionssatzelement abgebildet. Anhand dieses eingegebenen Werts wird bestimmt, welches Optionssatzelement in der App angezeigt werden soll.

    Tragen Sie nach Bedarf weitere Eigenschaften ein. Weitere Informationen über diese Eigenschaften finden Sie unter Erstellen und Bearbeiten von Feldern.

  6. Wählen Sie Speichern und schließen auf der Eigenschaftsseite Feld aus.

  7. Wählen Sie auf der Symbolleiste des Projektmappen-Explorers Speichern aus.

  8. Wählen Sie auf der Symbolleiste des Projektmappen-Explorers Veröffentlichen aus.

  9. Schließen Sie den Projektmappen-Explorer.

Überlegungen bei der Verwendung virtueller Entitäten

Virtueller Entitäten haben die folgenden Einschränkungen.

  • Alle virtuellen Entitäten sind schreibgeschützt.

  • Vorhandene Entitäten können zu virtuellen Entitäten konvertiert werden.

  • Standardmäßig enthalten virtuelle Entitäten nur ein Namens- und ein Kennungsfeld. Es werden keine anderen vom System verwalteten Felder unterstützt, wie beispielsweise „Status” oder „Erstellt am/Geändert am”.

  • Virtuelle Entitäten unterstützen keine benutzerdefinierten Felder mit den Datentypen „Währung”, „Bild” oder „Kunde”.  

  • Virtuelle Entitäten unterstützen keine Überwachung.

  • Die Felder virtueller Entitäten können nicht in Rollups oder berechneten Feldern verwendet werden.  

  • Eine virtuelle Entität kann kein Aktivitätstyp einer Entität sein.

  • Viele Funktionen, die sich Entitätstabellenzeilen auswirken, können nicht mit virtuellen Entität aktiviert werden. Zu den Beispielen zählen Warteschlangen, Wissensmanagement, SLA, Duplikaterkennung, Änderungsnachverfolgung, Mobile offline, Funktion, Feldsicherheit, Relevanzsuche, Portale für Dynamics 365 Customer Engagement (on-premises)-Webportallösungen und N:N-Beziehungen zwischen virtuellen Entitäten.

  • Virtuelle Entitäten sind im Besitz der Organisation und unterstützen nicht die Commond Data Service für Apps-Sicherheitskonzepte auf Zeilenebene. Wir empfehlen, ein eigenes Sicherheitsmodell für die externe Datenquelle zu implementieren.

  • Wir empfehlen, bei Verwendung von virtuellen Entitäten in erweiterten Suchen nur eine Datenquelle anzusprechen. Beispielsweise wird das Erstellen einer erweiterten Suche, durch die letztendlich eine Verbindung zwischen Daten im Eigenformat des Dataverse und den externen Daten der virtuellen Entität hergestellt wird, nicht unterstützt.

  • Feldmetadateneigenschaften, die bei Update validiert werden, gelten nicht für virtuelle Entitäten. Beispielsweise kann ein Ganzzahlenfeld in einem virtuellen Entitätsfeld so festgelegt werden, dass es einen Minimalwert Null hat. Allerdings, da der Wert aus einer externen Datenquelle kommt, gibt eine Abfrage Werte zurück, die weniger als null sind, wenn sie von einer virtuellen Entität abgerufen wird. Die Minimalwert-Eigenschaft ist in der Abfrage nicht impliziert. Sie müssten die Werte filtern, die größer als null sind, wenn diese gewünscht werden.

  • Virtuelle Entitäten unterstützen nicht Änderungsnachverfolgung und können nicht synchronisiert werden mithilfe eines Features der Kundenbindung, wie Datenexportservice.

  • Geschäftsprozessflüsse werden mit virtuellen Entitäten nicht unterstützt. Weitere Informationen: Unerwarteter Fehler beim Aktivieren eines Geschäftsprozessfluss durch einen Benutzer

Unerwarteter Fehler beim Aktivieren eines Geschäftsprozessfluss durch einen Benutzer

Wenn ein Benutzer versucht, ein Geschäftsprozessfluss zu aktivieren, erhält er möglicherweise eine „unerwarteter Fehler“-Meldung. Beim Anzeigen der Protokolldatei wird der folgende Protokolleintrag angezeigt.

ErrorCode: 0x80040216 Message: System.Web.HttpUnhandledException: Exception of type 'System.Web.HttpUnhandledException' wurde angezeigt. ---> Microsoft.Crm.CrmException: Geschäftsprozessfluss kann für Virtual Entity nicht aktiviert werden

Dieses Problem tritt auf, weil virtuelle Entitäten keine Geschäftsprozessflüsse unterstützen.

Siehe auch

OData v4 Datenanbieterkonfiguration, Anforderungen und bewährten Methoden
Entitäten erstellen und bearbeiten
Erstellen und Bearbeiten von Feldern