Partajați prin


Acțiuni în cozile de lucru

Cozile de lucru în Power Automate pot fi utilizate pentru a stoca date relevante pentru procese și oferă o modalitate de a decupla procese complexe și automatizări, permițându-le să comunice asincron.

Cozile de lucru pot juca un rol crucial în îmbunătățirea eficienței, scalabilității și rezilienței automatizărilor și pot ajuta la prioritizarea lucrărilor. Cozile de lucru vă permit să finalizați mai întâi elementele cu cea mai mare prioritate, indiferent dacă sunt procesate de lucrători digitali, lucrători umani sau prin integrări.

Notă

  • Suportul la nivel de producție pentru primul set de acțiuni legate de coada de lucru necesită versiunea desktop 2.37 sau o versiune ulterioară. Power Automate
  • Acțiunile din coada de lucru din Power Automate pentru desktop sunt o funcție premium, care necesită un Power Automate abonament.
  • În prezent, doar acțiunile *Procesare elemente din coada de lucru* și *Actualizare elemente din coada de lucru* pot fi clasificate și permise sau restricționate prin politici de prevenire a pierderii datelor (DLP), urmând ca alte acțiuni să fie implementate în curând. Rețineți că utilizarea cozilor de lucru bazată pe fluxul în cloud nu poate fi restricționată de politicile DLP.

Procesați elementele de coadă de lucru

Acțiunea Procesare elemente din coada de lucru indică orchestratorului de cozi că mașina este gata să proceseze unul sau mai multe elemente din coada de lucru. Contextul utilizatorului care solicită un element nou trebuie să aibă suficiente privilegii asupra cozii de lucru și a tabelei de elemente din coada de lucru pentru a procesa cozile de lucru.

Captură de ecran a acțiunii Element din coada de lucru Procesare.

Coada de lucru la care se face referire în acțiunea anterioară este utilizată de orchestratorul de cozi pentru a determina următoarele elemente disponibile din acea coadă de lucru care se află în starea *În coadă*. Pe măsură ce fluxul desktop parcurge acțiunile din bucla Procesare elemente coadă de lucru pe care le redă această acțiune, puteți apela valoarea utilizând variabila pe care ați desemnat-o pentru acțiune împreună cu proprietatea .Value. În acest caz, ați putea apela valoarea elementului din coada de lucru folosind variabila %WorkQueueItem.Value%

Important

Prin furnizarea unei expresii în câmpul „Filtrare rânduri”, ocoliți logica FIFO implicită a orchestratorului de coadă de lucru pentru elementele din coadă. FetchXML Acest lucru vă permite să setați o ordine personalizată de scoatere din coadă și să ignorați datele de expirare ale articolelor și alte setări care se aplică automat atunci când nu este furnizată nicio expresie de filtrare.

Processworkqueueitemaction

Acțiunea Procesare element coadă de lucru necesită următoarele argumente.

Parametri de intrare

Argument Opțional Acceptă Valoare implicită Descriere
Coadă de lucru No SMS ID-ul cozii de lucru care conține elemente de procesat.
Filtrați rândurile Da SMS Expresia de interogare utilizată pentru a prelua elemente din coada de lucru. FetchXML
Suprascrierea configurației reîncercărilor automate în coada de lucru Da Boolean Fals Când este activată, apare un câmp care vă permite să setați sau să suprascrieți numărul maxim de reîncercări pentru IT Exceptions.
Număr maxim de reîncercări No Valoare textuală, Valoare numerică Când nu este suprascris, folosește numărul maxim de reîncercări implicit definit în înregistrarea cozii de lucru. Numărul maxim permis de reîncercări pentru IT Exceptions. Acest parametru vă permite să ajustați numărul de reîncercări la o valoare mai mare sau mai mică sau chiar să dezactivați mecanismul de reîncercări setând numărul la 0.

Variabile produse

Argument Tipul Descriere
Element coadă de lucru No Informațiile stocate în elementul din coada de lucru care este procesat

Excepții

Excepție Descriere
Coada de lucru nu a fost găsită Valoarea introdusă în parametrul cozii de lucru este invalidă.
Coada de lucru a fost întreruptă sau oprită Coada de lucru este fie pusă în pauză, fie oprită, ceea ce nu este o stare validă la procesarea elementelor.
Invalid FetchXML A fost furnizată o expresie invalidă. FetchXML
Nu s-a putut procesa coada de lucru Cerere greșită - eroare în sintaxa interogării.

Ce sunt interogările? FetchXML

Microsoft Dataverse FetchXML este un limbaj folosit pentru recuperarea datelor dintr-o bază de date. Dataverse Este conceput pentru a fi ușor de creat, utilizat și înțeles. De exemplu, ați putea dori să solicitați orchestratorului să proceseze elementele într-o ordine diferită de prima intrare, prima ieșire (FIFO) și într-un anumit interval de timp de expirare.

Pentru a limita suportul pentru interogări la procesarea elementelor din coada de lucru, este acceptat un set limitat de termeni și expresii. FetchXML FetchXML Acești termeni includ filtre, condiții și expresii de ordonare, toate limitate la tabelul de elemente din coada de lucru (workqueueitem). Sunt returnate doar elementele care se află în starea *a*. Queued

Exemplu FetchXML interogare

Următorul este un exemplu de expresie de interogare despre cum se filtrează pe name și se ordonează rezultatele după înregistrările care expiră primele (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" />

Detalii despre asistența pentru interogări și date de referință

  • Listă de operatori de interogare disponibili pentru utilizare, inclusiv operatori precum *on-or-before*, *between* și *last-month*. ...
  • Lista atributelor disponibile în tabelul cu elemente din coada de lucru. ...

Actualizarea unui element de coadă de lucru

Acțiunea Actualizare element din coada de lucru permite utilizatorilor să modifice starea și rezultatele procesării elementului selectat din coada de lucru.

Captură de ecran a acțiunii Actualizare element coadă de lucru.

Updateworkqueueitemaction

Acțiunea Actualizare element coadă de lucru necesită următoarele argumente.

Argument Opțional Acceptă Valoare implicită Descriere
Element din coada de lucru No SMS Variabilă de element din coada de lucru care a fost returnată anterior de orchestratorul de cozi
Stare No Excepție generică procesată Procesate Actualizați elementul din coada de lucru care este procesat utilizând o stare din lista de opțiuni.
Note de procesare Da SMS Note sau valori de procesare personalizate de adăugat la elementul din coadă care este procesat.
Note clare de procesare Da Boolean Fals Când este activată, ascunde și șterge câmpul pentru note de procesare de pe acest ecran și elimină din baza de date orice note de procesare care au fost capturate anterior pentru acest element.

Excepții

Argument Descriere
Elementul din coada de lucru nu a fost găsit Elementul din coada de lucru procesat fie a fost șters, fie nu mai aparține cozii din care a fost apelat.
Element din coada de lucru în așteptare Elementul din coada de lucru procesat conține o stare de on hold în orchestratorul de cozi și nu mai poate fi actualizat.
Nu s-a putut actualiza elementul din coada de lucru Elementul din coada de lucru care este actualizat a întâmpinat o eroare neașteptată. Verificați mesajul de eroare pentru mai multe detalii.

Adăugați elementul de coadă de lucru

Acțiunea Adăugați element în coada de lucru permite utilizatorilor să adauge elemente în coada de lucru într-o coadă de lucru, care a fost configurată în portalul de flux.

Captură de ecran a acțiunii de adăugare a unui element din coada de lucru.

Enqueueworkqueueitemaction

Acțiunea Adăugare element coadă de lucru necesită următoarele argumente.

Parametri de intrare

Argument Opțional Acceptă Valoare implicită Descriere
Coadă de lucru No Valoare text Elementul din coada de lucru în care se adaugă elementul
Prioritate No Ridicat, Normal, Scăzut Normală Prioritatea la care se setează elementul din coada de lucru
Nume No Valoare textuală, Valoare numerică Numele sau ID-ul particularizat pentru noul element de coadă de lucru
Intrare No Valoare textuală, Valoare numerică Datele care aparțin coloanei de valori care urmează să fie procesate
Expiră Da Datetime Valoarea datetime setată pentru expirarea elementului din coadă, altfel adoptă valoarea implicită dacă este setată una pentru coadă
Note de procesare Da Valoare textuală, Valoare numerică Note de procesare personalizate care vor fi adăugate la noul element din coadă
Are un ID sau o referință unică Da Valoare textuală, Valoare numerică Când este activată, trebuie furnizată o valoare unică în cadrul acestei coade. Dacă este lăsat gol, sistemul furnizează automat o valoare unică în formatul system-<GUID>

Variabile produse

Argument Tipul Descriere
Element coadă de lucru No Informații stocate pentru elementul din coada de lucru care este adăugat

Excepții

Argument Descriere
Coada de lucru nu a fost găsită Valoarea introdusă în parametrul cozii de lucru este invalidă
Nu s-a putut adăuga elementul în coada de lucru Elementul din coada de lucru nu a putut fi adăugat în coada de lucru. Cerere greșită - eroare în sintaxa interogării

Adăugați mai multe elemente de coadă de lucru

Acțiunea Adăugați mai multe elemente din coada de lucru permite utilizatorilor să adauge unul sau mai multe elemente din coada de lucru la o coadă de lucru pe baza datelor furnizate ca tabel de date cu elemente din coada de lucru.

Captură de ecran a acțiunii de adăugare a mai multor elemente din coada de lucru.

Această acțiune necesită un tabel de date personalizat care conține unul sau mai multe elemente din coada de lucru. Tabelul de date trebuie să aibă opt coloane și să respecte următoarea schemă:

Nume coloană Descriere Obligatoriu Valori permise
Nume Numele articolului. No Orice șir alfanumeric
Intrare Introduceți detaliile sau datele articolului. Da Orice șir alfanumeric
Expiră în Specifică durata până la expirarea elementului. No Valoare dată și oră
Note de procesare Note de procesare aferente articolului. No Orice șir alfanumeric
Prioritate Nivelul de prioritate al elementului. Da Valoare numerică de 100 (Ridicat), 200 (Normal), 300 (Scăzut)
Referință unică Un identificator unic sau o valoare de referință pentru element. No Orice șir alfanumeric unic sau referință
Status Starea articolului la ingerare. Da Valoare numerică fie zero (în coadă), fie unu (în așteptare).
Amânați până la Specifică o dată și o oră până la care elementele din coada de lucru ar trebui ignorate pentru procesare. No Valoare dată și oră

Fragment de cod Robin pentru crearea tabelului de date

Următorul exemplu este un fragment de cod robin (utilizat în fluxurile tradiționale) pe care îl puteți copia și lipi direct în fereastra desktop designer. Power Automate Acest fragment adaugă o acțiune Creează un nou tabel de date cu setul de câmpuri așteptat în fluxul tău.

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

Fragment de cod PowerFx pentru crearea tabelului de date

Următorul exemplu este un fragment de cod PowerFx pe care îl puteți copia și lipi direct în fereastra Power Automate desktop designer. Acest fragment adaugă o acțiune Creează un nou tabel de date cu setul de câmpuri așteptat în fluxul tău.

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

Acțiunea Adăugați mai multe elemente din coada de lucru necesită următoarele argumente.

Parametri de intrare

Argument Opțional Acceptă Valoare implicită Descriere
Coadă de lucru No Valoare text Elementul din coada de lucru în care se adaugă elementul
Date despre elementele din coada de lucru Da Tabel de date Tabelul de date personalizat care conține elementele din coada de lucru care vor fi adăugate la coada de lucru

Variabile produse

Argument Tipul Valoare implicită Descriere
Elemente coadă de lucru eșuate No Activată Dacă există erori, acest obiect conține indexul elementului care nu a putut fi inserat, împreună cu un cod de eroare. Indexul returnat este poziția (indexul) elementului în tabelul de date al cozii de lucru furnizat de acțiunea Adăugați mai multe elemente în coada de lucru .
Elemente eșuate No Activată Un indicator care arată dacă acțiunile au întâmpinat erori de ingerare din cauza problemelor legate de datele elementelor din coada de lucru.
Elemente de coadă de lucru reușite Dezactivat No Un obiect personalizat care conține indexul și elementele din coada de lucru adăugate cu succes la coada de lucru.

Excepții

Argument Descriere
Coada de lucru nu a fost găsită Valoarea introdusă în parametrul cozii de lucru este invalidă
Coada de lucru a fost întreruptă sau oprită Elementul din coada de lucru nu a putut fi adăugat în coada de lucru deoarece aceasta este fie pusă în pauză, fie oprită.
Nu s-a putut pune în coadă în lot o listă de elemente din coada de lucru. Elementele din coada de lucru nu au putut fi adăugate în coada de lucru din cauza unei solicitări sau a unei erori de comunicare.

Element reamplasat în coadă cu întârziere

Acțiunea *Readuce elementul în coadă cu întârziere* permite utilizatorilor să readucă un element din coadă procesat în fluxul desktopului, înapoi în coada sa de origine. În plus, elementul din coadă poate fi reținut și eliberat până la o anumită oră.

Captură de ecran a acțiunii de reintroducere a elementului din coada de lucru.

Requeueworkqueueitemaction

Acțiunea Readuce elementul la coadă cu acțiunea de întârziere necesită următoarele argumente.

Parametri de intrare

Argument Opțional Acceptă Valoare implicită Descriere
Element din coada de lucru No Element de coadă de lucru Elementul din coada de lucru în care se adaugă elementul
Amânare până la No Valoare datetime Normală Valoarea datetime aplicată pentru a întârzia elementul din coadă până la
Expiră Da Valoare datetime Timp de expirare personalizat pentru elementul adus din nou în coadă
Note de procesare Da Valoare textuală, Valoare numerică Note de procesare personalizate care vor fi adăugate la noul element din coadă
Note clare de procesare Da Boolean Fals Când este activată, ascunde și șterge câmpul pentru note de procesare de pe acest ecran și elimină din baza de date orice note de procesare care au fost capturate anterior pentru acest element.

Excepții

Argument Descriere
Coada de lucru nu a fost găsită Valoarea introdusă în parametrul cozii de lucru este invalidă
Elementul din coada de lucru nu a fost găsit Valoarea elementului din coadă este nevalidă
Nu s-a putut reintroduce elementul din coada de lucru Elementul din coada de lucru nu a putut fi adăugat în coada de lucru. Cerere greșită - eroare în sintaxa interogării

Actualizare note de procesare elemente de coadă de lucru

Acțiunea *Actualizare note de procesare a elementelor din coada de lucru* permite utilizatorilor să actualizeze sau să șteargă notele de procesare ale elementului selectat din coada de lucru fără a-i modifica starea sau orice altă proprietate.

Captură de ecran a acțiunii Actualizare note de procesare a elementelor din coada de lucru.

updateprocessingnotesaction

Acțiunea Actualizare note de procesare a elementelor din coada de lucru necesită următoarele argumente.

Argument Opțional Acceptă Valoare implicită Descriere
Element din coada de lucru No SMS Variabilă de element din coada de lucru returnată anterior de orchestratorul de cozi
Note de procesare Da SMS Rezultatul sau valoarea procesării personalizate de adăugat la elementul din coadă procesat
Note clare de procesare Da Boolean Fals Când este activată, ascunde și șterge câmpul pentru note de procesare de pe acest ecran și elimină din baza de date toate note de procesare capturate anterior pentru acest element.

Excepții

Argument Descriere
Coada de lucru nu a fost găsită Coada de lucru asociată elementului a fost fie ștearsă, fie nu mai este accesibilă.
Elementul din coada de lucru nu a fost găsit Elementul din coada de lucru este nevalid
Nu s-au putut adăuga rezultatele procesării Elementul din coada de lucru care este actualizat a întâmpinat o eroare neașteptată. Verificați mesajul de eroare pentru mai multe detalii.

Obțineți elemente de coadă de lucru după filtru

Acțiunea Obține elemente din coada de lucru prin filtrare permite utilizatorilor să preia unul sau mai multe elemente din coada de lucru pe baza unei FetchXML expresii de filtrare.

Captură de ecran a acțiunii de filtrare „Obțineți elemente din coada de lucru”.

Getworkqueueitemsaction

Acțiunea Obține elemente din coada de lucru prin filtrare necesită următoarele argumente.

Parametri de intrare

Argument Opțional Acceptă Valoare implicită Descriere
Coadă de lucru No SMS Coadă de lucru pentru preluarea elementelor din
Filtrați rândurile No SMS FetchXML expresie de interogare utilizată pentru a prelua elemente din coada de lucru
Rânduri de returnat No Număr 5000 Numărul maxim de elemente din coada de lucru returnate de orchestrator

Variabile produse

Argument Tipul Valoare implicită Descriere
Elemente din coada de lucru No Activată Listă de elemente din coada de lucru care corespund expresiei de filtrare.

Excepții

Argument Descriere
Coadă de lucru Coada de lucru din care se vor prelua elemente.
Filtrați rândurile Expresia de interogare utilizată pentru a prelua elemente din coada de lucru. FetchXML
Rânduri de returnat Numărul maxim de elemente din coada de lucru returnate de orchestrator (implicit este 5000).

Ce sunt interogările? FetchXML

Microsoft Dataverse FetchXML este un limbaj folosit pentru recuperarea datelor dintr-o bază de date. Dataverse Este conceput pentru a fi ușor de creat, utilizat și înțeles. De exemplu, ați putea solicita Dataverse să vă ofere o listă cu toate elementele din coada de lucru care se află în IT Exception starea.

Pentru a limita suportul pentru interogări FetchXml la regăsirea elementelor din coada de lucru, acceptăm doar un set limitat de termeni și expresii FetchXml. Acești termeni și expresii includ atribute, filtre, condiții și expresii de ordonare, toate limitate la tabelul de elemente din coada de lucru (workqueueitem). Trebuie să specificați explicit ce proprietăți să fie returnate din tabelul de elemente din coada de lucru și ordinea de sortare dorită.

Exemplu FetchXML interogare

Următorul exemplu este o expresie de interogare despre cum se pot obține mai multe proprietăți, se pot filtra elementele eronate marcate ca IT Exceptions și se pot ordona rezultatele după înregistrările care expiră primele (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" />

Detalii despre asistența pentru interogări și date de referință

  • Listă de operatori de interogare disponibili pentru utilizare, inclusiv operatori precum *on-or-before*, *between* și *last-month*. ...
  • Lista atributelor disponibile în tabelul cu elemente din coada de lucru. ...

Stare (statecode)

Status Cod Descriere
Plasate în coadă 0 Elementul este pus în coadă
În curs de procesare 1 Articolul este în curs de procesare
Procesate 2 Articolul a fost procesat
În așteptare 3 Elementul este în așteptare
Eroare 4 Articolul a întâmpinat o eroare

Motiv stare (statuscode)

Motiv stare Cod Descriere
Plasate în coadă 0 Elementul este pus în coadă
În curs de procesare 1 Articolul este în curs de procesare
Procesate 2 Articolul a fost procesat
În așteptare (în pauză) 3 Elementul este în așteptare (în pauză)
Excepție generică 4 Elementul a întâmpinat o excepție generică
Excepție IT 5 Elementul a întâmpinat o excepție IT
Excepție business 6 Elementul a întâmpinat o excepție de business
Scrisoare distrusă 7 Elementul este în așteptare
ProcessingTimeout 8 Procesarea elementului a expirat