Handlinger for arbeidskø

Arbeidskøer i Power Automate kan brukes til å lagre prosessrelevante data og gi en måte å koble ut komplekse prosesser og automatiseringer på, slik at de kan kommunisere asynkront.

Arbeidskøer kan spille en viktig rolle i å forbedre effektiviteten, skalerbarheten og elastisiteten til automatiseringer og bidra til å prioritere arbeid. Med arbeidskøer kan du først prioritere å fullføre elementer med høyest prioritet, uavhengig av om de behandles av digitale arbeidere, ansatte eller integreringer.

Merk

  • Støtte på produksjonsnivå for det første settet med arbeidskørelaterte handlinger krever Power Automate-skrivebordsversjon 2.37 eller senere.
  • Arbeidskøhandlinger i Power Automate for skrivebordet er en premium-funksjon som krever et Power Automate-abonnement.
  • For øyeblikket er det bare handlingene Behandle arbeidskøelementer og Oppdater arbeidskøelement som kan klassifiseres og tillates eller begrenses via policyer for hindring av datatap, og andre handlinger følger snart. Vær oppmerksom på at skyflytbasert bruk av arbeidskøer ikke kan begrenses av policyer for hindring av datatap.

Behandle elementer i arbeidskøen

Handlingen Behandle arbeidskøelementer angir for køiverksetteren at maskinen er klar til å behandle én eller flere arbeidskøelementer. Brukerkonteksten som ber om et nytt element, må ha tilstrekkelige rettigheter til tabellen for arbeidskø- og arbeidskøelementer for å behandle arbeidskøer.

Skjermbilde av handlingen Behandle element i arbeidskøen.

Handlingen arbeidskø som det henvises til i den forrige handlingen, brukes av iverksetteren av kø til å fastsette de neste tilgjengelige elementene i denne arbeidskøen som har tilstanden I kø. Når skrivebordsflyten går gjennom handlingene i sløyfen for prosessarbeidskøelementer som denne handlingen gjengir, kan du kalle på verdien ved å bruke variabelen du har angitt for handlingen, sammen med egenskapen .Value. I dette tilfellet kan du kalle verdien av arbeidskøelementet ved å bruke variabelen %WorkQueueItem.Value%

Viktig!

Ved å oppgi et FetchXML-uttrykk i feltet "Filterrader" omgår du standard arbeidskøorkestrators FIFU-logikk for elementer i kø. På denne måten kan du angi en egendefinert ordrerekkefølge og ignorere utløpsdatoer for vare og andre innstillinger som brukes automatisk når det ikke angis noe filteruttrykk.

Processworkqueueitemaction

Handlingen Behandle arbeidskøelement krever følgende argumenter:

Inndataparametre

Argument Valgfritt Godtar Standardverdi Beskrivelse
Arbeidskø Nei Tekstmelding Arbeidskø-ID-en for arbeidskøen som inneholder elementer som skal behandles.
Filtrere rader Ja Tekstmelding FetchXML-spørringsuttrykket som brukes til å hente elementer fra arbeidskøen.
Skriv over konfigurasjon av automatiske forsøk for arbeidskø Ja boolsk False Når dette er aktivert, vises et felt der du kan angi eller overskrive maksimalt antall nye forsøk for IT Exceptions.
Maks. antall forsøk Nei Tekstverdi, numerisk verdi Når den ikke overskrives, bruker den standard antall maks. nye forsøk som er definert i arbeidskøoppføringen. Maksimalt antall nye forsøk for IT Exceptions. Med denne parameteren kan du justere antallet nye forsøk til en høyere eller lavere verdi, eller til og med deaktivere mekanismen for nye forsøk ved å sette antallet til 0.

Variabler produsert

Argument Type Beskrivelse
WorkQueueItem Arbeidskøelement Informasjon lagret i arbeidskøelementet som behandles

Unntak

Unntak Beskrivelse
Arbeidskø ble ikke funnet Verdien som er angitt i arbeidskøparameteren, er ugyldig.
Arbeidskø stanset midlertidig eller stoppet Arbeidskøen er midlertidig stanset eller stoppet, noe som ikke er en gyldig tilstand ved behandling av elementer.
Ugyldig FetchXML Et ugyldig FetchXML-uttrykk ble angitt.
Kan ikke behandle arbeidskø Ugyldig forespørsel – feil i spørringssyntaks.

Hva er FetchXML-spørringer?

Microsoft Dataverse FetchXML er et språk som brukes til å hente data fra en Dataverse-database. Det er utformet for å være enkelt å opprette, bruke og forstå. Du kan for eksempel be orkestratoren om å behandle elementer i en annen rekkefølge enn først inn først ut (FIFU) og innenfor en bestemt utløpstidsramme.

Hvis du vil begrense FetchXML-spørringsstøtte til behandling av arbeidskøelementer, støttes et begrenset sett med FetchXML-termer og -uttrykk. Disse termene inkluderer filtre, betingelser og sorteringsuttrykk, som alle er begrenset til tabellen for arbeidskøelementer (workqueueitem). Kun elementer med tilstanden Queued returneres.

Eksempel på FetchXML-spørring

Nedenfor vises et eksempel på et spørringsuttrykk for hvordan du filtrerer etter name og sorterer resultatene etter postene som utløper først (FEFO).

<filter type="and">
  <condition attribute="expirydate" operator="on-or-before" value="2024-10-18" />
  <condition attribute="name" operator="eq" value="MyNonUniqueNameString" />
</filter>
<order attribute="expirydate" descending="false" />

Detaljer og referansedata for spørringsstøtte

Oppdater arbeidskøelement

Handlingen Oppdater arbeidskøelement gjør det mulig for brukere å endre status og behandle resultatene av det valgte arbeidskøelementet.

Skjermbilde av av handlingen Oppdater arbeidskøelement.

Updateworkqueueitemaction

Handlingen Oppdater arbeidskøelement krever følgende argumenter:

Argument Valgfritt Godtar Standardverdi Beskrivelse
Arbeidskøelement Nei Tekstmelding Arbeidskøelementvariabel som tidligere har blitt returnert av køorkestreren
Status Nei Behandlet, generelt unntak Behandlet Oppdater arbeidskøelementet som behandles, ved å bruke en status fra listen over alternativer.
Behandlingsnotater Ja Tekstmelding Egendefinerte behandlingsnotater eller verdi som skal føyes til køelementet som behandles.
Tøm behandlingsnotater Ja boolsk False Når dette er aktivert, skjules og fjernes feltet for behandlingsnotater i dette skjermbildet og eventuelle behandlingsnotater fra databasen som tidligere er registrert for dette elementet.

Unntak

Argument Beskrivelse
Finner ikke arbeidskøelement Arbeidskøelementet som behandles, har enten blitt slettet eller tilhører ikke lenger køen det ble kalt fra.
Element i arbeidskøen på vent Arbeidskøelementet som behandles, inneholder statusen on hold i køorkestreren og kan ikke lenger oppdateres.
Kan ikke oppdatere arbeidskøelement Det har oppstått en uventet feil i arbeidskøelementet som oppdateres. Kontroller feilmeldingen hvis du vil ha mer informasjon.

Legg til arbeidskøelement

Med handlingen Legg til arbeidskøelement kan brukere fylle ut arbeidskøelementer i en arbeidskø som er konfigurert i flytportalen.

Skjermbilde av handlingen Legg til arbeidskøelement.

Enqueueworkqueueitemaction

Handlingen Legg til arbeidskøelement krever følgende argumenter:

Inndataparametre

Argument Valgfritt Godtar Standardverdi Beskrivelse
Arbeidskø Nei Tekstverdi Arbeidskøelementet som elementet skal legges til i
Prioritet Nei Høy, normal, lav Normal Prioriteten som arbeidskøelementet skal angis til
Navn Nei Tekstverdi, numerisk verdi Egendefinert navn eller ID for det nye arbeidskøelementet
Inndata Nei Tekstverdi, numerisk verdi Dataene som tilhører verdikolonnen som skal behandles
Utløper Ja Dato og klokkeslett Verdien for datetime er satt til å utløpe køelementet, ellers brukes standardverdien hvis en slik verdi er angitt for køen
Behandlingsnotater Ja Tekstverdi, numerisk verdi Egendefinerte behandlingsnotater som skal legges til det nye køelementet
Har unik ID eller referanse Ja Tekstverdi, numerisk verdi Når denne er aktivert, må du oppgi en verdi som er unik i denne køen. Hvis du lar den stå tom, angis en unik verdi i formatet system-<GUID> automatisk av systemet

Variabler produsert

Argument Type Beskrivelse
WorkQueueItem Arbeidskøelement Informasjon lagret for arbeidskøelementet som legges til

Unntak

Argument Beskrivelse
Arbeidskø ble ikke funnet Verdien som er angitt i arbeidskøparameteren, er ugyldig
Kan ikke legge til element i arbeidskø Arbeidskøelementet kunne ikke legges til i arbeidskøen. Ugyldig forespørsel – feil i spørringssyntaks

Legg til flere arbeidskøelementer

Handlingen Legg til flere arbeidskøelementer lar brukere legge til ett eller flere arbeidskøelementer i en arbeidskø basert på dataene som er angitt som datatabell for arbeidskøelement.

Skjermbilde av handlingen Legg til flere arbeidskøelementer.

Denne handlingen krever en egendefinert datatabell som inneholder ett eller flere arbeidskøelementer. Datatabellen må ha åtte kolonner og samsvare med følgende skjema:

Kolonnenavn Beskrivelse Obligatorisk Tillatte verdier
Name Navnet på elementet. Nei En hvilken som helst alfanumerisk streng
Inndata Inndatadetaljer eller data for elementet. Ja En hvilken som helst alfanumerisk streng
Utløper om Angir varigheten til elementet utløper. Nei Dato- og klokkeslettverdi
Behandlingsnotater Behandlingsnotater relatert til varen. Nei En hvilken som helst alfanumerisk streng
Prioritet Prioritetsnivået til varen. Ja Numerisk verdi på enten 100 (Høy), 200 (Normal), 300 (Lav)
Unik referanse En unik identifikator eller referanseverdi for elementet. Nei Enhver unik alfanumerisk streng eller referanse
Status Statusen for varen som tas inn. Ja Numerisk verdi på enten null (I kø), én (På vent).
Utsett til Angir en dato og et klokkeslett før arbeidskøelementene skal ignoreres for behandling. Nei Dato- og klokkeslettverdi

Robin-kodesnutt for oppretting av datatabellen

Følgende eksempel er en Robin-kodesnutt (brukt i tradisjonelle flyter) som du kan kopiere og lime inn direkte i Power Automate Desktop-utformingsvinduet. Denne kodebiten legger til en Opprett ny datatabell-handling med det forventede feltsettet i flyten din.

Variables.CreateNewDatatable InputTable: { ^['Name', 'Input', 'Expires in', 'Processing notes', 'Priority', 'Unique reference', 'Status', 'Delay until'], [$'''''', $'''''', $'''''', $'''''', $'''''', $'''''', $'''''', $''''''] } DataTable=> DataTable

PowerFx-kodesnutt for oppretting av datatabellen

Følgende eksempel er et PowerFx-kodeutdrag som du kan kopiere og lime inn direkte i utformervinduet for Power Automate desktop. Denne kodebiten legger til en Opprett ny datatabell-handling med det forventede settet med felt i flyten din.

Variables.CreateNewDatatable InputTable: { ^['Name', 'Input', 'Expires in', 'Processing notes', 'Priority', 'Unique reference', 'Status', 'Delay until'], [$fx'', $fx'', $fx'', $fx'', $fx'', $fx'', $fx'', $fx''] } DataTable=> DataTable

Batchenqueueworkqueueitemsaction

Handlingen Legg til flere arbeidskøelementer krever følgende argumenter.

Inndataparametre

Argument Valgfritt Godtar Standardverdi Beskrivelse
Arbeidskø Nei Tekstverdi Arbeidskøelementet som elementet skal legges til i
Data for element i arbeidskø Ja Datatabell Den egendefinerte datatabellen som inneholder arbeidskøelementer som skal legges til i arbeidskøen

Variabler produsert

Argument Type Standardverdi Beskrivelse
FailedWorkQueueItems Nei Aktivert Hvis det er feil, inneholder dette objektet indeksen for elementet som ikke ble satt inn, sammen med en feilkode. Indeksen som returneres, er plasseringen (indeksen) til elementet i den angitte arbeidskødatatabellen i handlingen Legg til flere arbeidskøelementer.
HasFailedItems Nei Aktivert En indikator for om det oppstod inntaksfeil i handlingene på grunn av dataproblemer med arbeidskøelementet.
SuccessfulWorkQueueItems Deaktivert Nei Et egendefinert objekt som inneholder indeksen og arbeidskøelementene som er lagt til i arbeidskøen.

Unntak

Argument Beskrivelse
Arbeidskø ble ikke funnet Verdien som er angitt i arbeidskøparameteren, er ugyldig
Arbeidskø stanset midlertidig eller stoppet Arbeidskøelementet kunne ikke legges til i arbeidskøen fordi arbeidskøen er midlertidig stanset eller stoppet.
Kunne ikke sette en liste over arbeidskøelementer i kø samlet Arbeidskøelementene kunne ikke legges til i arbeidskøen på grunn av en forespørsel eller kommunikasjonsfeil.

Sett element i kø med forsinkelse

Handlingen Sett element i kø med forsinkelse gjør at brukere kan legge til et køelement som behandles i skrivebordsflyten, på nytt i den opprinnelige køen. I tillegg kan elementet holdes i køen og frigis på et definert tidspunkt.

Skjermbilde av handlingen Sett arbeidskøelement i kø på nytt.

Requeueworkqueueitemaction

Handlingen Sett element i kø på nytt med forsinkelse krever følgende argumenter:

Inndataparametre

Argument Valgfritt Godtar Standardverdi Beskrivelse
Arbeidskøelement Nei Arbeidskøelement Arbeidskøelementet som elementet skal legges til i
Utsett til Nei Dato/tid-verdi datetime-verdien brukes til å forsinke køelementet til
Utløper Ja Dato- og klokkeslettverdi Egendefinert utløpstid for elementet som settes i kø på nytt
Behandlingsnotater Ja Tekstverdi, numerisk verdi Egendefinerte behandlingsnotater som skal legges til det nye køelementet
Tøm behandlingsnotater Ja boolsk False Når dette er aktivert, skjules og fjernes feltet for behandlingsnotater i dette skjermbildet og eventuelle behandlingsnotater fra databasen som tidligere er registrert for dette elementet

Unntak

Argument Beskrivelse
Arbeidskø ble ikke funnet Verdien som er angitt i arbeidskøparameteren, er ugyldig
Finner ikke arbeidskøelement Verdien for køelementet er ugyldig
Kan ikke legge arbeidskøelement i kø på nytt Arbeidskøelementet kunne ikke legges til i arbeidskøen. Ugyldig forespørsel – feil i spørringssyntaks

Oppdater behandlingsnotater for arbeidskøelement

Handlingen Oppdater behandlingsnotater for arbeidskøelement gjør at brukere kan oppdatere eller fjerne behandlingsnotater for det valgte arbeidskøelementet uten at tilstanden eller andre egenskaper endres for det.

Skjermbilde av handlingen Oppdater behandlingsnotater for arbeidskøelement.

updateprocessingnotesaction

Handlingen Oppdater behandlingsnotater for arbeidskøelement krever følgende argumenter.

Argument Valgfritt Godtar Standardverdi Beskrivelse
Arbeidskøelement Nei Tekstmelding Variabel for arbeidskøelementet som tidligere er blitt returnert av køorkestratoren
Behandlingsnotater Ja Tekstmelding Egendefinert behandlingsresultat eller verdi som skal føyes til køelementet som behandles
Tøm behandlingsnotater Ja boolsk False Når dette er aktivert, skjules og fjernes feltet for behandlingsnotater i dette skjermbildet og eventuelle behandlingsnotater fra databasen som tidligere ble registrert for dette elementet

Unntak

Argument Beskrivelse
Arbeidskø ble ikke funnet Arbeidskøen som er knyttet til elementet, er enten slettet eller ikke lenger tilgjengelig
Finner ikke arbeidskøelement Arbeidskøelementet er ugyldig
Kan ikke legge til behandlingsresultatene Det har oppstått en uventet feil i arbeidskøelementet som oppdateres. Kontroller feilmeldingen hvis du vil ha mer informasjon.

Hent elementer i arbeidskø etter filter

Med handlingen Hent arbeidskøelementer etter filter kan brukere hente ett eller flere arbeidskøelementer basert på et FetchXML-filteruttrykk.

Skjermbilde av handlingen Hent arbeidskøelementer etter filter.

Getworkqueueitemsaction

Handlingen Hent arbeidskøelementer etter filter krever følgende argumenter.

Inndataparametre

Argument Valgfritt Godtar Standardverdi Beskrivelse
Arbeidskø Nei Tekstmelding Arbeidskø å hente elementer fra
Filtrere rader Nei Tekstmelding FetchXML-spørringsuttrykk som brukes til å hente elementer fra arbeidskøen
Rader som skal returneres Nei Nummer 5000 Maksimalt antall arbeidskøelementer som returneres av orkestratoren

Variabler produsert

Argument Type Standardverdi Beskrivelse
WorkQueueItems Nei Aktivert Liste over arbeidskøelementer som samsvarer med filteruttrykket.

Hva er FetchXML-spørringer?

Microsoft Dataverse FetchXML er et språk som brukes til å hente data fra en Dataverse-database. Det er utformet for å være enkelt å opprette, bruke og forstå. Du kan for eksempel be Dataverse om å få en liste over alle arbeidskøelementer med tilstanden IT Exception.

Hvis du vil begrense støtten for FetchXML-spørring til å hente arbeidskøelementer, støtter vi bare et begrenset sett med FetchXML-termer og -uttrykk. Disse termene og uttrykkene inkluderer attributter, filtre, betingelser og rekkefølgeuttrykk, alt begrenset til arbeidskøelementtabellen (workqueueitem). Du må eksplisitt angi hvilke egenskaper som skal returneres fra arbeidskøelementtabellen og ønsket sorteringsrekkefølge.

Eksempel på FetchXML-spørring

Eksemplet nedenfor er et spørringsuttrykk for hvordan du henter flere egenskaper, filtrerer ut feilaktige elementer merket som IT Exceptions og ordner resultatene etter at postene utløper først (FEFO).

<attribute name="statecode" />
<attribute name="uniqueidbyqueue" />
<attribute name="createdon" />
<attribute name="completedon" />
<attribute name="workqueueitemid" />
<attribute name="executioncontext" />
<attribute name="name" />
<attribute name="expirydate" />
<attribute name="processingresult" />
<attribute name="priority" />
<attribute name="statuscode" />
<attribute name="modifiedon" />
<attribute name="processingstarttime" />
<attribute name="retrycount" />
<attribute name="requeuecount" />
<attribute name="input" />
<attribute name="delayuntil" />
<filter type="and">
    <condition attribute="statecode" operator="eq" value="4" />
    <condition attribute="statuscode" operator="eq" value="5" />
    <condition attribute="expirydate" operator="on-or-before" value="2024-10-18" />
</filter>
<order attribute="expirydate" descending="false" />

Detaljer og referansedata for spørringsstøtte

Status (statekode)

Status Kode Beskrivelse
Kølagt 0 Element er i kø
Behandles 1 Element blir behandlet
Behandlet 2 Element ble behandlet
På vent 3 Element er satt på vent
Feil 4 Det oppstod en feil med elementet

Statusårsak (statuscode)

Statusårsak Kode Beskrivelse
Satt i kø 0 Element er i kø
Behandler 1 Element blir behandlet
Behandlet 2 Element ble behandlet
Pauset 3 Elementet er midlertidig stanset eller satt på vent
Generelt unntak 4 Et generelt unntak oppstod for elementet
ITE-unntak 5 Et IT-unntak oppstod for elementet
BusinessException 6 Et forretningsunntak oppstod for elementet
dødbrev 7 Element er satt på vent
ProcessingTimeout 8 Behandling av element tidsavbrutt