Zastępstwa per proces w AMODIT – instrukcja, przykłady i założenia
Założenia ogólne
Nowy moduł zastępstw w AMODIT oparty jest o standardowe procesy, czyli obieg spraw z wykorzystaniem reguł AMODIT Script. Dzięki temu rozwiązaniu można obsługiwać zarówno zastępstwa ogólne (dla wszystkich spraw), jak i dedykowane zastępstwa per proces (dla wybranych procesów).
- Moduł „Zastępstwo per proces” jest alternatywą dla standardowego mechanizmu zastępstw – w systemie można używać tylko jednego z nich.
- Funkcjonalność dostępna od wersji 220630 systemu AMODIT i wymaga osobnej licencji.
- Do obsługi zastępstw per proces niezbędny jest dedykowany proces, który można utworzyć samodzielnie lub wykorzystać istniejący proces (np. wniosków urlopowych) poprzez dodanie niezbędnych elementów formularza oraz funkcji reguł.
Konfiguracja procesu do obsługi zastępstw
Elementy formularza
| Pole | Typ | Opis |
|---|---|---|
Zastepowany |
Użytkownik | Login osoby, dla której ustawiane jest zastępstwo |
GlownyZastepca |
Użytkownik | Login głównego zastępcy |
DataOd |
Data | Początek okresu zastępstwa |
DataDo |
Data | Koniec okresu zastępstwa |
ZastepstwaPerProces |
Tabela (opcjonalna) | Definicja wyjątków per proces |
Kolumny tabeli ZastepstwaPerProces:
| Kolumna | Typ | Opis |
|---|---|---|
Proces |
Tekst / słownik | Nazwa procesu |
Zastepca |
Użytkownik | Login dedykowanego zastępcy |
Przykłady konfiguracji
Przykład 1: Uproszczone zastępstwo – tylko główny zastępca
Założenia:
- Proces nie musi zawierać tabeli dedykowanych zastępców.
- Użytkownik wskazuje tylko okres nieobecności oraz głównego zastępcę.
- Wszystkie sprawy przekazywane są do głównego zastępcy.
Konfiguracja formularza:
| Zastepowany | Data od | Data do | Główny zastępca |
|---|---|---|---|
| Adam Nowak | 2024-06-10 | 2024-06-20 | Jan Kowalski |
Reguła AMODIT:
object.userLogin = Zastepowany; // login osoby zastępowanej z pola formularza
object.mainDeputyLogin = GlownyZastepca; // login głównego zastępcy z pola formularza
object.startDate = DataOd; // data rozpoczęcia z pola formularza
object.endDate = DataDo; // data zakończenia z pola formularza
object.changesApproved = true; // flaga zatwierdzenia (np. po akceptacji przełożonego)
SetUserSubstitutions(object);
Przykład 2: Zastępstwo z dedykowanymi zastępcami per proces
Założenia:
- Proces zawiera tabelę
ZastepstwaPerProcesz kolumnamiProcesiZastepca. - Główny zastępca obsługuje sprawy, które nie mają dedykowanego zastępcy.
- Możliwe jest przypisanie kilku dedykowanych zastępców do jednego procesu.
Konfiguracja formularza:
| Zastepowany | Data od | Data do | Główny zastępca |
|---|---|---|---|
| Adam Nowak | 2024-06-10 | 2024-06-20 | Jan Kowalski |
Tabela ZastepstwaPerProces:
| Proces | Zastępca |
|---|---|
| Obieg faktur | Anna Nowak |
| Obieg faktur | Piotr Zieliński |
| Zamówienia | Maria Wiśniewska |
Reguła AMODIT:
object.userLogin = Zastepowany;
object.mainDeputyLogin = GlownyZastepca;
object.startDate = DataOd;
object.endDate = DataDo;
object.exceptionsTable = "ZastepstwaPerProces";
object.processColumn = "Proces";
object.deputyColumn = "Zastepca";
object.changesApproved = true;
SetUserSubstitutions(object);
Przykład 3: Wykluczenie procesów z zastępstwa
Założenia:
- W tabeli można wskazać procesy wykluczone z zastępstwa – kolumna
Zastepcapozostaje pusta.
Konfiguracja formularza:
| Zastepowany | Data od | Data do | Główny zastępca |
|---|---|---|---|
| Adam Nowak | 2024-06-10 | 2024-06-20 | Jan Kowalski |
Tabela ZastepstwaPerProces:
| Proces | Zastępca |
|---|---|
| HR |
Reguła AMODIT:
object.userLogin = Zastepowany;
object.mainDeputyLogin = GlownyZastepca;
object.startDate = DataOd;
object.endDate = DataDo;
object.exceptionsTable = "ZastepstwaPerProces";
object.processColumn = "Proces";
object.deputyColumn = "Zastepca";
object.changesApproved = true;
SetUserSubstitutions(object);
Typy zasad w tabeli wyjątków
| Proces | Zastępca | Efekt |
|---|---|---|
| Ustawiony | Ustawiony | Główny zastępca jest nadpisywany przez dedykowanego zastępcę dla wybranego procesu |
| Ustawiony | Pusty | Proces jest wykluczony z zastępstwa |
| Pusty | Ustawiony | Zastępca pomocniczy obejmujący ten sam zakres co główny zastępca |
Najlepsze praktyki
- Upewnij się, że tabela wyjątków jest odpowiednio skonfigurowana z prawidłowymi kolumnami
ProcesiZastepca. - Zweryfikuj, czy
DataOdjest wcześniejsza niżDataDo, aby uniknąć nieprawidłowych okresów zastępstw. - Używaj flagi
changesApproved, tylko jeśli potrzebujesz definiować zastępstaw przed ich akceptacją. Najczęstszy przypadek użycia to definicja zastępstaw z flagą changesApproved = true. - Login osoby zastępowanej zawsze pobieraj z dedykowanego pola na formularzu – nie z
CurrentUser().
Podsumowanie
- Moduł „Zastępstwo per proces” pozwala na elastyczne zarządzanie zastępstwami, z możliwością wyznaczenia głównego zastępcy oraz dedykowanych zastępców dla wybranych procesów.
- Możliwe jest wykluczenie procesów z zastępstwa oraz przypisanie kilku dedykowanych zastępców do jednego procesu.
- Wybór wariantu zależy od potrzeb organizacji – proces może być prosty (tylko główny zastępca) lub rozbudowany (z dedykowanymi zastępcami i wykluczeniami).
- Wdrożenie wymaga utworzenia lub modyfikacji procesu, dodania odpowiednich elementów formularza oraz implementacji reguł obsługujących logikę przekazywania spraw.
