Implementacja podprocesu

Implementacja menadżera procesu obsługującego podproces

Aby Hetman prawidłowo obsługiwał podprocesy, należy nadpisać w menadżerze procesu poniższą metodę:

/**
* Pobiera aktualny stan zgłoszenia/dokumentu w podprocesie.
* Ze względu na kompatybilność wsteczną metoda nie jest abstrakcyjna.
* Aby korzystać z podprocesów należy w menadżerze procesu nadpisać tę metodę.
* @param instanceId identyfikator zgłoszenia/dokumentu
* @param subprocess podproces
* @throws PalioException, ProcessException
* @return jeżeli dla danego zgłoszenia/dokumentu nie rozpoczęto podprocesu (metoda powinna zwrócić null)
*/
public State getInstanceState(Object instanceId, Subprocess subprocess) throws PalioException

 

Wykonywanie/wyświetlanie podprocesu

Wartość globalnego parametru HSubprocess decyduje o tym jaki podproces ma być wykonywany/wyświetlany. Hetman domyślnie pracuje na głównym podprocesie (MAIN). W przypadku gdy jest wykonywane przejście sprawdzany jest podproces do jakiego należy stan docelowy. Jeżeli podproces został już rozpoczęty pobierany jest ostatni stan w podprocesie i przejście wykonywane jest z tego stanu (musi być w nim zdefiniowane przejście do podanego stanu docelowego). W przypadku gdy podproces nie został rozpoczęty pobierany jest ostatni stan podprocesu głównego. W stanie tym powinno być zdefiniowane przejście do stanu docelowego (powinien on być pierwszym stanem w podprocesie).