Skrypty Workflow

Skrypty Workflow to fragmenty kodu (TypeScript, JavaScript lub SQL), które wykonują się w kroku obiegu i potrafią policzyć coś, czego nie obejmują gotowe akcje: sprawdzić wartość, ustawić zmienną, zapytać bazę. Zarządzasz nimi na osobnej liście.

Opublikowano
Zaktualizowano
Wersja systemu26.39
Czas czytania2 min

Ekran Skrypty Workflow ma wyszukiwarkę, filtry Wszystkie kategorie i Wszystkie typy, przełącznik Pokaż nieaktywne oraz przycisk Nowy skrypt. Tabela zawiera nazwę, typ (TypeScript, JavaScript, SQL), kategorię, status i liczbę wykonań wraz z datą ostatniego uruchomienia.

Lista skryptów workflow

Tworzenie skryptu#

Nowy skrypt otwiera edytor z polami: Nazwa skryptu, Typ skryptu (TypeScript, JavaScript, SQL), Język, Kategoria, Kod skryptu, opis i przełącznik Skrypt może być używany w workflow. Zakładki Podgląd kodu i Schemat pokazują kod oraz definicję danych wejściowych i wyjściowych (Input, Output, pola Wymagane).

Co może skrypt#

Skrypt dostaje obiekt context z danymi i narzędziami:

ElementZawartość
context.orderDane zamówienia (numer, sumy netto, VAT i brutto, waluta, status, klient, pozycje), albo null, jeśli obieg nie jest powiązany z zamówieniem
context.workflowIdentyfikator instancji, kroku i akcji
context.getVariable(nazwa)Odczyt zmiennej procesu. Zwraca undefined, jeśli zmiennej nie ma
context.setVariable(nazwa, wartość)Zapis zmiennej. Tworzy nową albo aktualizuje istniejącą
context.loggerinfo, warn, error: wpisy widoczne w diagnostyce
context.services.fetchWywołania HTTP
context.services.db.queryZapytania do bazy w zakresie firmy

Skrypt może zwrócić { output, nextStepId }: output zapisze się w zmiennej wynikowej akcji, a nextStepId podpowiada kolejny krok.

export default async function run(context) {
  const total = Number(context.order?.total_gross) || 0;
  await context.setVariable('requires_approval', total > 1000);
  await context.setVariable('order_value', total);
  return { output: { total } };
}
PodsumowanieW skrócie

Skrypt rozszerza obieg tam, gdzie gotowe akcje nie wystarczają. Zapisuje zmienne, które potem czytają bramki i warunki, a każde wykonanie widać w statystykach.