Automatisere ved hjelp av grensesnittelementer

Skrivebordsflyter bruker brukergrensesnittelementer til å samhandle med programmer og nettsider, slik at de ikke trenger å bruke bildegjenkjenning eller absolutte koordinater. De fleste automatiserings- og nettleserautomasjonshandlinger bruker grensesnittelementer som inndata for å identifisere bestemte elementer på vinduer og nettsider.

UI-elementer

Når du distribuerer en automasjonshandling for brukergrensesnitt eller nettleserautomasjon, må du kanskje oppgi et grensesnittelement som inndata. Hvis du vil legge til et nytt brukergrensesnittelement, kan du legge det til direkte fra handlingsegenskapene eller gjennom grensesnittelementruten i flytutformingen.

Hver av disse handlingsgruppene godtar en egen type for grensesnittelementer. Automatiseringshandlinger for brukergrensesnitt godtar elementer i brukergrensesnittet for skrivebordet, mens handlinger for nettleserautomatisering godtar elementer i nettgrensesnittet.

Skjermbilde av de tilgjengelige grensesnittelementene i handlingen Trykk på knapp i vindu.

Hvis du vil legge til et nytt grensesnittelement i flyten, legger du til et nytt et grensesnittelement via en handling eller ruten for grensesnittelementer, uthever det respektive elementet og trykker på CTRL+venstreklikk. Når valget er fullført, velger du Fullført.

Skjermbilde av et uthevet element.

Merk

Elementvelgeren for brukergrensesnitt støtter registrering av UI-automatisering (UIA), råvisning av UI-automatisering v3 (UIA3 Raw) og Microsoft Active Accessibility (MSAA)-velgere når du arbeider med skrivebordsgrensesnittelementer. Som standard fungerer velgeren i UIA-modus. Du kan endre registreringsmodus ved hjelp av menyen øverst til høyre i elementvelgeren for brukergrensesnittet. Velg MSAA for å målrette mot eldre programmer som ikke eksponerer UIA-velgere, eller UIA3 Raw når du trenger å vise og registrere alle mellomliggende lag i Raw-automatiseringstreet. Når du aktiverer MSAA- eller UIA3 Raw-modus, vises et banner i elementvelgeren for brukergrensesnittet for å angi at du registrerer henholdsvis MSAA- eller UIA3 Raw-velgere. Hvis du vil ha mer informasjon om forskjellen mellom UIA-, UIA3 Raw- og MSAA-velgere, kan du se elementtyper for brukergrensesnittet.

Eventuelle lagrede grensesnittelementer legges til i grensesnittelementruten. For å få tilgang til ruten Grensesnittelementer velger du fanen Grensesnittelementer på høyre side i flytdesigneren.

Skjermbilde av fanen for grensesnittelementer.

Du kan sortere elementer alfabetisk gjennom sorter-alternativet på fanen Elementer i brukergrensesnittet. Hvis du vil fjerne alle grensesnittelementene som ikke brukes i noen handling, merker du prikkikonet ved siden av sorter-alternativet og fjerner ubrukte grensesnittelementer.

Hvis du vil gi nytt navn til eller slette et grensesnittelement, høyreklikker du på det respektive elementet og velger den aktuelle funksjonen.

Hvis du vil finne ut hvor et bestemt brukergrensesnittelement brukes i flyten, høyreklikker du på det og velger Finn bruk. Resultatene viser alle handlingene som bruker dette grensesnittelementet. Dobbeltklikk på et resultat for å utheve handlingen i arbeidsområdet.

Skjermbilde av ruten for grensesnittelementer.

Elementtyper for brukergrensesnitt

Skrivebordsflyter støtter to typer grensesnittelementer basert på kilden deres: elementer i brukergrensesnittet for skrivebordet og elementer i nettgrensesnittet.

Du kan registrere elementer for skrivebordsgrensesnitt fra et hvilket som helst Windows program, inkludert komponenter som ikke er nettsidekomponenter i nettlesere, for eksempel adresselinjen. Tre typer velgere støttes i skrivebordsgrensesnittelementer:

  • UI-automatisering (UIA)-velgere

    UIA er det moderne tilgjengelighetsrammeverket introdusert av Microsoft for å erstatte MSAA. Det er den anbefalte teknologien for å automatisere de fleste Windows programmer, spesielt de som er bygd med nyere grensesnittrammeverk, for eksempel WPF, WinForms og Universal Windows Platform (UWP). UIA tilbyr mer robust og detaljert elementinformasjon, forbedrede hierarkistrukturer og større pålitelighet i automatiseringsscenarioer.

    Bruk UIA-velgere når det er mulig for bedre ytelse, vedlikehold og støtte på tvers av moderne skrivebordsprogrammer.

  • Microsoft Active Accessibility (MSAA)-velgere

    MSAA er en eldre tilgjengelighetsteknologi som går forut for UIA. Den brukes hovedsakelig for eldre programmer som ikke eksponerer UIA-elementer, for eksempel eldre Windows programmer som er bygd med teknologier som VB6 eller klassisk Win32. Selv om MSAA gir mindre detaljer og struktur enn UIA, er det viktig for å aktivere automatisering i miljøer der UIA ikke er tilgjengelig.

    Bruk MSAA-velgere når du målretter mot eldre eller spesialbygde programmer som ikke viser grensesnittkomponentene sine via UIA.

  • UIA3 Raw-velgere

    UIA3 Raw er en avansert UI-automatisering-basert registreringsmodus som bruker UIA3-rammeverket til å få tilgang til det rå, ufiltrerte grensesnittelementtreet. I motsetning til standard UIA-velgere, som er avhengige av en raffinert kontrollvisning av programmet, viser UIA3 Raw alle elementer i grensesnitthierarkiet, inkludert mellomliggende, ikke-interaktive komponenter og komponenter på rammeverknivå.

    Denne modusen er spesielt nyttig for å automatisere programmer med komplekse eller ikke-standard grensesnittstrukturer, for eksempel egendefinerte gjengitte kontroller, elektronbaserte apper eller tilfeller der elementer ikke er tilgjengelige gjennom standard UIA-velgere. UIA3 Raw kan vise flere hierarkilag og egenskaper som ellers ikke er tilgjengelige, noe som muliggjør mer presis målretting i utfordrende scenarier.

    Bruk UIA3 Raw-velgere når UIA-velgere ikke på en pålitelig måte kan fange opp eller identifisere elementer, eller når det kreves dypere tilgang til programmets brukergrensesnittstruktur.

Med grensesnittelementvelgeren i grensesnittautomatiseringshandlinger kan du bare registrere elementer i brukergrensesnittet på skrivebordet. Med en meny for registreringsmodus øverst til høyre i velgeren kan du velge mellom UIA-, UIA3 Raw- og MSAA-modus. Som standard bruker velgeren UIA, men du kan bytte til UIA3 Raw for avanserte scenarier eller MSAA når du automatiserer eldre programmer. En synlig melding i velgeren angir når en ikke-standardmodus er aktiv.

Grensesnittelementruten viser elementer som er lagret, med en indikator som viser om elementene ble tatt ved hjelp av UIA, UIA3 Raw eller MSAA. Denne indikatoren hjelper deg med å identifisere velgertypen som brukes for hvert element i flyten.

Viktig

Du kan hente elementer fra nettsider gjennom brukergrensesnittelementvelgeren for automatiseringshandlinger for brukergrensesnittet. Velgerne representerer imidlertid skrivebordselementer, ikke nettelementer.

Du kan registrere nettgrensesnittelementer fra nettsider og bare bruke dem i nettleserautomasjonshandlinger.

Automatiseringshandlinger for nettleser godtar bare grensesnittelementer hentet fra nettsider. Grensesnittelementvelgeren for disse handlingene viser derfor ikke eksisterende grensesnittelementer som er lagret fra skrivebordsprogrammer.

Hvis du vil ha mer informasjon om skrivebords- og nettautomatisering, kan du se Automatiser skrivebordsflyter og Automatiser nettflyter.

Grensesnittelementer for nettsider

Hvis du vil hente et grensesnittelement fra en nettside, må du installere den riktige nettleserutvidelsen. Hvis du vil ha mer informasjon om støttede nettlesere og den nødvendige utvidelsen, kan du se Bruke nettlesere og administrere utvidelser.

Skill skrivebord fra elementer i nettgrensesnittet

Grensesnittelementruten viser spesielle visuelle indikasjoner for å hjelpe deg med raskt å gjenkjenne forskjellen mellom skrivebords- og nettgrensesnittelementer.

Skjermbilde av visuelle indikasjoner for grensesnittelementene i ruten for grensesnittelement.

Når du registrerer et skrivebordselement, vises skrivebordsikonet. Når du registrerer et nettelement, vises nettikonet. På denne måten bekrefter du elementtypen før du lagrer den.

Skjermbilde av visuell indikasjon på grensesnittelementtype under registrering.

En annen metode for å kontrollere typen et grensesnittelement er å gå gjennom velgerne. Grensesnittelementer for skrivebordet har vanligvis skrivebordet som det overordnede elementet, mens nettgrensesnittelementene har en nettside som rotelementetet.

Skjermbilde av en velger for et skrivebordsgrensesnittelement.

Elementer i brukergrensesnittet i nettleservinduer

Automatiser programdelen av en nettleser (1) ved hjelp av skrivebordsgrensesnittelementer. Bruk for eksempel grensesnittautomasjonshandlinger til å samhandle med adresselinjen eller fanene.

På den annen side automatiserer du de innlastede nettsidene i nettleseren (2) ved hjelp av nettgrensesnittelementer og nettleserautomatiseringshandlinger.

Under innspillingen skiller opptakeren automatisk programområdet for nettleseren fra nettsidene og genererer de aktuelle grensesnittelementene og handlingene.

Skjermbilde av et Microsoft Edge-vindu med uthevede områder for nettleserprogrammet og nettsiden.

Samhandlinger med flytt-og-slipp-nettgrensesnittelementer fungerer kanskje ikke som forventet på grunn av iboende begrensninger. En løsning er å registrere grensesnittelementer for skrivebord på en nettside ved å åpne grensesnittelementvelgeren via en handling i automatiseringsgruppen for brukergrensesnitt ved å velge Legg til UI-element i parameteren UI element. Det registrerte grensesnittelementet er av skrivebordstypen og kan brukes i handlingen Drag and drop UI element in window. Husk at du bare kan bruke skrivebordsgrensesnittelementer i handlinger i handlingsgruppen for automatisering av brukergrensesnittet for Power Automate for skrivebordet. Det er viktig å være klar over at grensesnittelementer for skrivebord på nettsider ikke er like pålitelige som nettmotstykkene, og er underlagt nettleserprogramdetaljer, for eksempel nettleserversjonen.

Egenskaper for grensesnittelementer

Alle grensesnittelementer består av en eller flere velgere som finner grensesnittet eller nettkomponenten som Power Automate samhandler med.

Merk

Brukere kan opprette flere velgere for et grensesnittelement. Når en velger mislykkes, bruker Power Automate følgende velger i den definerte rekkefølgen:

Hvis du vil administrere velgerne for et brukergrensesnittelement, høyreklikker du på det og velger Rediger. Dette alternativet viser velgerverktøyet, der du kan redigere velgerne med et visuelt eller tekstlig redigeringsprogram.

Hver velger består av flere elementer som representerer den hierarkiske strukturen til grensesnittelementet i programmet eller på nettsiden. Attributtene beskriver hvert element unikt og skiller det fra andre elementer.

Skjermbilde av det visuelle velgerverktøyet.

Alle velgere vises med et standard egendefinert navn som gjør dem lett tilgjengelige. Hvis du vil gi en velger nytt navn, høyreklikker du på navnet og velger Gi nytt navn.

Når du redigerer et brukergrensesnittelement med flere velgere, kan du deaktivere en velger ved å høyreklikke på det og velge Deaktiver. Denne funksjonaliteten kan være nyttig under testing.

Skjermbilde av alternativene for å gi nytt navn til og slette en velger.

Når du har redigert velgerne, velger du Lagre for å bruke endringene. Når du lagrer, tas endringene i bruk i alle selektorene i ett trinn.

Hvis du vil ha mer informasjon om velgere og hvordan du bygger dem manuelt, kan du se Bygge en egendefinert velger.

Grensesnittelementer med tekstbaserte velgere

I tillegg til standardmetoden for generering av velgere for grensesnittelementer, støtter Power Automate å opprette velgere basert på tekstverdien for et element.

Denne funksjonen er nyttig for automatiseringsscenarier som håndterer elementer i skrivebordsprogrammer eller websider som alltid inneholder bestemte tekster. Selektorer basert på disse tekstene er mer pålitelige og mer robuste mot mulige fremtidige endringer i applikasjonen eller strukturen på nettsiden.

Du kan generere tekstbaserte velgere bare når du registrerer grensesnittelementer ved hjelp av elementvelgeren for brukergrensesnitt (UI-elementer-ruten eller nettleser-/brukergrensesnittautomatiseringshandlinger). Du kan ikke generere dem under innspillingen.

Hvis du vil registrere et brukergrensesnittelement med en tekstbasert velger, åpner du elementvelgeren for brukergrensesnittet, høyreklikker ønsket element og velger Fang basert på tekst.

Skjermbilde av alternativet Hent basert på tekst.

Deretter vises et nytt vindu med to felt på skjermen:

  • Tekstverdi-feltet inneholder elementets tekst som en foreslått verdi. Du kan endre denne verdien til en hardkodet verdi eller en variabel.
  • Du kan angi Operator-feltet til ulike operatorer for å justere funksjonaliteten til velgeren.

Hvis du velger Capture , legges grensesnittelementet til med riktig tekstbasert velger i grensesnittelementrepositoriet.

Skjermbilde av dialogboksen Opprett en tekstbasert velger.

Tekstbaserte velgere bruker attributtet Navn til elementet som er tatt opp, for skrivebordsautomatisering og Tekst-attributtet til nettleserautomatisering. De er bare tilgjengelige for grensesnittelementer som selv inneholder en tekstverdi.

De er med andre ord tilgjengelige for grensesnittelementer med attributtet Navn eller Tekst som omfatter en verdi. De er ikke tilgjengelige for elementer som ikke har en slik tekstverdi, selv om de har underordnede elementer med tekst i strukturen.

Merk

For SAP-programmet bruker tekstbaserte velgere attributtet Tekst i stedet for Navn-attributtet som de vanligvis bruker ved skrivebordsautomatisering. SAP-automatisering fungerer mer effektivt med standardvelgere basert på ID-attributtet.

Kjente problemer og begrensninger

  • Hvis du velger Legg til grensesnittelement, holder pekeren over et vindu og velger å registrere et grensesnittelement etter tekst, genererer prosessen en standardvelger. Denne velgeren inkluderer Prosess-attributtet sammen med Navn.

  • Når du bruker en variabel med en annen operator enn Lik, viser redigeringsprogrammet for egendefinert tekst velgeren i stedet for visualobjektverktøyet. Denne funksjonaliteten unngår en begrensning som gjør kombinasjonen ovenfor ikke-funksjonell i visualobjektverktøyet.