Dela via


Arbeta med alla typer av appar

Microsoft Dataverse ger flera sätt att integrera i alla typer av appar (mobila, webbplatser, skrivbord), enheter, system och tjänster. För molnlösningar finns det olika sätt att integrera oavsett vilken modell som lösningen distribueras i—infrastruktur som en tjänst (IaaS), plattform som tjänst (PaaS) eller programvara som en tjänst (SaaS). För IaaS-baserade lösningar fungerar även integreringsmetoden om du kör en lösning i en programbehållare.

I vissa fall kan integrering med en app uppnås med hjälp av affärslogiken i Dataverse. I andra fall kan det innebära integrering via händelser, Dataverse OData API eller att använda plugin-program.

Definierar affärslogik

Tabeller i Dataverse kan använda rich server-side logic och validering för att säkerställa datakvaliteten och minska repetitiv kod i varje app som skapar och använder data i en tabell.

  • Affärsregler: verifierar data över flera kolumner och tabeller och ger varning och felmeddelanden oavsett appen som används för att skapa data. Mer information: Skapa en affärsregel för en tabell

  • Affärsprocessflöden: Användarguide för att säkerställa att de anger data på ett konsekvent sätt och gör samma steg varje gång. Affärsprocessflöden stöds för närvarande endast för modellbaserade appar. Mer information: Affärsprocessflöden, översikt

  • Arbetsflöden: automatisera affärsprocesser utan användarinteraktion. Mer information: klassiska Dataverse arbetsflöden

  • Affärslogik med kod: stöder avancerade scenarier för utvecklare för att utöka appen direkt via kod. Mer information: Tillämpa affärslogik med kod

Integrera med appar med hjälp av händelser

En vanlig metod för appintegrering är att använda händelser. Exempelvis uppstår en händelse som att lägga till en ny rad i Dataverse, och detta bör meddelas till ett associerat system så att en åtgärd kan utföras. Om en ny supportbegäran har upprättats kan det till exempel utlösa att ett SMS-meddelande skickas till den tilldelade supportpersonalen.

Interaktivitet kan också inträffa i den motsatta riktningen—en uppdatering i ett externt system kan resultera i att data läggs till, uppdateras eller tas bort från en Power Platform-miljö.

De vanligaste tillvägagångssätten i Dataverse involverar Webhooks, Azure-meddelanden (Service Bus, Event Hubs), Azure Logic Apps eller Power Automate.

Händelser i Dataverse.

Webhooks

Med Dataverse kan du skicka data om händelser som inträffar i tjänsten till en webbapp med hjälp av webhookar. En webhook är ett enkelt HTTP-mönster som används för att ansluta webb-API:er och tjänster till en publicerings-/prenumerationsmodell. Webhook-avsändare meddelar mottagarna om händelser genom att göra förfrågningar till mottagarens slutpunkter med information om händelserna.

Med webhookar kan utvecklare och ISV-utvecklare integrera Dataverse-data med sin egen anpassad kod som finns på externa tjänster. Med Webhook-modellen kan du skydda din slutpunkt genom att använda ett autentiseringshuvud eller frågesträngparameternycklar. Detta är enklare än signatur för delad åtkomst Autentiseringsmodell som används med Azure Service Bus-integrering.

  • Webhooks kan endast skalas till den plats där den värdbaserade webbtjänsten kan hantera meddelandena.

  • Med webhooks kan du aktivera synkron och asynkron procedur.

  • Webhooks skickar POST-förfrågningar med JSON-nyttolasten och kan konsumeras av alla programmeringsspråk eller webbappar som finns där.

  • Webhooks kan startas från ett plugin-program eller anpassade aktivitet i arbetsflöde.

Azure Service Bus

Service Bus tillhandahåller en säker och tillförlitlig kommunikationskanal mellan Dataverse körningsdata och externa, molnbaserade branschspecifika appar. Den här funktionen är särskilt användbar när du vill spara olika Dataverse system eller andra Dataverse servrar som är synkroniserade med affärsdataändringar.

Händelseserien är följande:

  • En lyssnarapp registreras på en Service Bus-lösnings slutpunkt och börjar aktivt lyssna efter Dataverse fjärrkörningens kontext i Service Bus.

  • En användare utför en åtgärd i Dataverse som utlöser körningar av ett inbyggt plugin-program eller ett anpassat Azure-medvetet plugin-program. Plugin-programmet startar ett inlägg, via ett asynkront tjänstsystemjobb, för den aktuella datakontexten för förfrågan till Service Bus.

  • De anspråk som har bokförts av Dataverse autentiseras. Service Bus vidarebefordrar sedan fjärrkörningskontexten till lyssnaren. Lyssnaren bearbetar kontextinformationen och utför en del affärsrelaterad uppgift med den informationen. Service Bus meddelas den asynkrona tjänsten av ett lyckat inlägg och anger status för den relaterade systemuppgiften som slutförd.

Service Bus vidarebefordrar datakontexten för begärandemeddelanden mellan Dataverse och Service Bus-lösningens lyssnarappar. Service Bus tillhandahåller även datasäkerhet så att bara auktoriserade appar får tillgång till de data som har bokförts av Dynamics 365. Tillstånd för Dataverse att skicka datakontext till Service Bus och för lyssnarappar ska kunna läsa den hanteras av delad åtkomstsignatur för Azure.

Mer information: Service Bus och Service Bus-autentisering och -auktorisering

Logic Apps och Power Automate

Logic Apps som erbjuds via Azure och som Power Automate erbjuder via Microsoft Power Platform kan utlösa ett arbetsflöde som kan användas för att integreras med apphändelser och data enligt ett schema eller efter aktivitet i en databas, system, tjänst eller SaaS.

Logic Apps och Power Automate med Dataverse.

Dessa arbetsflöden kan utföra logik och samverka med de här systemen med de hundratals kopplingarna till databaser, PaaS och SaaS.

Om en rad till exempel läggs till i en relationsdatabas, t.ex. SQL, kan det leda till ett arbetsflöde som kan infoga dessa data i Dataverse.

Med möjligheten att skapa anpassade anslutningar med hjälp av Open API (tidigare Swagger) definitioner för en tjänst är det också enkelt att inkludera tjänster, funktioner och kod som körs i IaaS och Azure Kubernetes Service (AKS).

Integrera Dataverse i appar med OData API

Alla populära programmeringsspråk stöder integrering med REST-baserade API:er.

Dataverse med OData API.

Webb-API:n för Dataverse tillhandahåller en utvecklingsmiljö som kan användas för många olika programmeringsspråk, plattformar och enheter Webb-API implementerar OData (Open Data Protocol), version 4.0, en OASIS-standard för att bygga och konsumera RESTful-API:er över avancerade datakällor. Du kan läsa mer om protokollet på www.odata.org. Mer information om standarden finns i www.oasis-open.org.

Dataverse utför en "API först"-metod. Detta innebär att tjänsten inte bara tillhandahåller en mekanism för att fråga data, den tillhandahåller även metadata från tjänsten för affärsregler, begränsningar och så vidare som du kan använda för att bygga intelligenta, responsiva appar och tjänster.

API skyddas med hjälp av OAuth. OAuth kräver en idtable-leverantör för autentisering. För Dataverse är idtable leverantören Microsoft Entra ID. Om du vill autentisera med Microsoft Entra med hjälp av ett Microsoft-arbets- eller skol-konto använder du Microsoft Authentication Libraries (MSAL).

Mer information om hur du kommer igång med Dataverse webb-API finns i använda Dataverse webb-API.

Mer information om hur du använder Dataverse webb-API med OAuth finns i använda OAuth med Dataverse.

Plugin-program

I Dataverse kan du skriva kod som ligger mellan API:n och data. Koden, som skrivits i .NET, kallas för ett plugin-program. Eftersom plugin-programmet placeras mellan API:et och data, gäller samma logik i varje app.

Plugin-program kan vara synkrona eller asynkrona och utföra följande uppgifter:

  • Returnera fel till användaren.

  • Fråga Dataverse-data för att utvärdera logiken som ska utföras.

  • Utför dataåtgärder.

  • Utför utgående HTTP-begäran.

Plugin-program registreras i punkter i pipeline för evenemang, som illustreras här.

Plug-in event pipeline

Inom pipeline för händelser kan följande händelser inträffa:

  • Förfrågningar och svar kan undersökas och avvisas eller manipuleras i flera steg i händelseförloppet.

  • Valideringshanterare kan utlösa anpassade undantag för att avvisa åtgärder som din logik anser vara ogiltig.

  • Hanterare före huvudåtgärd kan ändra förfrågningar före databasåtgärden.

  • Hanterare efter huvudåtgärd kan ändra svar.

  • Asynkrona hanterare utför automatisering efter att svaret har returnerats.

Ett villkor med plugin-program är att de måste vara självständiga. Om integrationskoden kräver referenser till andra bibliotek kan integreringen utföras med hjälp av Azure Functions.

Azure Functions

Azure Functions tillhandahåller ett serverlöst kodkörningsalternativ för affärs- och integreringslogik.

Dataverse med Azure Functions.

Funktioner aktiveras av ett anrop från ett externt system, en tjänst eller en kod. För Dataverse kan utlösaren komma direkt från att Dataverse använda Service Bus, en webhook eller ett samtal från ett plugin-program. Dessutom kan Azure Functions startas via ett flöde i antingen Logic Apps eller Power Automate som inbegriper Dataverse-anslutningen.

Mer information: Använda plugin-program för att utöka affärsprocesser

Anteckning

Kan du berätta om dina inställningar för dokumentationsspråk? Svara i en kort undersökning. (observera att undersökningen är på engelska)

Undersökningen tar ungefär sju minuter. Inga personuppgifter samlas in (sekretesspolicy).