Interfejs do edycji procesów

Moduł proc dysponuje interfejsem html pozwalającym edytować procesy, obiekty złożone oraz uprawnienia do stanów i przejść. Obiekty interfejsu zawarte są w pliku jPalio.jar, co umożliwia ich szybkie dodanie w dowolnym systemie. Należy w tym celu wykonać jednokrotnie w dowolnym obiekcie funkcję $proc.createOrReplaceHtmlInterface(). Po wykonaniu funkcji należy odświeżyć drzewo katalogów w jDesignerze. W katalogu głównym pojawi się katalog "Zarządzanie procesami", zawierający obiekty interfejsu. Aby uzyskać dostęp do stron interfejsu, należy dodać linki do stron 90010, 90020, 90030, 90050.

Interfejs oparty jest o identyfikatory obiektów i stron, a nie o kody (był tworzony dla wersji jpalio nie obsługującej jeszcze kodów). Katalogi, obiekty i strony posiadają identyfikatory > 90000.

Interfejs był testowany na bazie Oracle oraz postgreSQL.

W katalogu "Zarządzanie procesami > 03 Obiekty referencyjne dla procesów" można znaleźć przykłady obiektów różnych typów.

Nazwy obiektów

Ze względu na dużą liczbę obiektów jpalio istniejących na ogół w systemie, podczas wskazywania tychże obiektów w formularzach interfejsu zaistniała konieczność ograniczenia liczby obiektów wyświetlanych na liście. Aby obiekty jpalio były widoczne na listach, konieczne jest nadanie im określonych prefiksów w nazwie (nie w kodzie):

Zalecane jest także nadawanie nazwom obiektów odpowiednich literowych suffiksów, określonych w rozdziale "Obiekty określane dla stanów i przejść".

Konfiguracja interfejsu

Interfejs html umożliwia dostosowanie kolorów interfejsu (obiekt 90041) oraz sposobu definiowania uprawień (obiekt 90040). Różne systemy mogą używać jednego lub dwóch zestawów uprawnień. Do wskazania ilości używanych zestawów służy zmienna UseOwnerRights, null oznacza jeden zestaw uprawnień, not null dwa. W zmiennych StateRightTypes, StateRightTypesOwner, TransitionRightTypes, TransitionRightTypesOwner można określić dostępne typy uprawnień dla stanów i przejść, podanie jednej pozycji tabeli spowoduje, iż w formularzu do edycji uprawnień będą wyświetlane checkboxy, podanie większej ilości typów wygeneruje listę rozwijaną.

Edycja procesów

Edycja procesów jest dostępna na stronie 90010.

Rys. Tabela procesów.

W tabeli procesów wyświetlone są zdefiniowane procesy. Przyciski "Zablokuj" i "Odblokuj" umożliwiają zmianę statusu procesu. "Usuń" usuwa proces oraz wszystkie przypisane do niego stany, przejścia i obiekty złożone. Przycisku należy używać ze szczególną ostrożnością, gdyż akcja nie jest w żaden sposób potwierdzana. "Kopiuj" tworzy kopię procesu oraz wszystkich przypisanych do niego stanów, przejść, obiektów złożonych oraz uprawnień do stanów i przejść. Kliknięcie na nazwie procesu powoduje przeniesienie do formularza właściwości procesu.

Rys. Formularz właściwości procesu.

Formularz właściwości procesu umożliwia określenie nazwy procesu, jego identyfikatora tekstowego, oraz obiektu stanu i błędu dla procesu. Aby na liście obiektów stanu i błędu widoczne były obiekty jpalio, ich nazwa musi zaczynać się odpowiednio od "Proc state" lub "Proc error".

Edycja obiektów

Edycja obiektów jest dostępna na stronie 90020.

Rys. Tabela obiektów.

Na stronie z tabelą obiektów można dodawać, usuwać i kopiować obiekty złożone. Kliknięcie nazwy obiektu przenosi do formularza właściwości obiektu.

Rys. Formularz właściwości obiektu.

Formularz właściwości obiektu złożonego umożliwia określenie nazwy, przynależności do procesu oraz składowych obiektów jpalio. Określenie przynależności do procesu powoduje, że obiekt będzie kopiowany i usuwany razem z procesem. Obiekty nie przypisane do procesów będą wyświetlane na listach obiektów złożonych w formularzach właściwości stanów i przejść wszystkich procesów. Przycisk ze znakiem "^" służy do zmiany kolejności wykonania obiektów składowych - przesuwa dany obiekt składowy o pozycję wyżej. Wybranie pozycji na liście "nty obiekty jpalio" i zapisanie danych obiektu spowoduje pojawienie się kolejnej listy "nty obiekty jpalio", umożliwiającej dodanie następnego obiektu. Zapis pozycji "nty obiekty jpalio" z wartością pustą spowoduje usunięcie danej pozycji.

Pod formularzem właściwości obiektu wyświetlana jest tabela stanów i przejść, w których obiekt jest używany. Kliknięcie pozycji tabeli przenosi do formularza właściwości odpowiedniego stanu.

Edycja stanów i przejść

Edycja stanów i przejść jest dostępna na stronie 90030.

Rys. Tabela stanów.

Na stronie edycji stanów i przejść wyświetlane są dwie tabele. Kliknięcie pozycji w pierwszej z nich przenosi do edycji klikniętego stanu i jego przejść. Kliknięcie pozycji w drugiej tabeli pozwala edytować cały proces jednocześnie.

Rys. Formularz właściwości stanu.

Formularz właściwości stanu służy do edycji właściwości stanu i przejść z nim powiązanych. Dane przejść są wcięte względem danych stanów. Stany są wyświetlane w kolejności odpowiadającej numerowi stanu.

Znaczenie pól formularza właściwości stanu, kolejno od góry:

Znaczenie pól formularza właściwości przejścia, kolejno od góry:

Rola kontrolek umieszczonych pod tabelą stanów stanów i przejść.

Pod tabelą stanów i przejść umieszczono także dwie tabele nawigacyjne.

Służą one do szybkiego przenoszenia do edycji obiektów wykorzystywanych przez stan oraz do przenoszenia do edycji stanów, których przejścia prowadzą do bieżącego stanu lub przenoszenia do edycji stanów, do których prowadzą przejścia bieżącego stanu.

Zmiany wprowadzone w polach formularza są zapisywane tylko po kliknięciu jednego z przycisków "Zapisz zmiany". Użycie dowolnego innego przycisku lub skorzystanie z tabel nawigacyjnych powoduje utracenie wprowadzonych zmian.

Rys. Formularz uprawnień do stanu.

Powyższy formularz jest wyświetlany po kliknięciu przycisku "uprawnienia" w formularzu edycji stanu lub przejścia. Na rysunku została przedstawiona edycja uprawnień do stanu, edycja uprawnień do przejścia wygląda i jest obsługiwana analogicznie. Aby określić uprawnienia do stanu, należy wybrać dla żądanych ról typ uprawnienia z listy i kliknąć przycisk "zapisz". Akcja "odśwież" przeładowuje formularz, ignorując wprowadzone zmiany. Jeśli interfejs zostałby skonfigurowany tak, aby używać jednego typu uprawnień, zamiast list rozwijanych zostałyby wyświetlone pola wyboru typu checkbox. Zaznaczenie pola wyboru oznacza nadanie uprawnienia.

Edycja uprawnień do stanów i przejść

Edycja uprawnień do stanów i przejść jest dostępna na stronie 90050.

Rys. Formularz uprawnień.

Strona ta udostępnia znacznie wygodniejszy interfejs do edycji uprawnień niż dostępny w formularzu edycji stanów i przejść. Wyświetlane są jednocześnie uprawnienia do wszystkich stanów i przejść wybranego procesu (pole "stany i przejścia procesu") oraz wszystkich lub wybranych ról. Role można ograniczyć do pojedynczej roli za pomocą pola "uprawnienia dla roli", do wybranej roli i ról do niej podrzędnych (pole "uprawnienia dla poddrzewa ról") lub do grupy wskazanych ról (pole "uprawnienia dla wybranych ról", zaznaczanie wielu ról po poprzez klikanie z wciśniętym klawiszem shift lub ctrl). Jeśli interfejs jest skonfigurowany tak, aby używać jednego typu uprawnień dla stanów/przejść, zamiast list rozwijanych zostaną wyświetlone pola wyboru typu checkbox. Zaznaczenie pola wyboru oznacza nadanie uprawnienia. Zmiany wprowadzone w uprawnieniach są zapisywane po kliknięciu przycisku "ustaw skojarzenia", znajdującego się pod tabelą uprawnień.