Dotyczy wersji: 2025 R1 i powyżej; autorzy: Tomasz Batko, Krystyna Gawryał
Dokumentacja powiązana
Szczegółowy opis funkcjonalności wymienionych w niniejszym artykule oraz ich konfiguracji można znaleźć w następującej sekcji Pomocy WEBCON BPS:
Wprowadzenie
Timery to elementy, które pozwalają definiować częstotliwość, z jaką wykonywane będą powiązane z nimi akcje. Dzięki nim można określić czas startu i ewentualny cykl powtórzeń takich akcji.
W WEBCON BPS 2025 R1 wprowadzono liczne modyfikacje i usprawnienia w działaniu Timerów (uprzednio znanych jako Timeouty). W niniejszym artykule opisano te zmiany konfiguracyjne timerów oraz podano przykłady wyliczania dat ich uruchomienia.
Zmiany konfiguracyjne
Oprócz aktualizacji nazewnictwa w systemie, zmiany, jakim poddano timery w wersji 2025 R1, wiązały się z rozbudową i dostosowaniem okna konfiguracyjnego Szczegóły timera. Poszczególne opcje podzielono na sekcje: Pierwsze uruchomienie i Powtarzaj cyklicznie, co sprawiło, że konfiguracja timera jest teraz bardziej intuicyjna.
Wprowadzono możliwość zdefiniowania parametrów timera w taki sposób, aby jego pierwsze uruchomienie (Data startu) odbywało się Natychmiast po wejściu do kroku, a kolejne zgodnie z określonym Interwałem.
Kolejną ważną zmianą było rozbudowanie konfiguracji związanej z obsługą błędów walidacji / wykonania akcji powiązanych z timerem – wprowadzono dwa dodatkowe parametry Dopuszczalna liczba kolejnych błędów (określający liczbę kolejnych błędnych wykonań timera, która spowoduje zatrzymanie wykonania akcji z nim powiązanych) oraz Liczba minut ponowienia w przypadku błędu (definiujący czas, po jakim nastąpi kolejne wykonanie timera w przypadku błędu).
Ponadto udostępniono przycisk Testuj, dzięki któremu, za pośrednictwem dodatkowego okna Planowane uruchomienia timera, można sprawdzić planowane daty, z jakimi uruchamiany będzie timer.
W oknie można ustawić dowolną wartość atrybutu typu Data i godzina lub Datę wejścia do kroku i, wybierając opcję Przelicz, otrzymać dokładną listę dat i godzin uruchomień skonfigurowanego timera, a następnie wyeksportować ją do programu Excel. Niezależnie od wskazanej Liczby wykonań timera, w oknie wyświetlanych jest maksymalnie 10 pozycji.
Dodatkowo umożliwiono usuwanie aktywowanych timerów z powiązanych elementów obiegu.
Wyliczanie dat uruchomienia timerów
Szeroki wybór opcji konfiguracyjnych pozwala definiować timery, których wykonanie i powtarzalność będą dokładnie skorelowane z typem akcji i powiązanych z nią zadań. Poniżej opisano zasady, jakie obowiązują podczas wyliczania dat uruchomienia timerów z podaniem przykładowych konfiguracji i ich wyników.
Uwaga: przykłady przedstawione w niniejszym artykule dotyczą roku kalendarzowego 2024 (chyba, że wyraźnie zaznaczono inaczej), niemniej mają one uniwersalny charakter.
Data pierwszego uruchomienia timera
Data, z jaką rozpoczyna się wyliczanie timerów ustawiana jest zgodnie z następującymi warunkami (warunki sprawdzane w podanej kolejności):
- Jeżeli timer uruchamiany jest w określonym dniu, to datą jego pierwszego uruchomienia jest pierwsza planowana aktywacja (wyliczona na podstawie definicji timera), następująca po Dacie startu i dacie bieżącej.
- Jeżeli Data startu zawiera odwołanie do wartości atrybutu typu Data i godzina, to datą pierwszego uruchomienia jest wartość otrzymana z atrybutu. Jeżeli data atrybutu jest datą przeszłą, pierwsza aktywacja timera następuje natychmiast. Timer zostanie aktywowany z datą startu cyklu.
- Jeżeli dla timera zdefiniowano Przesunięcie, to datą pierwszego uruchomienia timera jest Data startu z dodanym przesunięciem (wyrażonym w dniach). W przypadku, gdy Data startu jest pobierana z atrybutu, możliwe jest ustawienie Przesunięcia ujemnego. Warto zwrócić uwagę na to, że przesunięcie ma zastosowanie wyłącznie do pierwszego uruchomienia timera, a jego kolejne wykonania następują ściśle z zachowaniem zadanego Interwału.
- Jeżeli Datą startu jest Data wejścia do kroku i nie zdefiniowano Przesunięcia, datą pierwszego uruchomienia timera jest pierwsza planowana aktywacja po starcie cyklu, wyliczona na podstawie zdefiniowanego Interwału. Timer nie zostanie aktywowany w dacie startu cyklu.
- Jeżeli dla Daty startu wybrano opcję Natychmiast, pierwsze uruchomienie timera nastąpi wraz z wejściem elementu do kroku.
Przykłady
Uruchomienie na podstawie daty z atrybutu:
Data startu: 1 maja; Data aktualna: 8 maja; Interwał: 5 dni;
Daty kolejnych timerów: 1 maja, 11 maja, 16 maja
1 maja jest pierwszą planowaną datą, timer w rzeczywistości zostanie uruchomiony 8 maja (od razu po utworzeniu)
Uruchomienie na podstawie daty wejścia do kroku:
Data startu: 1 maja; Data aktualna: 1 maja; Interwał: 5 dni;
Daty kolejnych timerów: 6 maja, 11 maja, 16 maja,
Data startu: 1 maja; Data aktualna: 8 maja; Interwał: 5 dni;
Daty kolejnych timerów: 11 maja, 16 maja, 21 maja
Ignorowanie weekendów
TYP: MINUTA, GODZINA, DZIEŃ
Przyjęto, że tydzień liczy 5 dni (roboczych). Jeżeli Data startu wypada w weekend, to nastąpi jej przesunięcie na najbliższy poniedziałek.
Przykłady
Uruchomienie na podstawie daty z atrybutu:
Data startu: 2 listopada (sobota); Data aktualna: 4 listopada (poniedziałek); Interwał: 5 dni;
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 4 listopada (poniedziałek), 11 listopada (poniedziałek), 18 listopada (poniedziałek)
Uruchomienie na podstawie daty wejścia do kroku:
Data startu: 2 listopada (sobota); Data aktualna: 4 listopada (poniedziałek); Interwał: 5 dni;
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 11 listopada (poniedziałek), 18 listopada (poniedziałek), 25 listopada (poniedziałek)
Data startu: 2 listopada (sobota); Data aktualna: 2 listopada (sobota); Interwał: 5 dni;
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 4 listopada (poniedziałek),11 listopada (poniedziałek), 18 listopada (poniedziałek)
Data startu: 1 lipca (poniedziałek); Data aktualna: 1 lipca (poniedziałek); Interwał: 7 dni;
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 10 lipca (środa), 19 lipca (piątek), 30 lipca (wtorek), 8 sierpnia (czwartek), 19 sierpnia (poniedziałek)
TYP: TYDZIEŃ, MIESIĄC
Jeżeli data uruchomienia wypada w weekend, przesuwana jest na najbliższy poniedziałek.
Przykłady
Data startu: 2 listopada (sobota); Data aktualna: 6 listopada (środa); Interwał: 1 tydzień;
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 11 listopada (poniedziałek), 18 listopada (poniedziałek), 25 listopada (poniedziałek)
Data startu: 1 lipca (poniedziałek); Data aktualna: 1 lipca (poniedziałek); Interwał: 1 tydzień;
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 8 lipca (poniedziałek),15 lipca (poniedziałek), 22 lipca (poniedziałek)
Ustawienie określonego dnia w okresie (ma zastosowanie dla typu: tydzień i miesiąc)
Ustawienie warunku Dzień w okresie powoduje, że datą uruchomienia timera będzie pierwszy w kolejności dzień następujący po Dacie startu, który spełnia ten warunek.
Przykłady
Data startu: 1 czerwca (sobota); Data aktualna: 1 czerwca (sobota); Interwał: 1 tydzień;
Dzień w okresie: poniedziałek
Daty kolejnych timerów: 3 czerwca (poniedziałek), 10 czerwca (poniedziałek), 17 czerwca (poniedziałek)
Data startu: 1 czerwca (sobota); Data aktualna: 3 czerwca (poniedziałek); Interwał: 1 tydzień;
Dzień w okresie: poniedziałek
Daty kolejnych timerów: 10 czerwca (poniedziałek), 17 czerwca (poniedziałek), 24 czerwca (poniedziałek)
Data startu: 1 stycznia 2025; Data aktualna: 1 stycznia 2025; Interwał: 1 miesiąc;
Dzień w okresie: 31
Daty kolejnych timerów: 31 stycznia, 28 lutego, 31 marca
Jeżeli wybrano Dzień w okresie i zaznaczono opcję Ignorowania weekendów, jako data wykonania kolejnego timera ustawiony zostanie pierwszy dzień niebędący dniem weekendu.
Przykłady
Data startu: 1 stycznia 2025 (środa); Data aktualna: 1 stycznia 2025 (środa); Interwał: 1 miesiąc;
Dzień w okresie: 26
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 27 stycznia (poniedziałek), 26 lutego (środa), 26 marca (środa)
Data startu: 1 czerwca (sobota); Data aktualna: 1 czerwca (sobota); Interwał: 1 tydzień;
Dzień w okresie: niedziela
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 3 czerwca (poniedziałek), 10 czerwca (poniedziałek), 17 czerwca (poniedziałek)
Przesunięcie uruchamiania timera
Ustawienie wartości Przesunięcia powoduje zwiększenie daty uruchomienia timera o podaną liczbę dni.
Przykład
Data startu: 1 marca 2025; Data aktualna: 1 marca 2025; Interwał: 1 miesiąc;
Przesunięcie: 7 dni
Daty kolejnych timerów: 8 marca, 8 kwietnia , 8 maja
Jeżeli zaznaczono opcję ignorowania weekendów, wówczas wartość Przesunięcia wyliczana jest z uwzględnieniem wyłącznie dni roboczych.
Przykład
Data startu: 1 marca 2025 (sobota); Data aktualna: 1 marca 2025 (sobota); Interwał: 1 miesiąc
Przesunięcie: 7 dni
Ignorowanie weekendów: włączone
Daty kolejnych timerów: 11 marca (wtorek), 8 kwietnia (wtorek), 8 maja (czwartek)
Jeżeli Data startu jest pobierana z atrybutu typu Data i godzina, to możliwe jest ustawienie Przesunięcia ujemnego.
Przykład
Data startu: 10 marca 2025; Data aktualna: 10 marca 2025; Interwał: 3 dni
Przesunięcie: -5 dni
Daty kolejnych timerów: 5 marca, 8 marca, 11 marca
Uruchamianie w określonych godzinach
TYP: MINUTA, GODZINA
Przyjęto, że dzień liczy tyle godzin, na ile zdefiniowano okres uruchomienia timera. Jeżeli czas uruchomienia timera wypada poza tymi godzinami, to zostanie przeniesiony na kolejny najbliższy taki okres.
Przykłady
Godziny uruchomienia timera: 10:00-15:00, uruchomienie na podstawie daty z atrybutu
Data startu: 1 maja 2025, 08:30; Data aktualna: 1 maja 2025, 09:00; Interwał: 3 godziny
Daty kolejnych timerów: 1 maja, 10:00; 1 maja, 13:00; 2 maja, 11:00
Godziny uruchomienia timera: 10:00-15:00, uruchomienie na podstawie daty wejścia do kroku
Data startu: 1 maja 2025, 08:30; Data aktualna: 1 maja 2025, 09:00; Interwał: 3 godziny
Daty kolejnych timerów: 1 maja, 13:00; 2 maja, 11:00; 2 maja, 14:00
TYP: DZIEŃ, TYDZIEŃ, MIESIĄC
Jeżeli czas uruchomienia timera wypada poza zdefiniowanymi godzinami jego uruchomienia, to nastąpi jego przesunięcie na następną początkową godzinę wykonania timera.
Przykłady
Godziny uruchamiania timera: 10:00-15:00, uruchomienie na podstawie daty z atrybutu
Data startu: 1 maja 2025, 16:00; Data aktualna: 1 maja 2025, 16:00; Interwał: 2 dni
Daty kolejnych timerów: 2 maja, 10:00; 4 maja, 10:00; 6 maja 10:00
Godziny uruchamiania timera: 10:00-15:00, uruchomienie na podstawie daty wejścia do kroku
Data startu: 1 maja 2025, 16:00; Data aktualna: 1 maja 2025, 16:00; Interwał: 2 dni
Daty kolejnych timerów: 4 maja, 10:00; 6 maja, 10:00; 8 maja, 10:00
Podsumowanie
Timery są narzędziem, które w wysokim stopniu automatyzuje procesy biznesowe realizowane z wykorzystaniem platformy WEBCON BPS. Data i godzina uruchomienia i ponownego wykonywania timera mogą na pozór wydawać się trudne do przewidzenia. Jednak zrozumienie zasad, na podstawie których wyliczane są te wartości, jest kluczowe, aby w pełni czerpać korzyści, jakie niesie ze sobą ta funkcjonalność. Założeniem zmian wprowadzonych w wersji 2025 R1 było ułatwienie użytkownikom tego procesu, a dodatkowe opcje testowania timerów i ich planowanego uruchomienia są gwarancją sukcesu w tym zakresie.