Akcje kolejek pracy

Kolejki pracy w Power Automate służą do przechowywania danych dotyczących procesów oraz do obsługi złożonych procesów i automatyzacji, co umożliwia asynchroniczną komunikację.

Kolejki pracy mogą odgrywać kluczową rolę w poprawianiu wydajności, skalowalności i odporności automatyzacji oraz w ustalaniu priorytetów pracy. Kolejki pracy umożliwiają przetwarzanie w pierwszej kolejności elementów o wysokim priorytecie, niezależnie od tego, czy są one przetwarzane przez pracowników cyfrowych, pracowników czy przez integrację.

Uwaga

  • Obsługa pierwszego zestawu akcji związanych z kolejką pracy na poziomie produkcyjnym wymaga wersji aplikacji klasycznej Power Automate w wersji 2.37 lub nowszej.
  • Akcje kolejki pracy w Power Automate dla komputerów stacjonarnych są funkcją premium, która wymaga subskrypcji usługi Power Automate.
  • Obecnie tylko akcje Przetwarzaj elementy kolejki pracy i Aktualizuj element kolejki pracy mogą być klasyfikowane oraz dozwolone lub ograniczane za pomocą zasad ochrony przed utratą danych (DLP), a obsługa pozostałych akcji zostanie dodana wkrótce. Należy zauważyć, że zasady DLP nie mogą ograniczać użycia kolejek pracy opartych na przepływie w chmurze.

Przetwórz elementy kolejki pracy

Akcja Przetwórz elementy kolejki pracy oznacza dla orkiestratora kolejki, że komputer jest gotowy do przetwarzania jednego lub większej liczby elementów kolejki pracy. Kontekst użytkownika żądający nowego elementu musi mieć wystarczające uprawnienia do tabeli elementów kolejki służbowej i kolejki pracy w celu przetwarzania kolejek pracy.

Zrzut ekranu akcji Przetwórz element w kolejce pracy.

Ta kolejka pracy, o której mowa w poprzedniej akcji, jest używana przez orkiestratora kolejki do ustalenia kolejnych dostępnych elementów w tej kolejce pracy, które są w stanie W kolejce. Gdy przepływ pulpitu przechodzi przez akcje w obrębie pętli elementów kolejki pracy procesu, które są renderowane przez tę akcję, można wywołać wartość, przejmując akcję ze zmienną wyznaczoną do działania razem z właściwością .Value. W takim przypadku można wywołać wartość elementu kolejki pracy przy użyciu zmiennej %WorkQueueItem.Value%

Ważne

Podając wyrażenie FetchXML w polu „Filtruj wiersze”, omijasz domyślną logikę FIFO koordynatora kolejki pracy dla elementów znajdujących się w kolejce. Umożliwia to ustawienie niestandardowej kolejności usuwania z kolejki i ignorowanie dat wygaśnięcia elementów oraz innych ustawień, które są automatycznie stosowane, gdy nie podano wyrażenia filtru.

Processworkqueueitemaction

Akcja Przetwórz element w kolejce pracy wymaga następujących argumentów.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna Opis
Kolejka pracy Nie. Tekst Identyfikator kolejki pracy zawierającej elementy do przetworzenia.
Filtruj wiersze Tak Tekst Wyrażenie zapytania FetchXML używane do pobierania elementów z kolejki pracy.
Zastępowanie konfiguracji automatycznego ponawiania na poziomie kolejki pracy Tak logiczny Fałsz Po włączeniu zostanie wyświetlone pole umożliwiające ustawienie lub nadpisanie maksymalnej liczby ponownych prób dla IT Exceptions.
Maksymalna liczba ponownych prób Nie. Wartość tekstowa, Wartość liczbowa Jeśli nie zostanie nadpisana, stosowana jest domyślna maksymalna liczba ponownych prób zdefiniowana w rekordzie kolejki pracy. Maksymalna dozwolona liczba ponownych prób dla IT Exceptions. Ten parametr umożliwia dostosowanie liczby ponownych prób do wyższej lub niższej wartości, a nawet wyłączenie mechanizmu ponawiania prób przez ustawienie liczby na 0.

Utworzone zmienne

Argument Typ Opis
WorkQueueItem Element kolejki pracy Informacje przechowywane w przetwarzanym elemencie kolejki pracy

Wyjątki

Wyjątek Opis
Nie znaleziono kolejki pracy Wartość wprowadzona do parametru kolejki pracy jest nieprawidłowa.
Kolejka pracy wstrzymana lub zatrzymana Kolejka pracy jest wstrzymana lub zatrzymana, co nie jest prawidłowym stanem podczas przetwarzania elementów.
Nieprawidłowe FetchXML Dostarczono nieprawidłowe wyrażenie FetchXML.
Nie można przetworzyć kolejki pracy Złe żądanie – błąd w składni zapytania.

Co to są zapytania FetchXML?

Microsoft Dataverse FetchXML to język używany do pobierania danych z bazy danych Dataverse. Został zaprojektowany tak, aby był łatwy w tworzeniu, obsłudze i zrozumieniu. Na przykład możesz poprosić orkiestratora o przetworzenie elementów w innej kolejności niż pierwsze weszło, pierwsze wyszło (FIFO) i w określonym przedziale czasu wygaśnięcia.

Aby ograniczyć obsługę zapytań FetchXML do przetwarzania elementów kolejki roboczej, obsługiwany jest ograniczony zestaw terminów FetchXML i wyrażeń. Terminy te obejmują filtry, warunki i wyrażenia sortowania, przy czym wszystkie są ograniczone do tabeli elementów kolejki pracy (workqueueitem). Zwracane są tylko elementy, które są w stanie Queued.

Przykład zapytania FetchXML

Poniżej przedstawiono przykładowe wyrażenie zapytania pokazujące, jak filtrować według name i sortować wyniki według rekordów, które wygasają najwcześniej (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" />

Wykonywanie zapytań o szczegóły pomocy technicznej i dane referencyjne

Aktualizuj element kolejki pracy

Akcja Aktualizuj element kolejki pracy umożliwia użytkownikom zmianę stanu i przetwarzania wyników wybranego elementu kolejki pracy.

Zrzut ekranu przedstawiający akcję „Aktualizuj element kolejki pracy”.

Updateworkqueueitemaction

Akcja Aktualizuj element kolejki pracy wymaga następujących argumentów.

Argument Opcjonalnie Akceptuje Wartość domyślna Opis
Element kolejki pracy Nie. Tekst Zmienna elementu kolejki pracy, która została wcześniej zwrócona przez kolejkę
Status Nie. Przetworzony wyjątek ogólny Przetworzone Aktualizowanie elementu kolejki pracy przetwarzanego przy użyciu stanu z listy opcji.
Uwagi dotyczące przetwarzania Tak Tekst Uwagi lub wartość przetwarzania niestandardowego, które mają zostać dołączone do przetwarzanego elementu kolejki.
Wyczyść notatki dotyczące przetwarzania Tak logiczny Fałsz Włączenie tego ustawienia spowoduje ukrycie i wyczyszczenie pola Uwagi dotyczące przetwarzania na tym ekranie oraz usunięcie z bazy danych uwag dotyczących przetwarzania, które zostały uprzednio przechwycone dla tego elementu.

Wyjątki

Argument Opis
Nie znaleziono elementu kolejki pracy Przetwarzany element kolejki pracy został już usunięty lub nie należy już do kolejki, z której został wywoływany.
Element kolejki pracy został wstrzymany Przetwarzany element kolejki pracy ma status on hold w programie Queue Orchestrator i nie można go już zaktualizować.
Nie można zaktualizować elementu kolejki pracy Aktualizowany element kolejki pracy napotkał nieoczekiwany błąd. Więcej informacji można znaleźć w komunikacie o błędzie.

Dodaj element kolejki pracy

Akcja Dodaj element kolejki pracy umożliwia użytkownikom dodawanie elementów do kolejki pracy skonfigurowanej w portalu przepływów.

Zrzut ekranu akcji dodawania elementu kolejki pracy.

Enqueueworkqueueitemaction

Akcja Dodaj element w kolejce pracy wymaga następujących argumentów.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna Opis
Kolejka pracy Nie. Wartość tekstowa Element kolejki roboczej, do którego należy dodać element
Priorytet Nie. Wysoki, Normalny, Niski Normalna Priorytet, na jaki ma zostać ustawiony element kolejki roboczej
Imię i nazwisko/nazwa Nie. Wartość tekstowa, Wartość liczbowa Nazwa niestandardowa lub identyfikator nowego elementu kolejki pracy
Dane wejściowe Nie. Wartość tekstowa, Wartość liczbowa Dane należące do kolumny wartości, która ma być przetwarzana
Wygasa Tak Data i godzina Wartość daty i godziny ustawiona jako termin wygaśnięcia elementu kolejki; w przeciwnym razie przyjmowana jest wartość domyślna, jeśli jest ustawiona dla kolejki
Uwagi dotyczące przetwarzania Tak Wartość tekstowa, Wartość liczbowa Niestandardowe notatki przetwarzania, które należy dodać do nowego elementu kolejki
Ma unikatowy identyfikator lub odniesienie Tak Wartość tekstowa, Wartość liczbowa Po włączeniu należy podać unikalną wartość w obrębie tej kolejki. Jeśli wartość jest pusta, unikatowa wartość w formacie system-<GUID> jest automatycznie podawana w systemie

Utworzone zmienne

Argument Typ Opis
WorkQueueItem Element kolejki pracy Informacje przechowywane dla elementu kolejki pracy, który jest dodawany

Wyjątki

Argument Opis
Nie znaleziono kolejki pracy Wartość wprowadzona do parametru kolejki pracy jest nieprawidłowa
Nie można dodać elementu do kolejki pracy Nie można dodać elementu kolejki pracy do kolejki pracy. Nieprawidłowe żądanie — błąd w składni zapytania

Dodaj wiele elementów kolejki pracy

Akcja Dodaj wiele elementów kolejki pracy umożliwia użytkownikom dodawanie jednego lub większej liczby elementów do kolejki pracy na podstawie danych przekazanych w tabeli danych elementów kolejki pracy.

Zrzut ekranu przedstawiający akcję dodawania wielu elementów kolejki pracy.

Ta akcja wymaga niestandardowej tabeli danych, która zawiera co najmniej jeden element kolejki pracy. Tabela danych musi składać się z ośmiu kolumn i być zgodna z następującym schematem:

Nazwa kolumny Opis Wymagane Dozwolone wartości
Nazwa/nazwisko Nazwa elementu. Nie. Dowolny ciąg alfanumeryczny
Dane wejściowe Wprowadź szczegóły lub dane elementu. Tak Dowolny ciąg alfanumeryczny
Wygasa za Określa czas trwania do wygaśnięcia elementu. Nie. Wartość daty i godziny
Uwagi dotyczące przetwarzania Przetwarzanie notatek związanych z elementem. Nie. Dowolny ciąg alfanumeryczny
Priorytet Poziom priorytetu elementu. Tak Wartość liczbowa 100 (wysoka), 200 (normalna), 300 (niska)
Unikalne odwołanie Unikatowy identyfikator lub wartość referencyjna elementu. Nie. Dowolny unikatowy ciąg alfanumeryczny lub odwołanie
Status Stan elementu podczas pozyskiwania. Tak Wartość liczbowa równa zero (W kolejce) lub jeden (Wstrzymane).
Opóźnij do Określa datę i godzinę, od której elementy kolejki pracy powinny być ignorowane podczas przetwarzania. Nie. Wartość daty i godziny

Fragment kodu działania Robin służący do tworzenia tabeli danych

Poniższy przykład to fragment kodu Robin (używany w tradycyjnych przepływach), który można skopiować i wkleić bezpośrednio do okna projektanta pulpitu w Power Automate. Ten fragment kodu dodaje do przepływu akcję Utwórz nową tabelę danych z oczekiwanym zestawem pól.

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

Fragment kodu PowerFx służący do tworzenia tabeli danych

Poniższy przykład to fragment kodu PowerFx, który można skopiować i wkleić bezpośrednio do okna projektanta pulpitu w Power Automate. Ten fragment kodu dodaje do przepływu akcję Utwórz nową tabelę danych z oczekiwanym zestawem pól.

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

Akcja Dodaj wiele elementów kolejki pracy wymaga następujących argumentów.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna Opis
Kolejka pracy Nie. Wartość tekstowa Element kolejki roboczej, do którego należy dodać element
Dane elementu kolejki pracy Tak Tabela danych Niestandardowa tabela danych zawierająca elementy kolejki pracy, które mają zostać dodane do kolejki pracy

Utworzone zmienne

Argument Typ Wartość domyślna Opis
FailedWorkQueueItems Nie. Włączony Jeśli wystąpią błędy, ten obiekt przechowuje indeks elementu, którego nie udało się wstawić, wraz z kodem błędu. Zwracany indeks jest pozycją (indeksem) elementu w podanej tabeli danych kolejki pracy dla akcji Dodaj wiele elementów kolejki pracy.
HasFailedItems Nie. Włączony Wskaźnik określający, czy akcje napotkały błędy pozyskiwania z powodu problemów z danymi elementu kolejki pracy.
SuccessfulWorkQueueItems Wyłączony Nie. Obiekt niestandardowy przechowujący indeks i elementy kolejki pracy, które zostały pomyślnie dodane do kolejki pracy.

Wyjątki

Argument Opis
Nie znaleziono kolejki pracy Wartość wprowadzona do parametru kolejki pracy jest nieprawidłowa
Kolejka pracy wstrzymana lub zatrzymana Nie można dodać elementu kolejki pracy do kolejki pracy, ponieważ kolejka pracy jest wstrzymana lub zatrzymana.
Nie udało się w procesie wsadowym umieścić w kolejce listy elementów kolejki pracy Nie można dodać elementów kolejki pracy do kolejki pracy z powodu błędu żądania lub komunikacji.

Ponownie umieść w kolejce element z opóźnieniem

Akcja Ponownie umieść element w kolejce z opóźnieniem pozwala użytkownikom na odczytanie elementu kolejki przetwarzanego w przepływie pulpitu z powrotem do kolejki źródłowej. Dodatkowo element w kolejce może być wstrzymany i zwolniony dopiero po upływie określonego czasu.

Zrzut ekranu akcji Ponownie umieść element w kolejce pracy.

Requeueworkqueueitemaction

Akcja Ponownie umieść element w kolejce z opóźnieniem wymaga następujących argumentów.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna Opis
Element kolejki pracy Nie. Element kolejki pracy Element kolejki roboczej, do którego należy dodać element
Opóźnij do Nie. Wartość daty i godziny Wartość data/godzina stosowana w celu opóźniania elementu kolejki do określonego czasu
Wygasa Tak Wartość daty i godziny Niestandardowy czas wygaśnięcia dla elementu ponownie umieszczanego w kolejce
Uwagi dotyczące przetwarzania Tak Wartość tekstowa, Wartość liczbowa Niestandardowe notatki przetwarzania, które należy dodać do nowego elementu kolejki
Wyczyść notatki dotyczące przetwarzania Tak logiczny Fałsz Włączenie tego ustawienia spowoduje ukrycie i wyczyszczenie pola Uwagi dotyczące przetwarzania na tym ekranie oraz usunięcie z bazy danych uwag dotyczących przetwarzania, które zostały uprzednio przechwycone dla tego elementu

Wyjątki

Argument Opis
Nie znaleziono kolejki pracy Wartość wprowadzona do parametru kolejki pracy jest nieprawidłowa
Nie znaleziono elementu kolejki pracy Wartość elementu kolejki jest nieprawidłowa
Nie można ponownie dodać elementu do kolejki roboczej Nie można dodać elementu kolejki pracy do kolejki pracy. Nieprawidłowe żądanie — błąd w składni zapytania

Aktualizuj uwagi dotyczące przetwarzania elementu kolejki pracy

Akcja Aktualizuj uwagi dotyczące przetwarzania elementu kolejki pracy umożliwia użytkownikom aktualizowanie lub czyszczenie uwag dotyczących przetwarzania wybranych elementów kolejki pracy bez konieczności zmiany ich stanu ani żadnej innej właściwości.

Zrzut ekranu akcji Aktualizuj uwagi dotyczące przetwarzania elementu kolejki pracy.

updateprocessingnotesaction

Akcja Aktualizuj notatki dotyczące przetwarzania elementu kolejki roboczej wymaga następujących argumentów.

Argument Opcjonalnie Akceptuje Wartość domyślna Opis
Element kolejki pracy Nie. Tekst Zmienna elementu kolejki pracy, która została uprzednio zwrócona przez orkiestratora kolejki
Uwagi dotyczące przetwarzania Tak Tekst Niestandardowy wynik przetwarzania lub wartość do dołączenia do przetwarzanego elementu kolejki
Wyczyść notatki dotyczące przetwarzania Tak logiczny Fałsz Włączenie tego ustawienia spowoduje ukrycie i wyczyszczenie pola Uwagi dotyczące przetwarzania na tym ekranie oraz usunięcie z bazy danych uwag dotyczących przetwarzania, które były uprzednio przechwytywane dla tego elementu

Wyjątki

Argument Opis
Nie znaleziono kolejki pracy Kolejka pracy skojarzona z tym elementem została usunięta lub nie jest już dostępna
Nie znaleziono elementu kolejki pracy Element kolejki zadań jest nieprawidłowy
Nie można dołączyć wyników przetwarzania Aktualizowany element kolejki pracy napotkał nieoczekiwany błąd. Więcej informacji można znaleźć w komunikacie o błędzie.

Pobierz elementy kolejki pracy wg filtra

Akcja Pobierz elementy kolejki pracy według filtru umożliwia użytkownikom pobranie jednego lub większej liczby elementów kolejki pracy na podstawie wyrażenia filtru FetchXML.

Zrzut ekranu przedstawiający akcję Pobierz elementy kolejki pracy według filtru.

Getworkqueueitemsaction

Akcja Pobierz elementy kolejki pracy wg filtru wymaga następujących argumentów.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna Opis
Kolejka pracy Nie. Tekst Kolejka pracy do pobierania elementów z
Filtruj wiersze Nie. Tekst Wyrażenie zapytania FetchXML używane do pobierania elementów z kolejki pracy
Liczba zwracanych wierszy Nie. Numer 5000 Maksymalna liczba elementów kolejki pracy zwracanych przez orkiestratora

Utworzone zmienne

Argument Typ Wartość domyślna Opis
WorkQueueItem Nie. Włączony Lista elementów kolejki pracy pasujących do wyrażenia filtru.

Co to są zapytania FetchXML?

Microsoft Dataverse FetchXML to język używany do pobierania danych z bazy danych Dataverse. Został zaprojektowany tak, aby był łatwy w tworzeniu, obsłudze i zrozumieniu. Na przykład możesz poprosić usługę Dataverse o podanie listy wszystkich elementów kolejki pracy, które są w stanie IT Exception.

Aby ograniczyć obsługę zapytań FetchXml do pobierania elementów kolejki pracy, obsługujemy tylko ograniczony zestaw terminów i wyrażeń FetchXml. Te pojęcia i wyrażenia obejmują atrybuty, filtry, warunki i wyrażenia sortowania, przy czym wszystkie są ograniczone do tabeli elementów kolejki pracy (workqueueitem). Należy jawnie określić, które właściwości mają być zwracane z tabeli elementów kolejki pracy oraz żądaną kolejność sortowania.

Przykład zapytania FetchXML

Poniższy przykład jest wyrażeniem zapytania określającym sposób pobierania kilku właściwości, odfiltrowywania błędnych elementów oznaczonych jako IT Exceptions i porządkowania wyników według rekordów wygasających jako pierwsze (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" />

Wykonywanie zapytań o szczegóły pomocy technicznej i dane referencyjne

Stan (statecode)

Status Code Opis
W kolejce 0 Element znajduje się w kolejce
Przetwarzanie 1 Element jest przetwarzany
Przetworzone 2 Element został przetworzony
Wstrzymano 3 Element jest wstrzymany
Błąd 4 Element napotkał błąd

Przyczyna stanu (statuscode)

Przyczyna stanu Code Opis
W kolejce 0 Element znajduje się w kolejce
Przetwarzanie 1 Element jest przetwarzany
Przetworzone 2 Element został przetworzony
Wstrzymano 3 Element jest wstrzymany lub zawieszony
Wyjątek ogólny 4 Element napotkał wyjątek ogólny
ITException 5 Element napotkał wyjątek IT
Wyjątek biznesowy 6 Element napotkał wyjątek biznesowy
Utracony komunikat 7 Element jest wstrzymany
Limit czasu przetwarzania 8 Upłynął limit czasu przetwarzania elementu