Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Oczekiwanie

Podsumowanie:

Blok Oczekiwanie pozwala wstrzymać przebieg procesu na określony czas i wznowić go po upływie ustawionego czasu. Blok oczekiwania ma status, który pozwala informować użytkownika o bieżącym miejscu przetwarzania. Przejście do statusu tego bloku zamyka transakcję otwartą w chwili kliknięcia przez użytkownika przycisku zmiany statusu. Po upływie czasu oczekiwania aplikacja taskservice otwiera kolejną transakcję. Tę właściwość, w połączeniu z możliwością ustawienia czasu oczekiwania 0, można wykorzystać, aby pominąć blokadę okna przeglądarki z animacją operacji w toku stosowaną w przypadku długotrwałych operacji. Ten blok ma domyślnie przypisaną akcję Odśwież formularz, która jest wykonywana po przejściu z tego bloku do następnego.

Dzięki swoim właściwościom blok oczekiwania jest przydatny do obsługi bloku podprocesu asynchronicznego. W przypadku kiedy zainicjowanie takiego podprocesu trwa zauważalnie długo (np. podprocesy są wywoływane w pętli), użytkownik musiałby czekać aż zniknie animacja operacji w toku, która blokuje okno przeglądarki. Zastosowanie na wejściu do bloku podprocesu bloku oczekiwania 0 s pozwala ominąć tę blokadę, ponieważ nie jest ona stosowana do transakcji otwieranych przez aplikację taskservice, a tak się dzieje, kiedy nAxiom wznawia przetwarzanie po upływie czasu oczekiwania. W takim przypadku można dodatkowo ustawić czas oczekiwania równy 0, aby nie wprowadzań niepotrzebnych opóźnień.

Ponadto użycie bloku oczekiwania 0 s jest konieczne w przypadku podprocesów, które wykonują się automatycznie, np. składają się tylko z bloku Start i Utworzony. Bez tego bloku wywołanie takiego podprocesu, niezależnie od trybu, zakończy się niepowodzeniem.

Oprócz właściwości opisanych osobno, dla bloku oczekiwania i wychodzących z niego przejść konieczne jest określenie specyficznych właściwości.

Blok:

  • Czas oczekiwania (w sekundach): ustaw liczbę sekund, po upływie których proces przejdzie do następnego bloku. Ta właściwość wymaga ustawienia parametru Interwał powtarzania uruchamiania oczekujących procesów (sek) w sekcji Procesy biznesowe w ustawieniach systemu. Po zmianie tego ustawienia konieczne jest restartowanie aplikacji Taskservice.
  • Wykonuj w transakcji: określa tryb wykonywania akcji przypisanych do przejścia głównego wychodzącego z bloczku oczekiwania:
    • włączone: w przypadku wystąpienia błędu, wszystkie zmiany zostaną wycofane.
    • wyłączone: w przypadku wystąpienia błędu, zmiany nie zostaną wycofane.

    Maksymalny dozwolony czas trwania transakcji wynosi 10 minut. Jest to maksymalny limit czasu operacji dopuszczony przez środowisko .NET. Jeśli transakcja nie skończy się przed tym czasem, zostanie automatycznie wycofana i zostanie wyświetlony komunikat o błędzie.

Przejście:

Z bloku oczekiwania można poprowadzić dwa przejścia: przejście główne i przejście wykonywane w przypadku wystąpienia błędów podczas wykonywania przejścia głównego.

  • Przejście do obsługi błędów: po włączeniu przejście będzie traktowane jako awaryjna ścieżka procesu w przypadku wystąpienia błędów podczas wykonywania przejścia głównego, takich jak:
    • błąd akcji przed,
    • błąd zmiany statusu,
    • błąd akcji po; w tym przypadku zachowanie jest zależne od stanu przełącznika Wykonuj w transakcji we właściwościach bloku oczekiwania:
      • jeśli przełącznik jest włączony, wszystkie zmiany zostaną wycofane i zostanie wybrane przejście do obsługi błędów,
      • jeśli przełącznik jest wyłączony, zmiany nie zostaną wycofane i przejście do obsługi błędów nie zostanie wybrane.

    Jeśli wykonanie przejście obsługi błędów nie powiedzie się:

    • system zarejestruje błąd przejścia w logach,
    • zakończy obsługę awaitera
    • zapisze pierwotny błąd awaitera jako błąd zakończenia.

Copyright © 2025 OPTEAM SA. Theme Copyright © 2017-2020 Patrick Marsceill. Distributed by an MIT license.