Timery w WEBCON BPS

Facebooktwitterpinterestlinkedinmail
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.