Een virtuele entiteit maken of bewerken die gegevens uit een externe gegevensbron bevat

Dit onderwerp is van toepassing op Dynamics 365 Customer Engagement (on-premises). Voor de Power Apps-versie van dit onderwerp, zie: Virtuele entiteiten maken en bewerken die gegevens uit een externe gegevensbron bevatten

Een virtuele entiteit is een aangepaste entiteit in Dynamics 365 Customer Engagement (on-premises) die velden bevat met gegevens uit een externe gegevensbron. Virtuele entiteiten worden in uw app aan gebruikers getoond als normale entiteitsrecords, maar bevatten gegevens die afkomstig zijn uit een externe database, zoals een Azure SQL-database. Records die op virtuele entiteiten zijn gebaseerd, zijn beschikbaar in alle clients, inclusief aangepaste clients die zijn ontwikkeld met de Dynamics 365 Customer Engagement-webservices.

In het verleden moest u, om de ongelijksoortige gegevensbronnen te integreren, een connector maken om gegevens te verplaatsen of een aangepaste toepassing te ontwikkelen, aan de server- of clientzijde. Met virtuele entiteiten kunt u echter rechtstreeks verbinding maken met een externe gegevensbron tijdens runtime zodat de bepaalde gegevens uit de externe gegevensbron in een omgeving beschikbaar zijn zonder de noodzaak van gegevensreplicatie.

Virtuele entiteiten zijn samengesteld uit drie hoofdonderdelen, een gegevensprovider, een gegevensbron-record en een virtuele entiteit. De gegevensprovider bestaat uit en invoegtoepassingen een gegevensbronentiteit. De gegevensbron is een entiteitsrecord in Dynamics 365 Customer Engagement (on-premises), dat metagegevens bevat dat het schema van de verbindingparameters voorstelt. Elk virtuele entiteit verwijst naar een gegevensbron in de entiteitdefinitie.

Dynamics 365 Customer Engagement (on-premises) bevat een OData-gegevensprovider waarmee u verbinding kunt maken met een OData v4-webservice die toegang heeft tot de externe gegevens.

Ook kunnen ontwikkelaars hun eigen gegevensproviders bouwen. De gegevensproviders worden in een omgeving geïnstalleerd als oplossing. Meer informatie: Aan de slag met virtuele entiteiten

Diagram van virtuele entiteiten.

Voordelen van virtuele entiteiten

  • Ontwikkelaars kunnen invoegtoepassingen implementeren om externe gegevens te lezen met de Dynamics 365 Customer Engagement-webservices en het PRT-tool (Plug-in Registration Tool) van Customer Engagement.

  • Systeemaanpassers gebruiken Dynamics 365 Customer Engagement (on-premises) om de gegevensbronrecord te configureren en virtuele entiteiten te maken die worden gebruikt voor toegang tot externe gegevens zonder code te schrijven.

  • Eindgebruikers werken met de records die door de virtuele entiteit zijn gemaakt om de gegevens weer te geven in velden, rasters, zoekresultaten en op Fetch XML gebaseerde rapporten en dashboards.

Een gegevensbron toevoegen om virtuele entiteiten te gebruiken

Ontwikkelaars kunnen een aangepaste invoegtoepassing maken om als gegevensprovider voor een virtuele entiteit te gebruiken. U kunt ook gebruikmaken van de opgegeven OData v4-gegevensprovider. Meer informatie: De configuratie, vereisten en aanbevolen methoden van de OData v4-gegevensprovider

  1. Ga naar Instellingen>Beheer>Virtuele bronnen voor entiteitsgegevens.

  2. Selecteer op de werkbalk Acties de optie Nieuw.

  3. Maak in het dialoogvenster Gegevensprovider selecteren een keuze uit de volgende gegevensbronnen en selecteer vervolgens OK.

Een beveiligd veld toevoegen aan een gegevensbron

U kunt velden maken voor een gegevensbron zoals u ze ook voor andere entiteiten zou maken. Voor gecodeerde of gevoelige gegevens kunt u het kenmerk Geheim voor gegevensbron in het aangepaste veld van de gegevensbron inschakelen. U doet dit bijvoorbeeld om een veld met een verbindingstekenreeks voor de database te beveiligen.

Notitie

Het kenmerk Geheim voor gegevensbron is alleen beschikbaar voor velden die aan een gegevensbronformulier zijn toegevoegd.

Geheim kenmerk voor gegevensbron.

Een virtuele entiteit maken

U maakt een virtuele entiteit zoals u ook andere entiteiten maakt in Customer Engagement, alleen voegt u nu een aantal extra kenmerken toe die hier worden beschreven.

Notitie

Hoewel u een virtuele entiteit kunt maken door Geen als gegevensbron te selecteren, heeft een virtuele entiteit wel een gegevensbron nodig om gegevens te kunnen ophalen. Meer informatie: Een gegevensbron toevoegen voor het gebruik van virtuele entiteiten

  1. Ga naar Instellingen>Aanpassingen>Het systeem aanpassen.

  2. Maak een nieuwe entiteit in de oplossingenverkenner. Hiervoor selecteert u in het navigatiedeelvenster aan de linkerkant de optie Entiteiten en selecteert u vervolgens Nieuw.

  3. Selecteer op het tabblad Algemeen van de Entiteitsdefinitie de optie Virtuele entiteit en vervolgens in de vervolgkeuzelijst Gegevensbron de gewenste gegevensbron.

    Optie Virtuele entiteit in entiteitsdefinitie.

  4. Vul voor de Entiteitdefinitie u de volgende vereiste velden.

    • Externe naam. Voer de naam van de tabel in de externe gegevensbron in waaraan deze entiteit is toegewezen.

    • Naam van externe verzameling. Voer de meervoudige naam van de tabel in de externe gegevensbron in waaraan deze entiteit is toegewezen.

      Hier volgt een voorbeeld van een virtuele entiteit met de naam Film die een Azure Cosmos DB-gegevensprovider gebruikt om de documentbestanden te openen.

    Definitie van virtuele entiteit met behulp van de Azure Cosmos DB-gegevensprovider.

    Belangrijk

    Opties zoals Toegangteams, Wachtrijen en Snelle invoer zijn niet beschikbaar voor virtuele entiteiten. Meer informatie: Overwegingen als u virtuele entiteiten gebruikt

    Vul indien nodig de overige vereiste en optionele eigenschappen in, zoals weergave en meervoudsnamen. Voor meer informatie over deze eigenschappen raadpleegt u Entiteiten maken en bewerken.

  5. Maak een of meer velden voor de virtuele entiteit en en voeg ze toe. Naast de standaarddveldeigenschappen die vereist zijn voor het maken van een aangepast veld, zijn deze optionele eigenschappen beschikbaar voor elk aangepast veld dat u maakt voor een virtuele entiteit.

    • Externe naam. Dit is doorgaans de unieke naam waarmee u de gegevens aanduidt die u in het veld wilt weergeven.

    Notitie

    Als het veldtype dat u maakt OptionSet is, zijn de volgende aanvullende velden beschikbaar.

    • Externe typenaam. Deze eigenschap verwijst naar de externe naam van de set waarden in de externe service voor de optieset. Normaal gesproken kan dit een opsomming zijn of een naam van een klasse met tekenreekswaarden. De externe typenaam kan worden gebruikt als een volledig gekwalificeerde naam is vereist. Als bijvoorbeeld de Typenaam met OData als parameters in een query de volledig gekwalificeerde naam vereist, zoals [Typenaam].[Waarde].
    • Externe waarde. Deze eigenschap verwijst naar de overeenkomstige waarde in de externe gegevensbron voor het optiesetitem. De ingevoerde waarde wordt gebruikt om te bepalen welk optiesetitem wordt weergegeven in de app.

    Vul desgewenst extra eigenschappen in. Voor meer informatie over deze eienschappen raadpleegt u Velden maken en bewerken.

  6. Selecteer Opslaan en sluiten op de eigenschappenpagina Veld.

  7. Selecteer Opslaan op de werkbalk van de oplossingenverkenner.

  8. Selecteer Publiceren op de werkbalk van de oplossingenverkenner.

  9. Sluit de oplossingenverkenner.

Overwegingen als u virtuele entiteiten gebruikt

Virtuele entiteiten hebben deze beperkingen.

  • Alle virtuele entiteiten zijn alleen-lezen.

  • Bestaande entiteiten kunnen niet naar virtuele entiteiten worden geconverteerd.

  • Standaard bevatten virtuele entiteiten alleen een naam- en identiteitsveld. Andere door het systeem beheerde velden, zoals Status of Gemaakt op/Gewijzigd op, worden niet ondersteund.

  • Virtuele entiteiten ondersteunen aangepaste velden van het type Valuta, Afbeelding of Klantgegevens niet.  

  • Virtuele entiteiten ondersteunen geen controle.

  • Virtuele entiteitsvelden kunnen niet in rollups of berekende velden worden gebruikt.  

  • Een virtuele entiteit kan geen entiteit van het type activiteit zijn.

  • Veel functies die de rijen in de entiteitstabel beïnvloeden, kunnen niet met virtuele entiteiten worden ingeschakeld. Voorbeelden zijn wachtrijen, kennisbeheer, SLA's, duplicaatdetectie, het bijhouden van wijzigingen, mobiele offline-mogelijkheid, veldbeveiliging, zoeken op relevantie, portals voor webportaloplossingen van Dynamics 365 Customer Engagement (on-premises) en N:N-relaties tussen virtuele entiteiten.

  • Virtuele entiteiten zijn eigendom van de organisatie en bieden geen ondersteuning voor beveiligingsconcepten van Commond Data Service for Apps op rijniveau. We adviseren u om uw eigen beveiligingsmodel voor de externe gegevensbron te implementeren.

  • We adviseren u om één gegevensbron als bestemming te gebruiken als u virtuele entiteiten in Geavanceerd zoeken gebruikt. Het maken van een geavanceerde zoekopdracht die uiteindelijk in een koppeling tussen de systeemeigen Dataverse-gegevens en de virtuele externe entiteitsgegevens resulteert, wordt bijvoorbeeld niet ondersteund.

  • Eigenschappen van veldmetagegevens die tijdens een update worden gevalideerd, zijn niet van toepassing op virtuele entiteiten. Het veld Geheel getal kan in een veld van een virtuele entiteit bijvoorbeeld worden ingesteld op een minimale waarde van nul. Omdat de waarde echter afkomstig is van een externe gegevensbron, geeft een query waarden terug die lager zijn dan nul wanneer deze van een virtuele entiteit zijn opgehaald. De eigenschap voor de minimumwaarde wordt niet bij de query betrokken. U moet nog wel steeds desgewenst de waarden filteren die groter zijn dan 0.

  • Virtuele entiteiten bieden geen ondersteuning voor het bijhouden van wijzigingen en kunnen niet worden gesynchroniseerd met een Customer Engagement-functie zoals de gegevensexportservice.

  • Bedrijfsprocesstromen worden niet ondersteund met virtuele entiteiten. Meer informatie: Er is een onverwachte fout opgetreden toen een gebruiker een bedrijfsprocesstroom activeerde

Er is een onverwachte fout opgetreden toen een gebruiker een bedrijfsprocesstroom activeerde

Wanneer een gebruiker een bedrijfsprocesstroom probeert te activeren, kan deze een foutbericht over een onverwachte fout ontvangen. Als u het logboekbestand bekijkt, ziet u dat de volgende logboekvermelding wordt weergegeven.

ErrorCode: 0x80040216 Message: System.Web.HttpUnhandledException: er treedt een uitzondering op van het type 'System.Web.HttpUnhandledException'. ---> Microsoft.Crm.CrmException: er kan geen bedrijfsprocesstroom worden ingeschakeld voor de virtuele entiteit

Dit probleem treedt op omdat virtuele entiteiten geen bedrijfsprocesstromen ondersteunen.

Zie ook

Vereisten en best practices voor OData v4-gegevensprovider
Entiteiten maken en bewerken
Velden maken en bewerken