Przykład konfiguracji prostej procedury obiegu faktury

Słowny opis procedury obiegu faktury.

Sekretariat tworzy dokument typu faktura w systemie. Uzupełnia formularz dokumentu, zamieszcza skan i po zapisaniu dokumentu w systemie uruchomiona zostanie procedura.

1. Etap procedury (Czynność): "Rozpoczęcie procedury obiegu faktury przychodzącej".

Ten etap rozpoczyna procedurę obiegu faktury.

3.1 etap wykonywany przez użytkownika

3.2 brak akcji

3.3 brak własności

3.4 przypisanie:

  • przypisanie do grupy Sekretariat o identyfikatorze grp_id = 21

Własność:

{stages.orgarr}

Wyrażenie:

SELECT array_agg(o.orunid) FROM users_link_org_units o LEFT JOIN users_link_group g ON o.usr_id = g.usr_id WHERE g.grp_id = 21

Przypisanie zadania work-flow spowoduje, że dany etap w procedurze będzie możliwy do wykonania tylko przez przypisaną jednostkę. Zapytanie SQL powyżej wyświetla w tablicy identyfikatory jednostek z grupy o identyfikatorze grp_id = 21.

Oczywiście aby procedura prawidłowo zadziałała po zaimportowaniu, należy wstawić ID grupy, która ma odpowiadać za realizację tego zadania work-flow.

UWAGA. Funkcja array_agg(); jest obsługiwana od wersji 8.4 serwera bazy danych PostgreSQL. Jeżeli wersja serwera bazy danych jest niższa należy usunąć przypisanie z tego etapu.


2. Etap procedury (Warunek): spr. czy zarejestrowano w dzienniku.

Ten etap sprawdza, czy faktura została już zarejestrowana w dzienniku.

zarejestrowany:

SELECT reg_id IS NOT NULL
FROM documents
WHERE doc_id = {DOC_ID}

niezarejestrowany:

SELECT reg_id IS NULL
FROM documents
WHERE doc_id = {DOC_ID}

Warunki odnoszą się do kolumny reg_id z tabeli documents, która przechowuje identyfikator rejestru z którym dana faktura jest powiązana lub pustą wartość w sytuacji kiedy dokument nie jest powiązany z żadnym rejestrem.


3. Etap procedury (Czynność): Rejestracja w dzienniku.

3.1 etap wykonywany przez system

3.2 akcja:

(aktywacja)

- Zarejestruj dokument:

Rejestr:

4

W tym parametrze należy podać identyfikator rejestru, czyli reg_id z tabeli registers w którym zostanie zarejestrowany dokument.

3.3 brak własności

3.4 brak przypisania

Ten etap jest automatycznie wykonywany przez system i zostanie wykonany jeżeli wcześniejsze sprawdzenie warunku wykaże iż dokument nie został zarejestrowany. Efektem wykonania tej czynności jest rejestracja w dzienniku o reg_id = 4.

Oczywiście po zaimportowaniu procedury do systemu, należy zmienić wartość tego parametru na identyfikator dziennika z Państwa systemu.


4. Etap procedury (Czynność): Przekaż dokument osobie rozdzielającej do opisania.

4.1 etap wykonywany przez użytkownika

4.2 akcja:

- Zmiana statusu: (aktywacja)

Status:

27

W tym parametrze należy podać identyfikator statusu, którego wartość można znaleźć w:

Ustawienia ==> Panel Starowania ==> Ogólne: Statusy ==> Kolumna ID


- Wyślij powiadomienie: (zakończenie)

Treść:

Wpłynął dokument (faktura), który należy przekazać do opisania

W tym parametrze należy podać treść powiadomienia. W miarę potrzeb proszę zmodyfikować tę treść.

Stanowisko:

SQL::SELECT o.orunid FROM users_link_org_units o LEFT JOIN users_link_group g ON o.usr_id = g.usr_id WHERE g.grp_id = 22

W tym parametrze należy podać identyfikator stanowiska na które ma zostać wysłane powiadomienie. Zapytanie, które znajduje się wyżej wyświetla identyfikator jednostki orunid z tabeli users_link_org_units, która to jednostka przynależy do grupy o identyfikatorze grp_id = 22


- Przekaż dokument: (zakończenie)

Do kogo:

SQL::SELECT o.orunid FROM users_link_org_units o LEFT JOIN users_link_group g ON o.usr_id = g.usr_id WHERE g.grp_id = 22

W tym parametrze należy podać identyfikator stanowiska na które ma zostać przekazany dokument. Zapytanie, które znajduje się wyżej wyświetla identyfikator jednostki orunid z tabeli users_link_org_units, która to jednostka przynależy do grupy o identyfikatorze grp_id = 22

4.3 brak własności

4.4 przypisanie

Własność:

{stages.orgarr}

Wyrażenie:

SELECT ARRAY[orunid] FROM stages WHERE procid = {PROCID} AND ptstid = 194

Przypisanie zadania work-flow do jednostki, która wykonała etap nr.1 Zapytanie zwraca identyfikator jednostki orunid z tabeli stages, która wykonała etap o ptstid = 194

Oczywiście aby procedura prawidłowo zadziałała po zaimportowaniu, należy sprawdzić jaki identyfikator ID posiada Etap nr. 1

Ustawienia ==> Panel Starowania ==> Ogólne: Procedury

Po otworzeniu czynności do edycji w zakładce "Ogólne" na samej górze wyświetlona jest informacja o identyfikatorze etapu, czyli "ID"

Uwaga. Jeżeli wersja serwera bazy danych PostgreSQL jest niższa nie 8.4 należy usunąć przypisanie z tego etapu.


5. Etap procedury (Czynność): Wybierz osobę, która zajmie się opisaniem faktury.