Dela via


Översikt över miljövariabler för Power Platform

Miljövariabler möjliggör det grundläggande scenariot för hantering av appens livscykel (ALM) för att flytta en applikation mellan Power Platform-miljöer. I det här scenariot förblir programmet exakt samma förutom några viktiga externa programreferenser (t.ex. tabeller, anslutningar och nycklar) som skiljer sig mellan källmiljön och målmiljön. Programmet kräver att tabellerna och anslutningarna är exakt samma struktur mellan käll- och målmiljöerna, med vissa skillnader. Med miljövariabler kan du ange vilka av dessa olika externa referenser som ska uppdateras när programmet flyttas över miljöer.

Miljövariabler lagrar parameternycklarna och värdena som sedan används som indata för olika andra programobjekt. Genom att separera parametrarna från de tidskrävande objekten kan du ändra värdena i samma miljö eller när du migrerar lösningar till andra miljöer. Alternativet är att lämna hårdkodade parametervärden i de komponenter som använder dem. Denna metod är ofta problematisk, i synnerhet när värdena måste ändras i samband med ALM-åtgärder. Eftersom miljövariabler är lösningskomponenter kan du transportera referenserna (nycklarna) och ändra värdena när lösningar migreras till andra miljöer.

Fördelar med att använda miljövariabler:

  • Tillhandahåll nya parametervärden medan du importerar lösningar till andra miljöer.
  • Lagra konfiguration för datakällor som används i arbetsyteappar och flöden. Till exempel kan SharePoint Online-webbplats- och listparametrar lagras som miljövariabler. Med den här metoden kan du ansluta till olika webbplatser och listor i olika miljöer utan att behöva ändra appar och flöden.
  • Paketera och transportera dina anpassningar och konfigurationer tillsammans och hantera dem på en enda plats.
  • Paketera och transportera hemligheter, till exempel autentiseringsuppgifter som används av olika komponenter, separat från de komponenter som använder dem.
  • En miljövariabel kan användas för många olika lösningskomponenter, oavsett om de är samma typ av komponent eller olika. Exempelvis kan en canvas-app och ett flöde använda samma miljövariabel. När värdet för miljövariabeln behöver ändras behöver du bara ändra ett värde.
  • Om du behöver dra tillbaka en datakälla i produktionsmiljöer kan du uppdatera miljövariabelvärdena med information för den nya datakälla. Program och flöden behöver inte ändras och kommer att börja använda den nya datakällan.
  • Verktygen stöds av SolutionPackager och DevOps och möjliggör löpande integrering och kontinuerlig leverans (CI/CD).
  • Miljövariablerna kan packas upp och lagras i källkontrollen. Du kan också lagra filer med olika miljövariabler för den separata konfiguration som behövs i olika miljöer. Solution Packager kan sedan godkänna filen som motsvarar den miljö lösningen importeras till.

Hur fungerar miljövariabler?

Miljövariabler kan skapas och ändras via det moderna lösningsgränssnittet. De kan också skapas automatiskt när du ansluter till vissa datakällor i arbetsyteappar eller med kod. De kan också importeras till en miljö via lösningar. Miljövariabler kan användas som indata vid redigering av appar för arbetsytor, Power Automate flöden, plugin-program och tillägg av Power BI instrumentpaneler i modelldrivna appar. När du använder miljövariabler hämtas värdena sedan från miljövariablerna, och kan ändras när lösningar importeras till andra miljöer.

Skapa en miljövariabel manuellt i en lösning

  1. Logga in på Power Apps (make.powerapps.com) och välj sedan Solutions i det vänstra fönstret. Om objektet inte finns i sidopanelen väljer du ... Mer och välj sedan det objekt som du vill använda.
  2. Öppna den lösning du vill använda eller skapa en ny.
  3. I kommandofältet väljer du Ny>Mer och väljer sedan Miljövariabel.
  4. Fyll i följande kolumner i den högra rutan och välj sedan Spara:
    • Visningsnamn. Ange ett namn för miljövariabeln.

    • Name. Det unika namnet genereras automatiskt från visningsnamn, men du kan ändra det.

    • Datatyp. Välj bland Decimaltal, Text, JSON, Twå alternativ, Datakälla och Hemlighet.

      Obs

      • Om Datakälla är den valda typen måste du även välja anslutningsprogram, en giltig anslutning för det valda anslutningsprogrammet, samt parametertyp. Anslutningen lagras inte som en del av miljövariabeln. Miljövariabeln lagrar information som inte finns i den anslutning som krävs för att ansluta Power Apps till rätt server och tabell. Anslutningen används endast för att hämta tillgängliga parametervärden, till exempel de SharePoint platser som du har åtkomst till eller de listor som är associerade med en webbplats.
      • Om Secret är den valda typen, krävs ytterligare information för att konfigurera Azure Key Vault för att Power Platform ska få åtkomst till hemligheten.
    • Aktuellt värde. Kallas även för värdet. Den här egenskapen är valfri och är en del av miljövariabelns värdetabell. Ett definierat värde används även om ett standardvärde finns. Avlägsna värdet från din lösning om du inte vill använda det i nästa miljö. Värdena är också separerade i separata JSON-filer i den exporterade filen solution.zip och kan redigeras offline. Mer information: Hur tar jag bort ett värde från en miljövariabel?

    • Standardvärde. Den här kolumnen ingår i definitionstabellen för miljövariabler och är inte obligatorisk. Standardvärdet används om det inte finns något aktuellt värde.

      Genom att separera standardvärdet och det aktuella värdet kan du hantera definitionen och standardvärdet separat från värdet. En programutgivare kan till exempel lista sitt erbjudande på Marketplace med ett standardvärde. Sedan kan kunden erbjuda ett nytt värde. När programutgivaren publicerar uppdateringar för programmet skrivs inte värdet som har angetts av kunden över.

      Ny miljövariabel.

      Obs

      Ett värde kan inte existera utan definition. Gränssnittet tillåter endast att ett värde per definition skapas.

Power Apps kan skapa miljövariabler automatiskt

På fliken General i Power Apps inställningar:

  • Aktivera alternativet Skapa miljövariabler automatiskt när du lägger till datakällor. Nu när du lägger till en ny datakälla i din app läggs en miljövariabel till åt dig.

    Skapa miljövariabel automatiskt.

Olika datakällor

Olika datakällor möjliggör olika typer av miljövariabler.

Microsoft Dataverse

Power Apps ansluter internt till Dataverse. Du behöver ingen miljövariabel för tabeller i den aktuella miljön. När du ansluter till Dataverse söker programmet automatiskt efter exakt samma tabellnamn i alla miljöer du portar det till. Så länge tabellnamnsstrukturen är densamma i målmiljön som i den ursprungliga miljön fungerar den.

Om du använder en extern tabell från en annan miljö (via Ändringsmiljö) förutsätter Power Apps att du alltid vill referera till exakt samma tabell. Du behöver en miljövariabel om du behöver att den externa tabellen ska vara en annan extern tabell när du går från utveckling till testning eller prod. Det är enklast att tillåta att Power Apps automatiskt skapar miljövariabeln åt dig. (Om du tidigare har lagt till tabellen i appen aktiverar du inställningsreglaget, släpper den externa tabellen och lägger sedan till den igen.)

När du lägger till den externa tabellen i programmet väljer du fliken Avancerat för att välja miljövariabeln.

Extern miljö för Dataverse-miljövariabel.

SharePoint

SharePoint stöder endast Microsoft Entra anslutningar. För SharePoint krävs därför, förutom en giltig anslutning, en separat miljövariabel för webbplats och lista.

Så här använder du miljövariabler med SharePoint listor:

  • Visningsnamnet och det logiska namnet för varje motsvarande kolumn i käll- och målmiljöerna måste matcha.
  • Miljövariabler för SharePoint måste ha matchande metadata. SharePoint har interna identifierare som kanske inte matchar mellan målmiljöer. Om du till exempel skapar en lista med samma namn och kolumner i en målmiljö kommer de interna namnen inte att matcha. Metadatan stämmer alltid överens om du duplicerar en SharePoint-webbplats och kopierar den till den målmiljön.

SQL Server

SQL Server stöder många olika typer av autentisering och anslutningar. Använd miljövariabler för Microsoft Entra anslutningar. En separat miljövariabel krävs för servern och databasen. Programmet är bundet till specifika tabellnamn så att de antas vara desamma mellan miljöer.

Använd inte miljövariabler för delade anslutningar, till exempel grundläggande SQL-autentisering med SQL Server. Använd anslutningsreferenser för information som traditionellt skickas som en del av connection string. Grundläggande SQL-autentiseringsparametrar är alla en del av connection string. Exempelvis anges namnet på Server och Databas när anslutningen skapas och skapas därför alltid från anslutningen.

Miljövariabler för datakälla används för anslutningar med autentiseringstjänster som Microsoft Entra. I dessa typer av anslutningar har Power Apps bara en identifierad användare. Power Apps kan inte härleda vilken tjänst eller tabell du tänker arbeta med från anslutningen.

Ange nya värden när du importerar lösningar

Importgränssnittet i den moderna lösningen innehåller funktioner för att ange värden för miljövariabler. Detta anger värdeegenskapen i environmentvariablevalue tabellen.

Miljövariabelvärden visas när du importerar lösningar eller när du använder pipelines för att distribuera. Miljövariabler utan standardvärde eller värdeprompt för ett värde, men de är annars förifyllda med en etikett under textområdet som anger värdets källa: lösningsvärde, målmiljövärde eller standardvärde.

Synlighet för miljövariabler under import av lösningar.

Obs

  • I vissa fall kan en varning om nekad åtkomst komma att visas för specifika värden för datakällans miljövariabel, detta om den importerande utvecklaren inte har åtkomst till anslutningen eller källan som används för miljövariabeln. Det här är en icke-blockerande varning, men något att notera beroende på hur du planerar att använda miljövariabeln i målmiljön.
  • Du kan ta bort värdet från lösningen innan du exporterar lösningen. På så sätt finns det befintliga värdet kvar i utvecklingsmiljön, men exporteras inte i lösningen. Den här metoden gör det möjligt att tillhandahålla ett nytt värde när lösningen importeras till andra miljöer. Mer information: Hur tar jag bort ett värde från en miljövariabel?

Aviseringar

En avisering visas när miljövariablerna saknar värden. Ange värdena så att komponenter som är beroende av miljövariabler inte misslyckas.

Säkerhet

Tabellen environmentvariabledefinition är användar- eller teamägd. När du skapar ett program som använder miljövariabler måste du tilldela användarna rätt behörighetsnivå till den här tabellen. Behörighet till tabellen environmentvariablevalue ärvs från den överordnade environmentvariabledefinition tabellen och kräver därför inga separata privilegier. Privilegier för environmentvariabledefinition-tabeller ingår som standard i säkerhetsrollerna Miljöskapare och Grundläggande användare. Mer information: Säkerhet i Dataverse.

Namngivning

Se till att miljövariabelnamnen är unika så att de kan refereras till korrekt. Dublicering av visningsnamn för miljövariabler gör det svårt att åtskilja och använda miljövariabler. Se till att miljövariabelnamnen är unika så att de kan refereras till korrekt. Namnen $authentication och $connection är särskilt reserverade parametrar för flöden och bör undvikas. Flödet sparas inte om miljövariabler med dessa namn används. Om en miljövariabel används i ett flöde och visningsnamnet för miljövariabeln ändras, visas både gamla och nya visningsnamn som hjälp vid identifiering. När du uppdaterar flödet bör du ta bort referensen till miljövariabeln och sedan lägga till den igen.

Aktuella begränsningar

  • Validering av värden för miljövariabler sker i användargränssnittet och i de komponenter som använder dem, men inte i Dataverse. Se därför till att rätt värden anges om de ändras via kod.
  • Power Platform Build Tools aktiviteter är ännu inte tillgängliga för hantering av miljövariabler för datakällor. Detta blockerar emellertid inte deras användning inom verktyg som tillhandahålls av Microsoft och i källkontrollsystem.
  • Att interagera med miljövariabler via anpassad kod kräver ett API-anrop för att hämta värdena. Det finns inte ett cacheminne som är synligt för koden som inte är från Microsoft att använda.
  • Miljövariabler får ha högst 2 000 tecken.

Vanliga frågor och svar

Varför kan jag inte se värdet för min miljövariabel?

Om miljövariabeln finns i en hanterad lösning kommer du inte att kunna se värdet om du inte tittar inuti Standardlösningen. Detta beteende är designat eftersom miljövariabelns värde är en ohanterad anpassning.

Hur visar jag var miljövariabler används?

Antingen genom att välja Visa beroenden i lösningsgränssnittet, medan du skapar komponenter, eller i källkontroll och i lösningsfilen genom att visa appen eller flödesmetadata.

Är datakälla miljövariabler samma som anslutningar?

Nej Fastän de är relaterade representerar en anslutning en referens eller autentisering som krävs för att använda anslutningen. Datakälla miljövariabler lagrar parametrar som krävs av en eller flera åtgärder i kontakten och dessa parametrar varierar ofta beroende på åtgärden. En SharePoint Online-anslutning lagrar till exempel ingen information om webbplatser, listor eller dokumentbibliotek. Därför kräver anrop till anslutningsprogrammet både en giltig anslutning och några ytterligare parametrar.

Kan min automatiska ALM-pipeline använda olika värdefiler för olika miljöer?

Ja. Lösningsförpackaren accepterar filnamn som indataparametrar så att pipelinen kan packa en fil med olika värden i lösningen beroende på vilken miljötyp den körs mot.

Ska jag inkludera värdet i min lösning?

Nej Miljövariabler är avsedda att användas av program som behöver ha olika värden i olika miljöer där lösningen distribueras. Definitioner av miljövariabler bör ingå i din lösning, men värdena bör anges för målmiljön under distributionen. Det här beteendet resulterar i att definitionen av miljövariabeln är ett hanterat lösningsobjekt i målmiljön medan miljövariabeln är en ohanterad post.

Varför kan jag inte ta bort ett värde i min miljö?

Om värdet ingick i en hanterad lösning är det enda sättet att ta bort värdet att uppdatera lösningen i källmiljön för att exkludera värdet och sedan exportera en ny version av lösningen. Den nya versionen kan sedan importeras till miljön med hjälp av en uppgraderingsåtgärd (inte en uppdatering), vilket resulterar i att värdeposten tas bort.

Tänk om någon oavsiktligt tar bort ett värde?

Om det inte redan har förhindrats av beroendesystemet, använder körningen det senaste kända värdet som en reserv.

När används det nya värdet i arbetsyteappar och molnflöden om ett värde ändras?

Det kan ta upp till en timme att fullständigt publicera uppdaterade miljövariabler eftersom värdet skjuts in i apparna och flödar asynkront.

Krävs förstklassiga licenser?

Nej Även om ALM kräver Dataverse (eller Dynamics 365-appar), krävs inte användning av premium-anslutningar. Den enda frågan är om du använder Dataverse kopplingen för att interagera med miljövariabler på samma sätt som med andra dataposter som konton eller kontakter. Tidigare var detta det enda sättet att använda miljövariabler i appar och flöden.

Finns det en gräns för antalet miljövariabler jag kan ha?

Nej Maxstorleken för en lösning är dock 95 MB. Mer information: Skapa en lösning

Kan visningsnamn och beskrivningar för miljövariabler lokaliseras?

Ja.

Ska jag använda miljövariabler i stället för att lagra konfigurationsdata i anpassade tabeller?

Ja om dina konfigurationsdata inte är relationsdata. Miljövariabler ska användas för nyckel: värdepar och när värdet troligen behöver vara annorlunda i olika miljöer. Andra verktyg, till exempel verktyget Konfigurationsmigrering, passar bättre för migrering av relationskonfigurationsdata som lagras i anpassade tabeller. Till skillnad från andra konfigurationsdata migreras miljövariabler inom lösningar, vilket gör det mycket enklare att hantera och importera effektivare.

Varför sparas inte min anslutning för datakällans miljövariabler?

Anslutningar används endast för att generera användargränssnittet. Om du till exempel vill hämta vänliga namn för SharePoint-listor som är associerade med en webbplats. När du redigerar en miljövariabel för datakällan måste du välja en anslutning med åtkomst till datakällan. Om du inte längre har åtkomst till anslutningen kan du ange ett värde manuellt. Ange till exempel SharePoint webbplats-URL eller unik identifierare (GUID) för en lista.

När det finns flera anslutningar tillgängliga för en enda miljövariabel (typen datakälla) finns det en avsiktlig implementering för att välja den första anslutningen i listan över anslutningar. Eftersom det vanligtvis bara finns en anslutning som är associerad med en miljövariabel, är detta inget som vanligtvis måste verifieras. Med de senaste ändringarna av synligheten för miljövariabler är det lättare att verifiera vid import.

Hur tar jag bort ett värde från en miljövariabel?

Du kanske vill ta bort värdet för en miljövariabel från lösningen innan du exporterar lösningen. På så sätt finns det befintliga värdet kvar i utvecklingsmiljön, men exporteras inte i lösningen. Den här metoden gör det möjligt att tillhandahålla ett nytt värde när lösningen importeras till en annan miljö.

För att ta bort värdet, följ stegen nedan.

  1. I lösningen där miljövariabeln finns väljer du den miljövariabel som ska visa egenskaperna.

  2. Under Aktuellt värde, välj  >Ta bort från den här lösningen.

    Ta bort värdet från en miljövariabel.

Kan jag använda miljövariabler i anpassade anslutningar?

Ja. Stöd för miljövariabel i anpassade kontakter

Se även

Använd miljövariabler för datakällor i canvasappar
Använda miljövariabler i Power Automate lösningsmolnflöden
EnvironmentVariableDefinition table/entity reference
Web API samples
Använd datakällmiljövariabler i Canvas-appar
Använda miljövariabler i Power Automate lösningsflöden i molnet
Använd Azure Key Vault hemligheter
Stöd för miljövariabler i anpassade kontakter
Power Apps Blog: Miljövariabler tillgängliga i förhandsvisning!