Używamy cookies, żeby zwiększyć Twoje doświadczenia na stronie
CodeWorlds
Powrót do kolekcji
Przewodnik11 min czytania

Power Automate, przepływy i pułapki licencji

Power Automate automatyzuje procesy w ekosystemie Microsoftu. Łączniki standardowe i premium, licencja na użytkownika kontra na proces oraz granice narzędzia.

Power Automate, przepływy i pułapki licencji

Power Automate to narzędzie do budowania przepływów automatyzujących pracę: coś się dzieje, narzędzie reaguje i wykonuje serię kroków. Wniosek urlopowy trafia do formularza, przepływ wysyła go do przełożonego, po zatwierdzeniu dopisuje wpis do arkusza i powiadamia dział kadr.

Największym problemem przy tym narzędziu nie jest budowanie przepływów. Jest nim licencjonowanie, które ma dwie osie, kilka progów i jedną granicę, przy której koszt skacze wielokrotnie. Zaczniemy więc od niej, bo od tego zależy, czy Twój pomysł w ogóle się opłaca.

Łączniki standardowe i premium

To jest linia, przy której dzieje się cała różnica w rachunku.

Łączniki standardowe obejmują usługi Microsoftu: pocztę, kalendarz, dokumenty, arkusze, listy, komunikator. Są dostępne w ramach licencji dołączonej do pakietu biurowego, którą większość firm już ma.

Granica nie przebiega jednak tam, gdzie podpowiada intuicja, i to jest pierwsza rzecz warta sprawdzenia u źródła. Standardowe są także łączniki do wielu popularnych usług spoza Microsoftu: Dysku Google, Arkuszy Google, Kalendarza Google, Dropboxa, Slacka, Trello, Asany, GitHuba, YouTube, Twilio oraz kanałów RSS. Firma, która przenosi pliki między Dyskiem Google a listą w narzędziu do dokumentów, mieści się w licencji, którą już ma.

Łączniki premium to bazy danych, w tym własna baza platformy, usługi chmurowe, duże systemy sprzedażowe i kadrowe, na przykład Salesforce, część usług marketingowych, na przykład MailChimp, oraz wywołania własnych interfejsów przez zwykłe żądanie sieciowe. Wymagają osobnej licencji. Reguła praktyczna brzmi więc inaczej, niż się powtarza: premium to bazy danych, systemy klasy korporacyjnej i własne interfejsy, a nie po prostu wszystko spoza Microsoftu. Status pojedynczego łącznika sprawdzisz w jego opisie w dokumentacji, w wierszu dotyczącym Power Automate.

Konsekwencja jest bezpośrednia i zaskakuje najczęściej. Przepływ, który czyta listę w narzędziu do dokumentów i wysyła wiadomość, mieści się w tym, co masz. Ten sam przepływ rozszerzony o jedno zapytanie do bazy albo o jedno wywołanie własnego interfejsu przekracza granicę i wymaga licencji dla każdej osoby, która ten przepływ uruchamia.

Praktyczna rada brzmi: zanim zaczniesz budować, sprawdź listę kroków pod kątem tej granicy. Zmiana projektu na wczesnym etapie, tak żeby zmieścić się w łącznikach standardowych, bywa tańsza niż licencje dla stu osób.

Dwie osie licencjonowania

Warto zrozumieć różnicę, bo dobór właściwej osi potrafi zmienić rachunek kilkudziesięciokrotnie.

Licencja na użytkownika pozwala danej osobie uruchamiać nieograniczoną liczbę przepływów, w tym korzystających z łączników premium. Płacisz za każdą osobę, która przepływów używa.

Licencja na proces działa odwrotnie: licencjonujesz konkretny przepływ, a korzystać z niego może dowolna liczba osób w organizacji. To jest właściwy wybór przy procesie firmowym, z którego korzysta wielu pracowników, ale rzadko.

Różnica jest wyraźna na przykładzie. Przepływ obsługujący wnioski urlopowe, z którego korzysta trzysta osób kilka razy w roku, przy licencji na użytkownika oznacza trzysta licencji. Przy licencji na proces oznacza jedną.

Odwrotnie przy zespole dziesięciu osób budujących i uruchamiających kilkanaście różnych przepływów dziennie. Tam licencje na użytkownika są tańsze niż kilkanaście licencji na procesy.

Trzecia oś dotyczy automatyzacji pulpitu bez nadzoru, czyli sytuacji, w której narzędzie klika w interfejsie starej aplikacji. To jest osobna licencja i osobny rachunek, a przy automatyzowaniu cudzego oprogramowania warto sprawdzić także jego warunki, bo część producentów wymaga osobnej licencji przy dostępie automatycznym.

Kiedy to jest właściwy wybór

Trzy warunki, przy których to narzędzie wygrywa z konkurencją wyraźnie.

Pierwszy: firma pracuje w ekosystemie Microsoftu. Integracja z pocztą, dokumentami, listami i komunikatorem działa bez konfigurowania uwierzytelniania, bo tożsamość jest wspólna. To jest oszczędność, której nie widać, dopóki nie spróbuje się tego samego z zewnętrznym narzędziem.

Drugi: przepływy buduje ktoś inny niż zespół wytwórczy. Interfejs graficzny pozwala osobie z działu operacyjnego złożyć automatyzację bez pisania kodu, a to jest realna zmiana w tempie pracy organizacji.

Trzeci: dane nie mogą opuścić infrastruktury firmy. Przepływ działający wewnątrz dzierżawy nie wysyła treści do zewnętrznego dostawcy, co przy dokumentach kadrowych albo finansowych bywa wymogiem, a nie preferencją.

Poza tymi warunkami przewaga topnieje. Zespół pracujący na innych narzędziach dostaje kolejnego dostawcę do obsłużenia, a programista automatyzujący coś dla siebie zwykle szybciej napisze skrypt.

Wyzwalacze i przetwarzanie w porcjach

Warto zrozumieć, jak przepływ się uruchamia, bo to decyduje o opóźnieniu i o rachunku bardziej niż liczba kroków.

Wyzwalacz zdarzeniowy reaguje na coś, co się wydarzyło: pojawił się wiersz, przyszła wiadomość, ktoś wysłał formularz. To jest wariant właściwy w większości przypadków, bo przepływ startuje wtedy, gdy jest potrzebny.

Wyzwalacz odpytujący sprawdza źródło w ustalonych odstępach i uruchamia przepływ, gdy coś się zmieniło. Wygląda podobnie i różni się dwiema rzeczami: opóźnieniem rzędu odstępu odpytywania oraz zużywaniem limitu wykonań także wtedy, gdy nic się nie zmieniło.

Ta druga cecha zaskakuje przy liczeniu kosztów. Przepływ odpytujący co pięć minut wykonuje się blisko trzysta razy na dobę niezależnie od tego, czy cokolwiek zaszło. Przy kilku takich przepływach limit wyczerpuje się szybciej, niż sugerowałaby liczba obsłużonych spraw.

Osobną kwestią jest przetwarzanie wielu elementów naraz. Krok iterujący po liście wykonuje kroki wewnętrzne dla każdego elementu, więc dwustuelementowa lista z trzema krokami w środku to sześćset operacji. Przy większych zbiorach warto włączyć wykonywanie równoległe i ograniczyć liczbę elementów pobieranych w jednym przebiegu, bo inaczej przepływ przekroczy limit czasu.

Praktyczna reguła: jeśli przepływ pracuje na więcej niż stu elementach jednorazowo, przeprojektuj go tak, żeby pobierał je porcjami i zapisywał, gdzie skończył. To jest praca, której nikt nie chce wykonywać, i tańsza niż tłumaczenie się z procesu przerwanego w połowie.

Zatwierdzenia i procesy z udziałem ludzi

To jest zastosowanie, w którym to narzędzie ma najmniej konkurencji, więc warto je opisać osobno.

Krok zatwierdzenia wysyła prośbę do wskazanej osoby i wstrzymuje przepływ do czasu odpowiedzi. Odpowiedź przychodzi z komunikatora, poczty albo aplikacji mobilnej, a przepływ podejmuje pracę tam, gdzie stanął.

Sedno wartości leży w tym, że oczekiwanie nic nie kosztuje i nie ma limitu czasu w praktycznym sensie. Wniosek czekający na przełożonego przez tydzień nie zajmuje żadnych zasobów, a przy własnym wdrożeniu wymagałby trwałego stanu i mechanizmu wznawiania.

Kilka rzeczy warto zaprojektować świadomie. Zastępstwo przy nieobecności, bo wniosek czekający na osobę na urlopie stoi w miejscu. Przypomnienie po ustalonym czasie, bo bez niego proces cichnie. Oraz zapis decyzji razem z uzasadnieniem, bo pytanie „kto to zatwierdził i kiedy" pada zawsze, tyle że pół roku później.

Warto też rozróżnić zatwierdzenie od powiadomienia. Krok wysyłający wiadomość i idący dalej to powiadomienie, a przepływ zaprojektowany tak, jakby ktoś ją przeczytał i zareagował, jest pomyłką, która wychodzi przy pierwszej sprawie pilnej.

Power Automate kontra alternatywy

NarzędzieEkosystemModel cenowyKiedy wybrać
Power AutomateMicrosoftZa użytkownika albo za procesFirma na pakiecie biurowym Microsoftu
n8nOtwarty, własny hostingZa wykonania albo darmowoChcesz kontroli i własnej infrastruktury
MakeZewnętrznyZa operacjeWiele usług zewnętrznych, zero infrastruktury
ZapierZewnętrznyZa zadaniaNajprostsze integracje, najszerszy katalog

Pierwszy wiersz wygrywa przez tożsamość i uprawnienia, a nie przez możliwości. Przepływ sięgający po dokumenty konkretnego pracownika działa w jego kontekście, z jego uprawnieniami, bez konfigurowania czegokolwiek. Odtworzenie tego przy narzędziu zewnętrznym oznacza konfigurowanie dostępu i zwykle nadanie szerszych uprawnień, niż potrzeba.

Drugi wiersz warto rozważyć, gdy zależy Ci na tym, żeby przepływy były kodem. Definicja trzymana w repozytorium, przechodząca przegląd i wdrażana jak reszta systemu, to inny sposób pracy niż klikanie w interfejsie, i przy zespole technicznym bywa lepszy.

Trzeci i czwarty wiersz wygrywają katalogiem integracji z usługami spoza świata Microsoftu. Jeśli Twój proces dotyka pięciu narzędzi zewnętrznych, one będą prostsze.

Granice narzędzia

Uczciwie warto wymienić, gdzie to przestaje działać dobrze, bo materiały producenta tego nie pokazują.

Złożoność ma tu twardy sufit. Przepływ z pięcioma krokami jest czytelny, z dwudziestoma pięcioma staje się nieprzejrzysty, a z rozgałęzieniami i pętlami zagnieżdżonymi zamienia się w coś, czego nikt poza autorem nie rozumie. Nie ma tu narzędzi, które przy kodzie traktujemy jako oczywiste: podziału na funkcje, wyszukiwania po nazwie, sensownego porównywania wersji.

Kontrola wersji jest uproszczona. Przepływ ma historię, ale porównanie dwóch wersji nie wygląda jak przegląd zmian w kodzie, a przywrócenie poprzedniej bywa jedynym sposobem na cofnięcie pomyłki.

Testowanie odbywa się przez uruchomienie. Nie ma środowiska, w którym przepływ przechodzi próbę bez dotykania prawdziwych danych, więc buduje się środowiska równoległe, co podwaja pracę utrzymaniową.

Wydajność ma limity. Liczba żądań na dobę, czas trwania pojedynczego przebiegu i częstotliwość wywołań łączników są ograniczone i przy przetwarzaniu tysięcy rekordów trzeba to obejść, dzieląc pracę na porcje.

To, co dzieje się po przekroczeniu tych limitów, warto znać wcześniej, bo intuicja podpowiada tu źle. Przepływ nie zatrzymuje się z błędem, tylko zwalnia: platforma dławi tempo wykonań. Pula liczona jest w oknie przesuwanym dwudziestu czterech godzin i przypisana do konkretnej osoby albo konkretnego przepływu, więc jeden proces, który zjadł swoją część, nie spowalnia pozostałych. Wyjścia są dwa: dokupienie pakietu pojemności, z których każdy podnosi pulę o kolejne pięćdziesiąt tysięcy żądań na dobę, albo przełączenie środowiska na rozliczenie za faktyczne zużycie.

Praktyczny wniosek: to jest narzędzie do procesów, a nie do przetwarzania danych. Przepływ zatwierdzający wniosek, owszem. Przepływ przeliczający sto tysięcy wierszy, nie.

Praktyka budowania przepływów

Kilka rzeczy oszczędza kłopotów przy dłuższym utrzymaniu.

Nazywaj kroki opisowo. Domyślne nazwy w rodzaju „Zastosuj do każdego 3" sprawiają, że przepływ sprzed pół roku jest nieczytelny nawet dla autora. Nazwa mówiąca, co ten krok robi, kosztuje sekundę i zwraca się przy pierwszej awarii.

Obsłuż błędy jawnie. Domyślnie przepływ zatrzymuje się przy pierwszym niepowodzeniu i wysyła powiadomienie do autora, co przy procesie firmowym oznacza, że sprawa stoi, a wie o tym jedna osoba. Krok obsługujący niepowodzenie i powiadamiający właściwą skrzynkę zmienia to.

Wyciągaj powtarzalne fragmenty do osobnych przepływów wywoływanych z innych. To jest odpowiednik funkcji i jedyny mechanizm ograniczający rozrost pojedynczego przepływu.

Ustal właściciela. Przepływ zbudowany przez osobę, która odeszła z firmy, i uruchamiany na jej koncie przestaje działać w dniu wyłączenia konta. Konta usługowe albo współwłasność rozwiązują to zawczasu.

Ostatnia rzecz to dokumentacja poza narzędziem. Jedno zdanie mówiące, co ten przepływ robi i dlaczego powstał, zapisane w miejscu, do którego zagląda zespół, jest warte więcej niż dwadzieścia dobrze nazwanych kroków.

Typowe błędy

Pierwszy to zbudowanie przepływu bez sprawdzenia, czy któryś krok wymaga łącznika premium. Odkrycie tego po zakończeniu pracy oznacza albo przeprojektowanie, albo licencje dla wszystkich użytkowników.

Drugi to wybór licencji na użytkownika przy procesie obsługującym wielu pracowników rzadko. Licencja na proces jest wtedy kilkudziesięciokrotnie tańsza.

Trzeci to budowanie jednego wielkiego przepływu zamiast kilku wywoływanych z siebie. Powstaje wtedy konstrukcja, której nikt poza autorem nie rozumie i której nie da się sensownie przetestować.

Czwarty to uruchamianie przepływu na koncie osoby, a nie na koncie usługowym. Odejście tej osoby z firmy zatrzymuje proces bez ostrzeżenia.

Piąty to brak jawnej obsługi błędów. Proces stoi, a informacja o tym trafia wyłącznie do autora przepływu.

Szósty to używanie tego do przetwarzania dużych zbiorów danych. Limity liczby wykonań i czasu trwania są tu twarde, a obchodzenie ich przez dzielenie na porcje zamienia proste zadanie w skomplikowaną konstrukcję.

FAQ

Czy Power Automate jest darmowy?

Podstawowe możliwości są dołączone do pakietu biurowego Microsoftu, który większość firm już ma, i obejmują łączniki standardowe, a te sięgają także poza usługi Microsoftu. Licencji płatnej wymagają dopiero łączniki premium: bazy danych, systemy klasy korporacyjnej i wywołania własnych interfejsów. Jest też trzydziestodniowy okres próbny oraz darmowy plan dla programistów, przeznaczony do nauki.

Czym różnią się licencje na użytkownika i na proces?

Zakresem. Licencja na użytkownika pozwala jednej osobie uruchamiać dowolne przepływy. Licencja na proces obejmuje jeden konkretny przepływ, z którego może korzystać dowolna liczba osób. Przy procesie firmowym używanym rzadko przez wielu pracowników druga opcja bywa kilkudziesięciokrotnie tańsza.

Które łączniki są premium?

Bazy danych, w tym własna baza platformy, usługi chmurowe, duże systemy sprzedażowe i kadrowe oraz wywołania własnych interfejsów przez zwykłe żądanie sieciowe. To ostatnie zaskakuje najczęściej, bo wywołanie własnego serwera intuicyjnie nie wygląda na funkcję zaawansowaną. Odwrotna intuicja też bywa myląca: łączniki do Dysku Google, Dropboxa, Slacka, Trello czy GitHuba są standardowe, mimo że to usługi spoza Microsoftu. Status konkretnego łącznika sprawdź w jego opisie w dokumentacji.

Czy nadaje się do przetwarzania danych?

Słabo. Limity liczby wykonań, czasu trwania przebiegu i częstotliwości wywołań sprawiają, że przetwarzanie tysięcy rekordów wymaga dzielenia na porcje i obchodzenia ograniczeń. To jest narzędzie do procesów z krokami zatwierdzania, a nie do obliczeń.

Czym różni się od n8n albo Make?

Osadzeniem w ekosystemie. Przepływ działa w kontekście tożsamości pracownika, z jego uprawnieniami, bez konfigurowania dostępu. n8n daje w zamian kontrolę i uruchomienie u siebie, a Make szerszy katalog integracji z usługami spoza świata Microsoftu.

Warunki licencji opisuje dokumentacja producenta, a plany strona z cennikiem.