Na Timeout
Akcje tego typu są wykonywane cyklicznie dla wskazanych elementów. Pozwalają one zdefiniować czas startu i cykl powtórzeń. Z jednym timeoutem można powiązać kilka akcji różnego typu. Sposób wyliczania czasów kolejnych wykonań zależy od ustawień poszczególnych parametrów. Należy pamiętać, że akcje tego typu można definiować jedynie na krokach, ponieważ muszą być one powiązane z konkretnym elementem.
Konfiguracja
Dostęp do okna konfiguracji akcji Na Timeout uzyskuje się po dodaniu takiej akcji z poziomu okna konfiguracji kroku lub ścieżki (zakładka Akcje → panel Lista akcji → pozycja Na Timeout).
1. ID
Identyfikator timeoutu w bazie danych (jeżeli wartość ID jest mniejsza od 0, timeout nie został jeszcze zapisany w bazie).
2. Nazwa
Nazwa timeoutu zdefiniowana przez użytkownika.
3. Opis
Wprowadzony przez użytkownika opis timeoutu.
4. Tryb działania
Tryb Tylko wykonanie akcji to domyślny tryb działania timeoutu. Powoduje on wykonanie powiązanych z nim akcji w interwałach zdefiniowanych w jego właściwościach.
Tryb działania Przejście ścieżką po wywołaniu akcji powoduje przejście ścieżką w interwałach zdefiniowanych we właściwościach timeoutu.
5. Warunek wstawienia (SQL)
Pole umożliwia wstawienie zapytania SQL sprawdzającego, czy timeout ma zostać wstawiony. Je żeli w wyniku zapytania została zwrócona wartość „1” lub „TRUE”, oznacza to, że timeout należy powiązać z elementem. W przeciwnym wypadku nie zostanie on powiązany.
6. Typ
Określa typ akcji timeout. Dostępne rodzaje:
- Natychmiast – akcja zostanie uruchomiona tylko raz i nie będzie ponawiana,
- Minuta,
- Godzina,
- Dzień,
- Tydzień,
- Miesiąc.
7. Interwał
Częstotliwość wykonywania kolejnych powtórzeń. W zależności od typu interwał definiowany jest w: minutach, godzinach lub innych jednostkach.
8. Ilość powtórzeń
Pole pozwala ograniczyć liczbę powtórzeń timeoutu.
9. Dzień w okresie
Opcja ma zastosowanie wyłącznie do typów: tydzień i miesiąc. Określa ona, którego dnia tygodnia (miesiąca) timeout ma być uruchamiany.
10. Opóźnienie (w dniach)
Umożliwia zdefiniowanie, o ile dni od daty startu timeout ma zostać opóźniony.
11. Data startu
Data, która ma być datą uruchomienia. Może to być data wejścia elementu do kroku lub data zapisana w atrybucie typu Data i godzina elementu.
12. Tylko w godzinach nocnych
Ustala, czy timeout ma być uruchamiany tylko w godzinach nocnych.
13. Uruchom w określonych godzinach
Pozwala zdefiniować godziny, w których ma być uruchamiany timeout.
14. Ignoruj dni wolne
Ustala, czy timeouty mają być uruchamiane tylko w dni robocze (poniedziałek–piątek).
15. Przejście ścieżką w przypadku błędu
Umożliwia określenie ścieżki, którą przejdzie element, jeżeli dowolna akcja Na timeout zwróci błąd. Dotyczy również błędów (w tym błędów walidacji) z przejścia ścieżką po wywołaniu akcji Na timeout lub zapisu elementu po wykonaniu akcji Na timeout w trybie działania Tylko wywołanie akcji.
Element nie przejdzie wybraną ścieżką, jeśli dowolna akcja na wybranej ścieżce zwróci wartość „FALSE” lub błąd.
16. Przejście ścieżką gdy błąd walidacji
Pole pozwala określić ścieżkę, którą przejdzie element, jeżeli dowolna akcja na timeout zwróci wartość „FALSE”.
Nie dotyczy błędów walidacji z przejścia ścieżką po wywołaniu akcji na timeout lub zapisu elementu po wykonaniu akcji na timeout w trybie działania Tylko wykonanie akcji.
Element nie przejdzie wybraną ścieżką, jeżeli dowolna akcja na wybranej ścieżce zwróci wartość „FALSE” lub błąd.
Wyliczanie czasów uruchomień timeoutów
Data pierwszego uruchomienia timeoutu
Data, od której rozpoczynane jest wyliczanie timeoutów, ustawiana jest zgodnie z następującymi warunkami (warunki sprawdzane w podanej kolejności):
- jeśli timeout uruchamia się w określonym dniu – datą pierwszego uruchomienia jest pierwsza planowana aktywacja (wyliczona na podstawie definicji timeoutu) następująca po dacie startu i po dacie bieżącej,
- jeśli data startu jest datą z atrybutu – data pierwszego uruchomienia jest data otrzymaną z atrybutu. Jeżeli jest to data przeszła, pierwsza aktywacja timeoutu następuje natychmiast. Timeout jest uruchamiany w momencie startu cyklu,
- jeśli dla timeoutu zdefiniowano opóźnienie – data pierwszego uruchomienia jest datą przekazaną z dodanym opóźnieniem,
- Jeśli datą początkową jest data wejścia do kroku i nie ma zdefiniowanego opóźnienia – datą pierwszego uruchomienia jest pierwsza planowana aktywacja po starcie cyklu, wyliczona na podstawie zdefiniowanych interwałów. Timeout nie jest uruchamiany w momencie startu cyklu.
Start od daty z atrybutu:*
Data startu: 1 maja; Bieżąca data: 8 maja; Interwał: 5 dni;
Daty kolejnych timeoutów: 1, 11, 16 maja.
*1 maja jest pierwszą planowaną datą, timeout w rzeczywistości uruchomi się 8 maja (od razu po utworzeniu).
Start od daty wejścia do kroku:
Data startu: 1 maja; Bieżąca data: 1 maja; Interwał: 5 dni;
Daty kolejnych timeoutów: 6, 11, 16 maja.
Data startu: 1 maja; Bieżąca data: 8 maja; Interwał: 5 dni;
Daty kolejnych timeoutów: 11, 16, 21 maja.
Ignorowanie weekendów
- Typ: minuta; godzina; dzień
Uwzględniany jest 5-dniowy tydzień. Jeśli data uruchomienia wypada w weekend, uruchomienie następuje w najbliższy poniedziałek.
Start od daty z atrybutu:
Data startu: 1 maja (sobota); Bieżąca data: 3 maja (poniedziałek); Interwał: 5 dni;
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 3 (poniedziałek) , 10 (poniedziałek) , 17 (poniedziałek) maja.
Start od daty wejścia do kroku:
Data startu: 1 maja (sobota); Bieżąca data: 3 maja (poniedziałek); Interwał: 5 dni;
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 10 (poniedziałek) , 17 (poniedziałek) , 24 (poniedziałek) maja.
Data startu: 1 maja (sobota); Bieżąca data: 1 maja; Interwał: 5 dni;
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 3 (poniedziałek), 10, 17 maja.
Data startu: 1 lutego (poniedziałek); Bieżąca data: 1 lutego; Interwał: 7 dni;
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 10 (środa), 19 (piątek) lutego, 2 (wtorek), 11 (czwartek), 22 (poniedziałek) marca.
- Typ: tydzień; miesiąc
Jeśli data uruchomienia wypada w weekend, uruchomienie następuje w najbliższy poniedziałek.
Data startu: 1 maja (sobota); Bieżąca data: 5 maja (środa); Interwał: 1 tydzień;
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 10 (poniedziałek) , 17 (poniedziałek) , 24 (poniedziałek) maja.
Data startu: 1 lutego (poniedziałek); Bieżąca data: 1 lutego; Interwał: 1 tydzień;
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 8 (poniedziałek), 15 (poniedziałek), 22 (poniedziałek) lutego.
Ustawienie konkretnego dnia w okresie
Powoduje ustawienie najbliższego (przyszłego) ustawionego dnia, będącego po dacie startu. (Ma zastosowanie dla typu: tydzień i miesiąc).
Data startu: 1 maja (sobota); Bieżąca data: 1 maja (sobota); Interwał: 1 tydzień;
Dzień w okresie: poniedziałek
Daty kolejnych timeoutów: 3 (poniedziałek) , 10 (poniedziałek) , 17 (poniedziałek) maja.
Data startu: 1 maja (sobota); Bieżąca data: 3 maja (poniedziałek); Interwał: 1 tydzień;
Dzień w okresie: poniedziałek
Daty kolejnych timeoutów: 10 (poniedziałek) , 17 (poniedziałek) , 24 (poniedziałek) maja.
Data startu: 1 stycznia 2010; Bieżąca data: 1 stycznia 2010; Interwał: 1 miesiąc;
Dzień w okresie: 31
Daty kolejnych timeoutów: 31 stycznia (niedziela) , 28 lutego (niedziela), 31 marca (środa).
Jeżeli wybrano dzień w okresie i zaznaczono ignorowanie weekendów, jako data wykonania kolejnego timeoutu zostanie ustawiony pierwszy dzień niebędący dniem weekendu.
Data startu: 1 stycznia 2010; Bieżąca data: 1 stycznia 2010; Interwał: 1 miesiąc;
Dzień w okresie: 31
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 1 lutego (poniedziałek) , 1 (poniedziałek), 31 (środa) marca.
Data startu: 1 maja (sobota); Data aktualna: 1 maja (sobota); Interwał: 1 tydzień;
Dzień w okresie: niedziela
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 3 (poniedziałek) , 10 (poniedziałek) , 17 (poniedziałek) maja.
Opóźnienie uruchamiania
Ustawienie wartości opóźnienia powoduje zwiększenie daty startowej o podaną w opóźnieniu liczbę dni.
Data startu: 1 marca 2010; Bieżąca data: 1 marca 2010; Interwał: 1 miesiąc
Opóźnienie: 7 dni
Daty kolejnych timeoutów: 8 marca, 8 kwietnia , 8 maja.
Jeżeli zaznaczono opcję ignorowania weekendów, dni opóźnienia są liczone w dniach roboczych.
Data startu: 1 marca 2010; Bieżąca data: 1 marca 2010; Interwał: 1 miesiąc
Opóźnienie: 7 dni
Ignorowanie weekendów: włączone
Daty kolejnych timeoutów: 10 marca, 12 kwietnia , 10 maja.
Uruchamianie w określonych godzinach
- Typ: minuta; godzina
Dzień traktowany jest jako trwający, zdefiniowany przez godziny uruchamiania okres. Jeśli data uruchomienia wypadanie poza godzinami uruchomienia, pozostały czas przenoszony jest na następny okres godzin uruchamiania:
Godziny uruchomiania: 10:00–15:00, start od daty określonej w atrybucie:
Data startu: 1 maja 2010 8:30; Bieżąca data: 1 maja 2010 9:00; Interwał: 3 godziny
Daty kolejnych timeoutów: 1 maja 10:00, 1 maja 13:00, 2 maja 11:00.
Godziny uruchomiania: 10:00–15:00, start od daty wejścia do kroku:
Data startu: 1 maja 2010 8:30; Bieżąca data: 1 maja 2010 9:00; Interwał: 3 godziny
Daty kolejnych timeoutów: 1 maja 13:00, 2 maja 11:00, 2 maja 14:00.
- Typ: tydzień; miesiąc
Jeżeli data uruchomienia wypada poza godzinami uruchomienia, przesuwana jest na następną początkową godzinę wykonania:
Godziny uruchomiania: 10:00–15:00, start od daty określonej w atrybucie:
Data startu: 1 maja 2010 16:00; Bieżąca data: 1 maja 2010 16:00; Interwał: 2 dni
Daty kolejnych timeoutów: 2 maja 10:00, 4 maja 10:00, 6 maja 10:00.
Godziny uruchomiania: 10:00–15:00, start od daty wejścia do kroku:
Data startu: 1 maja 2010 16:00; Bieżąca data: 1 maja 2010 16:00; Interwał: 2 dni
Daty kolejnych timeoutów: 4 maja 10:00, 6 maja 10:00, 8 maja 10:00.