Share via


Arbejd med alle typer apps

Microsoft Dataverse giver dig mulighed for at integrere forskellige typer apps (mobile apps, web, skrivebord), enheden, systemet eller tjenesten. I forbindelse med cloud-løsninger er der metoder til at integrere, uanset hvilken model din løsning er installeret på — infrastruktur som en service (IaaS), platform som en service (PaaS) eller software som en service (SaaS). I forbindelse med IaaS-baserede løsninger fungerer integrationsmetoden også fint, hvis løsninger kører inde i beholdere.

I visse tilfælde kan det være muligt at opnå en integration med en app ved hjælp af forretningslogik, der findes i Dataverse. I andre tilfælde omfatter det integration via hændelser, Dataverse OData API eller ved hjælp af plug-ins.

Definering af forretningslogik

Tabeller i Dataverse kan bruge vidtspændende logik på serversiden og validering til at sikre datakvaliteten og reducere gentaget kode i de enkelte apps, der opretter og bruger data i en tabel.

  • Forretningsregler: Validerer data på tværs af flere kolonner og tabeller og giver advarsels- og fejlmeddelelser, uanset hvilken app der bruges til at oprette dataene. Flere oplysninger: Oprette en forretningsregel for en tabel

  • Forretningsprocesforløb: Hjælper brugerne til at sikre, at de indtaster data konsekvent og benytter samme fremgangsmåde hver gang. Forretningsprocesforløb understøttes i øjeblikket kun for modelbaserede apps. Du kan finde flere oplysninger i: Oversigt over forretningsprocesforløb

  • Arbejdsprocesser: Automatiserer forretningsprocesser uden brugerinteraktion. Flere oplysninger: Klassiske Dataverse-arbejdsprocesser

  • Forretningslogik med kode: Understøtter avancerede udviklerscenarier, så appen kan udvides direkte via kode. Du kan finde flere oplysninger her: Anvend forretningslogik ved hjælp af kode

Integration med apps ved hjælp af hændelser

En almindelig måde at integrere app på er ved hjælp af hændelser. En hændelse som f.eks. tilføjelse af en ny række, indtræffer i Dataverse, og det skal meddeles et tilknyttet system, så der kan udføres en handling. Hvis der f.eks. er opstået en ny supportanmodning, udløser den måske en SMS-besked, der sendes til den tildelte supportmedarbejder.

Denne interaktivitet kan også forekomme i den modsatte retning — en opdatering i et eksternt system kan resultere i, at data bliver tilføjet, opdateret eller slettet fra et Power Platform-miljø.

De mest populære fremgangsmåder i Dataverse omfatter webhooks, Azure-beskeder (Service Bus, Event Hubs), Azure Logic Apps eller Power Automate.

Hændelser i Dataverse.

Webhooks

Med Dataverse kan du sende data om hændelser, der indtræffer på tjenesten, til en webtjeneste ved hjælp af webhooks. En webHook er et HTTP-letvægtsmønster, der forbinder web-API'er og -tjenester med en publicerings- og abonnementsmodel. WebHook-afsendere fortæller modtagere om hændelser ved at foretage forespørgsler, der modtager slutpunkter med nogle oplysninger om hændelserne.

Webhooks gør det muligt for udviklere og ISV'er at integrere Dataverse-data med deres egen brugerdefinerede kode, der er tilknyttet eksterne tjenester. Ved hjælp af webhook-modellen kan du sikre dit slutpunkt ved hjælp af et godkendelseshoved eller parameternøgler for forespørgelsesstrenge. Dette er mere enkelt end den delte adgangssignatur godkendelsesmodel, der bruges sammen med Azure Service Bus-integration.

  • Webhooks kan kun skaleres til det punkt, hvor den værtsbaserede webtjeneste kan håndtere meddelelserne.

  • Webhooks aktiverer synkrone og asynkrone trin.

  • Webhooks sender anmodninger om INDLÆG med JSON-nyttedata og kan anvendes af et hvilket som helst programmeringssprog eller webapp, der er placeret overalt.

  • Webhooks kan påkaldes fra et plug-in eller en brugerdefineret arbejdsprocesaktivitet.

Azure Service Bus

Service Bus giver en sikker og pålidelig kommunikationskanal mellem Dataverse-kørselsdata og eksterne, cloud-baserede brancheprogrammer. Denne funktion er især nyttig, når du skal holde uensartede Dataverse-systemer eller andre Dataverse-servere synkroniseret med ændringer i virksomhedsdata.

Hændelsesrækkefølgen er følgende:

  • En lytte-app er registreret på en Service Bus-løsnings slutpunkt og begynder at lytte aktivt til Dataverse-fjernkørselskonteksten på Service Bus.

  • En bruger udfører en handling i Dataverse, der udløser afviklingen af det registrerede færdigbyggede plug-in eller et brugerdefineret Azure-kompatibel plug-in. Plug-in'et starter et opslag, via et asynkront servicesystemjob, med den aktuelle anmodningsdatakontekst til Service Bus.

  • De krav, der sendt af Dataverse, er godkendt. Service Bus relæbehandler derefter fjernudførelseskonteksten til lyttefunktionen. Lyttefunktionen behandler kontekstoplysningerne og udfører en forretningsrelateret opgave med disse oplysninger. Service Bus giver den asynkrone tjeneste besked om et vellykket opslag og indstiller statussen for det relaterede systemjob til Fuldført.

Service Bus relæbehandler sammenhængen af de anmodede meddelelsesdata med Dataverse og Service Bus-lyttefunktionsapps. Service Bus giver også datasikkerhed, så det kun er autoriserede apps, der kan få adgang til de sendte Dynamics 365-data. Godkendelse af Dataverse til at sende datakontekst til SErvice Bus og til lyttefunktionsapps for at læse disse ved hjælp af signaturer til delt adgang til Azure.

Flere oplysninger: Service Bus og Service Bus-godkendelse og autorisation

Logic Apps og Power Automate

Logic Apps, der tilbydes via Azure, Power Automate og Microsoft Power Platform, kan udløse en arbejdsproces, der kan bruges til at integrere med programhændelser og data i en tidsplan eller efter aktivitet i en database, et system, en tjeneste eller en SaaS.

Logic Apps og Power Automate med Dataverse.

Disse arbejdsprocesser kan udføre logik og arbejde sammen med disse systemer ved hjælp af flere hundredvis af connectorer til databaser, PaaS og SaaS.

Når der f.eks. føjes en række til en relationsdatabase, f.eks. SQL, kan det udløse en arbejdsproces, der kan indsætte disse data i Dataverse.

Med muligheden for at oprette brugerdefinerede connectorer ved hjælp af definitioner for Open API (tidligere kaldet Swagger) er det også ligetil at inkludere tjenester, funktioner og kode, der kører i IaaS og Azure Kubernetes Service (AKS).

Integration af Dataverse med apps med OData API

Alle populære programmeringssprog understøtter en form for integration med REST-baserede API'er.

Dataverse med OData-API.

Dataverse Web API leverer en udviklingsoplevelse, der kan bruges på tværs af en lang række programmeringssprog, platforme og enheder. Web API implementerer OData (Open Data Protocol), version 4.0, en OASIS-standard for opbygning og forbrug af RESTful API'er over RTF-datakilder. Du kan få mere at vide om denne protokol på www.odata.org. Du kan finde flere oplysninger om denne standard i www.oasis-open.org.

Dataverse anlægger en "API ført"-tilgang. Det betyder, at tjenesten ikke blot angiver en mekanisme til at forespørge om data, den indeholder også metadata fra tjenesten i forbindelse med forretningsregler, begrænsninger osv., som du kan bruge til at oprette intelligente, apps og tjenester, der svarer.

API er sikret ved hjælp af OAuth. OAuth kræver en idtable-udbyder til godkendelse. I Dataverse er idtable-udbyderen Microsoft Entra ID. Hvis du vil godkende Microsoft Entra ved hjælp af en Microsoft-arbejds- eller skolekonto, skal du bruge MSAL (Microsoft Authentication Libraries).

Du kan finde flere oplysninger om, hvordan du kommer i gang med Dataverse Web API under Brug Dataverse Web API.

Du kan finde flere oplysninger om, hvordan du bruger Dataverse Web API sammen med OAuth i Brug OAuth sammen med Dataverse.

Plug-ins

I Dataverse er det muligt at skrive kode, der er placeret mellem API'en og dataene. Denne kode, som er skrevet i .NET, kaldes et plug-in. Da plug-in'et er placeret mellem API'en og dataene, gennemtvinges den samme logik i alle apps.

Plug-ins kan være synkrone eller asynkrone og udfører følgende opgaver:

  • Returner fejl til brugeren.

  • Forespørger Dataverse-data for at evaluere den logik, der skal udføres.

  • Udfører datahandlinger.

  • Udfører udgående HTTP-anmodninger.

Plug-ins registreres på punkterne i den pågældende hændelsespipeline, som illustreres her.

Plug-in event pipeline

I hændelsespipelinen kan følgende hændelser udføres:

  • Anmodninger og Svar kan undersøges og afvises eller manipuleres i flere trin i hændelsespipelinen.

  • Valideringsforvaltere kan udløse brugerdefinerede undtagelser for at afvise handlinger, som logikken betragter som ugyldig.

  • Startforvaltere kan redigere anmodninger før databasehandlingen.

  • Forvaltere efter handlinger kan ændre responser.

  • Asynkrone forvaltere udfører automatisering, når svaret er returneret.

En begrænsning med plug-ins er, at de skal være uafhængige. Hvis integrationskode kræver referencer til andre biblioteker, kan integrationen udføres ved hjælp af Azure Functions.

Azure Functions

Azure Functions giver mulighed for at vælge en serverkode til virksomheds- og integrationslogik.

Dataverse med Azure Functions.

Functions udløses af et kald fra et eksternt system, en tjeneste eller en kode. I forbindelse med Dataverse kan udløseren komme direkte fra Dataverse ved hjælp af Service Bus, en webhook eller et kald fra et plug-in. Derudover kan kald i Azure Funktions indledes via et flow i enten Logic Apps eller Power Automate, som involverer Dataverse-connector.

Flere oplysninger: Brug plug-ins til at udvide forretningsprocesser

Bemærk

Kan du fortælle os om dine sprogpræferencer for dokumentation? Tag en kort undersøgelse. (bemærk, at denne undersøgelse er på engelsk)

Undersøgelsen tager ca. syv minutter. Der indsamles ingen personlige data (erklæring om beskyttelse af personlige oplysninger).