Logowanie
Nadaj nowe hasło
Jeśli jesteś już klientem to wprowadź swój adres e-mail i potwierdź hasłem. Logowanie umożliwia zakup nowych programów po cenach promocyjnych, rozszerzenie posiadanego oprogramowania, zamówienie abonamentu na aktualizacje oraz konsultacje serwisowe.
Nie masz konta?Zarejestruj się
|
W bazie danych dostępne są następujące funkcje, ułatwiające pobranie danych przy budowaniu własnych raportów SQL. Przykładowe wykorzystanie funkcji można zobaczyć, pobierając gotowe raporty SQL z internetu - patrz Pobieranie raportów SQL.
Funkcje pobierające dane z kart pracy:
fn_KP_NDP(X_IHistorii, Dzien, Mies, Rok) - rodzaj nominalnego dnia pracy, zwraca: 3-dzień pracy, 2-sobota, 1-niedziela, 23-sobota z dnia pracy, 13-niedziela z dnia pracy, 32-dzień pracy z soboty, 31-dzień pracy z niedzieli
fn_KP_SumNDP(NumNDP, X_IHistorii, Mies, Rok) - suma nominalnych dni danego rodzaju, zadajemy NumNDP: 30-wszystkie dni pracy, 20-wszystkie soboty, 10-wszystkie niedziele, 0-wszystkie dni (lub szczególowo wartości, jakie zwraca fn_KP_NDP)
fn_KP_SumKal(X_IKalendarza,Mies,Rok,What) - suma nominalnych dni bezpośrednio z kalendarza, w zależności od What zwraca: 0-nominalne godziny pacy, 1-nominalne dni pracy, 2-ilość sobót, 3-ilość niedziel i świąt
fn_KP_DP(X_IHistorii, Dzien, Mies, Rok) - rodzaj (numer) dnia pracy, zwraca:
0 - niewypełniony
1 - wolny (sobota lub niedziela)
2 - Dp (dni pracy)
3 - De (delegacje)
4 - Ch (chorobowe)
5 - Cs (chorobowe 100%)
6 - Cw (chorobowe wypadkowe)
7 - Rh (rehabilitacja i reh.100%)
8 - Rw (rehabilitacja wyp.)
9 - Op (opieka n.dzieckiem)
10 - On (opieka inne)
11 - Ma (macierzyński i ojcowski)
12 - Uw (urlop wypoczynkowy)
13 - Uo (urlop okolicznościowy)
14 - Un (urlop n.dzieckiem)
15 - Ud (urlop dodatkowy)
16 - Np (nieobecność płatna)
17 - Wu (urlop wychowawczy)
18 - Bu (urlop bezpłatny)
19 - Nu (nieobecność uspr.)
20 - Nn (nieobecność nieuspr.)
21 - Sw (służba wojskowa)
23 - Cp (chorobowe szpitalne)
24 - Uc (urlop wypoczynkowy limitowany)
25 - Cn (chorobowe niepłatne inne i z tyt.nienabycia prawa do zas.)
26 - Us (urlop szkoleniowy)
27 - Ur (urlop rehabilitacyjny)
99 - dni nieobjęte umową
fn_KP_SumDP(NumDP, NumNDP, X_IHistorii, Mies, Rok) - suma dni pracy danego rodzaju, zadajemy:
NumDP - numer rodzaju dnia, zgodnie z wartościami, jakie zwraca fn_KP_DP, dodatkowo dla -1 zwróci sumę nominałów (jak fn_KP_SumNDP) oraz dodatkowo szczegółowe rodzaje dni z karty zasiłkowej:
100 - wynagr.za czas choroby 80%
101 - wynagr.za czas choroby 100%
102 - wynagr.za czas choroby 100% wypadkowe
103 - zasiłek chorobowy 80%
104 - zasiłek chorobowy 100%
105 - zasiłek chorobowy 100% wypadkowe
106 - świadczenie rehabilitacyjne
107 - świadczenie rehabilitacyjne wypadkowe
108 - zasiłek opiekuńczy nad dzieckiem 80%
109 - zasiłek opiekuńczy inne 80%
110 - zasiłek macierzyński 100%
111 - zasiłek chorobowy 70%
112 - niepłatny
200 - praca zdalna (przy wypełnionej karcie pracy)
NumNDP: 30-wszystkie dni pracy, 20-wszystkie soboty, 10-wszystkie niedziele, 0-wszystkie dni (lub szczególowo wartości, jakie zwraca fn_KP_NDP)
fn_KP_SumDPx(NumDP, NumNDP, X_IHistorii, Od, Do) - funkcja analogiczna do fn_KP_SumDP, tylko w parametrach możmy podać dowolny okres (daty Od Do), nie koniecznie obejmujący jeden miesiąc
fn_KP_SumDGP(NumDP, NumNDP, X_IHistorii, Mies, Rok) - suma dni pracy w godzinach, parametry analogiczne jak w funkcji fn_KP_SumDP
fn_KP_NGP(X_IHistorii, Dzien, Mies, Rok) - ilość nominalnych godzin pracy w danym dniu
fn_KP_SumNGP(X_IHistorii, Mies, Rok) - suma nominalnych godzin pracy w danym miesiącu
fn_KP_GP(NumGodz, X_IHistorii, Dzien, Mies, Rok) - ilość godzin pracy w danym dniu, zadajemy Num_godz jako numer godzin w kartcie pracy, czyli: 2-Godz.pracy, 3-Godz.nadl.50%, 4-Godz.nadl.100%, 5...-kolejne z definicji składników karty pracy, 101-Godz.pracy.fakt., 102-Godz.50%fakt, 103-Godz.100%fakt
fn_KP_SumGP(NumGodz, Dod, X_IHistorii, Mies, Rok) - suma godzin pracy w danym miesiącu, zadajemy:
Num_godz - numer godzin w kartcie pracy, czyli: 2-Godz.pracy, 3-Godz.nadl.50%, 4-Godz.nadl.100%, 5...-kolejne z definicji składników karty pracy, 101-Godz.pracy.fakt., 102-Godz.50%fakt, 103-Godz.100%fakt
Dod - 0-sumowane są godziny dodatnie i ujemne, 1-sumowane tylko dodatnie, 2-sumowane tylko ujemne
fn_KP_NarGP(NumGodz,X_IHistorii,Mies,Rok) - narastająco suma godzin pracy do danego miesiąca, zadajemy Num_godz analogicznie jak przy funkcji fn_KP_SumGP
fn_KP_NarGZ(NumGodz,X_IHistorii,Mies,Rok) - narastająco suma godzin zapłaconych do danego miesiąca, zadajemy Num_godz jako: 102-Godz.50%fakt, 103-Godz.100%fakt (patrz Miesięczna karta pracy - Godziny do odpracowania)
fn_KP_NarGB(NumGodz,X_IHistorii, Mies, Rok) - narastająco suma godzin zbilansowanych do danego miesiąca, zadajemy Num_godz jako: 102-Godz.50%fakt, 103-Godz.100%fakt
Funkcje pobierające dane z ewidencji różnych nieobecności (kart urlopowych, kart zasiłkowych, nieobecności):
fn_IsNieobExt(Szczeg, X_IHistorii, Dzien, Mies, Rok) - rodzaj (numer) dnia pracy, zwraca:
dla Szczeg=0:
4 - Ch (chorobowe)
5 - Cs (chorobowe 100%)
6 - Cw (chorobowe wypadkowe)
7 - Rh (rehabilitacja i reh.100%)
8 - Rw (rehabilitacja wyp.)
9 - Op (opieka n.dzieckiem)
10 - On (opieka inne)
11 - Ma (macierzyński i ojcowski)
12 - Uw (urlop wypoczynkowy)
13 - Uo (urlop okolicznościowy)
14 - Un (urlop n.dzieckiem)
15 - Ud (urlop dodatkowy)
16 - Np (nieobecność płatna)
17 - Wu (urlop wychowawczy)
18 - Bu (urlop bezpłatny)
19 - Nu (nieobecność uspr.)
20 - Nn (nieobecność nieuspr.)
21 - Sw (służba wojskowa)
23 - Cp (chorobowe szpitalne)
24 - Uc (urlop wypoczynkowy limitowany)
25 - Cn (chorobowe niepłatne inne i z tyt.nienabycia prawa do zas.)
26 - Us (urlop szkoleniowy)
27 - Ur (urlop rehabilitacyjny)
dla Szczeg=1:
100 - wynagr.za czas choroby 80%
101 - wynagr.za czas choroby 100%
102 - wynagr.za czas choroby 100% wypadkowe
103 - zasiłek chorobowy 80%
104 - zasiłek chorobowy 100%
105 - zasiłek chorobowy 100% wypadkowe
106 - świadczenie rehabilitacyjne
107 - świadczenie rehabilitacyjne wypadkowe
108 - zasiłek opiekuńczy nad dzieckiem 80%
109 - zasiłek opiekuńczy inne 80%
110 - zasiłek macierzyński 100%
111 - zasiłek chorobowy 70%
112 - niepłatny
115 - zasiłek macierzyński 60%
116 - zasiłek macierzyński 80%
116 - zasiłek dod.macierzyński 80%
17 - urlop wychowawczy
18 - urlop bezpłatny
19 - nieobecność uspr.
20 - nieobecność nieuspr.
21 - służba wojskowa
200 - urlop wypoczynkowy
201 - urlop okolicznościowy
202 - urlop opieka nad dzieckiem
203 - urlop dodatkowy
204 - nieobecność płatna
205 - urlop wyp.na żądanie
206 - ekwiwalent za url.wypocz.
207 - urlop szkoleniowy
208 - ekwiwlaent za url.dod.
209 - nioeobecność płatna (uw)
210 - urlop rehabilitacyjny
211 - nieobecność płatna (ekw)
Funkcje pobierające dane z umów o pracę:
fn_ANG_Zatr(Zatr, Etat, X_IHistorii, Dzien, Mies, Rok) - zwraca informację o zatrudnieniu pracownika w danym dni w ilości (Etat=0) lub w etacie pracownika (Etat=1), w zależności od Zatr: 0 - w całym okresie zatrudnienia, 1 - tylko w pierwszym dniu pracy, -1 - tylko w ostatnim dniu pracy
fn_ANG_SrZatr(Zatr, Etat, X_IHistorii, Mies, Rok) - średnie zatrudnieniu w zadanym miesiącu (Zatr=0) albo ilość zatrudnionych pracowników w miesiącu (Zatr=1) lub zwolnionych (Zatr=-1), w zależności od Etat: 0 - w ilościach pracowników, 1 - w etatach
fn_ANG_Skl(War,Nazwa, X_IUmowy) - wartości zadana (War=0) lub wyliczona (War=1) składnika wynagrodzeń (Nazwa) z umowy o pracę o identyfikatorze (X_IUmowy)
Funkcje pobierające dane z list płac:
fn_LP_DSkl(Nazwa, X_IHistorii,Od,Do) - suma wybranego składnika wynagrodzeń za podany okres, obejmujący daty wypłaty list płac, zadajemy: Nazwa - nazwa składnika wynagrodzeń, Od, Do - listy wypłacone w okresie
fn_LP_WSkl(Nazwa, X_IHistorii,Od,Do) - suma składnika Nazwa obejmująca listy płac z podanego Od, Do okresu wynagrodzeń
fn_LP_KSkl(Nazwa, X_IHistorii,Od,Do) - suma składnika wynagrodzeń za podane okresy z kartoteki listy płac
fn_LP_DSys(Nazwa, X_IHistorii,Od,Do) - suma wybranego pola systemowego za podany okres, obejmujący daty wypłaty list płac, zadajemy: Nazwa - nazwa składnika wynagrodzeń, Od, Do - listy wypłacone w okresie
fn_LP_WSys(Nazwa, X_IHistorii,Od,Do) - suma pola Nazwa obejmująca listy płac z podanego Od, Do okresu wynagrodzeń
fn_LP_KSys(Nazwa, X_IHistorii,Od,Do) - suma pola systemowego za podane okresy z kartoteki listy płac
fn_LP_Skl(War,Okres,Nazwa, X_IHistorii,Od,Do) - suma wartości zadanej (War=0) lub wartości wyliczonej (War=1) składnika wynagrodzeń (Nazwa) za podany okres (Od, Do), obejmujący w zależności od paramatru Okres: 0-datę wypłaty listy, 1-okres wynagrodzeń, 2-miesiąc kartoteki
Funkcje dodatkowe:
fn_BDate(Mc,Rok) - zwraca datę pierwszego dnia miesiąca
fn_EDate(Mc,Rok) - zwraca datę ostatniego dnia miesiąca
fn_X_IDzial(X_IHistorii,Data) - zwraca identyfikator działu pracownika zapamiętany na dany dzień (Data), jeśli Data=0 to zwróci aktualny identyfikator działu
fn_X_IOddzial(X_IHistorii,Data) - przy rozszerzonej strukturze działów zwraca identyfikator oddziału pracownika zapamiętany na dany dzień
fn_X_IZespol(X_IHistorii,Data) - przy rozszerzonej strukturze działów zwraca identyfikator zespołu pracownika zapamiętany na dany dzień
fn_Przelozony(X_IHistorii,poziom,mod) - zwracja dane przełożonego w zależności od poziomu:
0-dane pracownika
1-bezpośredni przełożony (a jak brak to dane kierownik działu)
2-przełożony przełożonego (a jak brak to dane kierownika działu przełożonego)
0 - e-mail z aktualnego zatrudnienia, a jak brak to z adresu do korespondencji
1 - nazwisko i imię
2 - hierarchia: pracownik/przełożony/kierownik działu
3 - hierarchia2: pracownika/przełożonego/kierownika działu
4 - nazwisko i imię (e-mail)
5 - nazwisko i imię (hierarchia)
6 - hierarchia2 (nazwisko i imię)
7 - hierarchia2 (e-mail)
Dodatkowe funkcje w bazie BIN:
<BIN>.fn_Kod(Tabela,Pole,Wartość) - tekstowy opis zawartości pola o nazwiePole z tabeli o nazwie Tabela, które w bazie ma wartość wyliczeniową Wartość (smallint)
<BIN>.fn_Podsw(Podsw, X_I, X_P, UserIde, FormName) - funkcja przydatna przy własnym raporcie SQL do wstawienia opcji na podświetlone pozycje w tabeli, np. pracowników:
select p.Nazwisko,p.Imie
FROM PRACOWNK p
WHERE <BIN>.fn_Podsw(p.X_I,p.X_P,<USERIDE>,'PracownikT')=1
Przykładowe zapytanie, wykorzystujące funkcję (mającą w parametrze X_IHistorii) i zwracające jej wartość dla listy pracowników:
SELECT p.Nazwisko, p.Imie, d.Nazwa as 'Dział', h.AzNazwa,
dbo.fn_LP_DSkl('Płaca zasadnicza', h.X_I, '2007-01-01', '2007-12-31') as 'Płaca zasadnicza'
dbo.fn_KP_SumDPx(2,30,h.X_I,'2007-01-01','2007-12-31') as 'Dni przepracowane'
FROM HISTORIA h
JOIN PRACOWNK p ON p.X_I = h.X_IPracownik
JOIN DZIAL d ON d.X_I = h.X_IDzial
WHERE (h.AktZatrudnienie = 1)
Funkcje można wykorzystać przy budowaniu własnych raportów - patrz Moduł raportów SQL.
W bazie danych dostępne są również następujące procedury:
Nieobecnosci X_IHistorii procedura zwraca tabelę zawierającą wszystkie nieobecności pracownika o podanym numerze aktualnego zatrudnienia (X_IHistorii), dla numeru 0 tabela zawierać będzie nieobecności wszystkich pracowników, tabela zawiera następujące kolumny: X_IHistorii, Od, Do, Rodzaj