Proces naliczania wynagrodzeń dla wielu pracowników może zbyt mocno obciążyć komputer osoby naliczającej i przez to uniemożliwić korzystanie (w tym samym czasie) z innych funkcji aplikacji. W systemie Softlab HR by Asseco możliwe jest skrócenie czasu realizacji tych naliczeń oraz przeprowadzenie ich poza godzinami pracy.
Operatorzy z dużych firm, przeliczający na koniec miesiąca urlopy, zwolnienia lekarskie oraz wynagrodzenia wiedzą, jak bardzo uruchomienie takiego naliczenia utrudnia normalną pracę w aplikacji, ze względu na obciążenie stacji roboczej. Jeśli przeliczenie trwa długo, to operator przez dłuższy czas może mieć zablokowany dostęp do aplikacji.
Ograniczenia na dziś – co chcemy usprawnić
Dotychczas, przy przeliczaniu wynagrodzeń występowały opisane powyżej utrudnienia, ponadto nie można było wybrać pory dnia, kiedy te naliczenia miały zostać uruchomione. Jeśli operator chciał przeliczyć listy w czasie kiedy serwer nie jest obciążony, czyli po godzinach pracy, musiał przed wyjściem uruchomić proces naliczania, po czym blokował komputer i zostawiał go (w trybie pracy) na noc.
Jak to usprawniliśmy
W aplikacji Softlab ERP by Asseco dodana została możliwość zlecania czasochłonnych naliczeń serwerowi SQL, z wyborem godziny rozpoczęcia. Dodatkowo, naliczenia można rozbić na kilka, jednocześnie wykonywanych procesów. W praktyce oznacza to, że jeśli rozłożymy naliczenia na 16 procesów, to dane mogą być przeliczane dla 16 osób jednocześnie, co istotnie skraca sumaryczny czas naliczenia. Od strony technicznej wygląda to tak, że za naliczenia odpowiedzialne są zdefiniowane na serwerze SQL zadania (tzw. „joby”). Każde z tych zadań uruchamia się cyklicznie w zadanych odstępach czasu i szuka czekających na przeliczenie urlopów, zasiłków czy list płac. Jeśli znajdzie dane do naliczeń, wówczas naliczenia te rozpoczynają się.
Aplikacja po odpowiedniej parametryzacji daje możliwość zdefiniowania liczby zadań na serwerze SQL i częstotliwości ich uruchamiania. Parametryzacji tej może dokonać konsultant firmy Asseco BS.
Po utworzeniu zadań operator sam może zdecydować, czy naliczenie będzie uruchamiał na swojej stacji roboczej, czy utworzy paczkę zadań do naliczeń równoległych (MultiTask) – z podaną godziną rozpoczęcia. Do tworzenia takich paczek służą procedury w systemie (na przykładzie naliczania list):
Rys. 1. Parametry procedury naliczaj listę podstawową za miesiąc w tle
Status naliczeń można śledzić w słowniku Grupy zleconych zadań:
Rys. 2. Słownik Grupy zleconych zadań
Jakie biznesowe przypadki użycia może obsłużyć nasze rozwiązanie
Naliczanie urlopów, zwolnień lekarskich i list płac w firmach zatrudniających dużo pracowników.
Jakie to daje korzyści
- Przyśpieszenie naliczeń poprzez równoległe przeliczanie danych dla wielu pracowników.
- Odciążenie stacji roboczej w czasie naliczania urlopów, zwolnień lekarskich i list płac.
- Możliwość wyboru pory dnia (nocy), podczas której odbędzie się naliczenie.
Autor wpisu: Artur Ciok

