// *************************************************************************** // * * // * Składnik oblicza stawkę do wynagrodzenia za nieobecności * // * usprawiedliwione płatne z obecniego i poprzedniego miesiąca. * // * W stawce uwzgledniane są tylko składniki zmienne. * // * * // * 29.04.2016 WA-PRO (Dział Rozwoju Oprogramowania) * // *************************************************************************** // Zerowanie zmiennych używanych przez algorytm Call Zerowanie zmiennych //obliczenie stawki dla korekt if [Korekta ilości dni usprawiedliwionych płatnych] <> 0 or [Korekta ilości godzin usprawiedliwinych płatnych]<>0 if nakladca PobierzOkres(najpierwszy) a1=WyróżnikOkresu (Stawka za dzień nieobecności uspr. płatnej) stawka_usp_pl_k=a1 if a1=0 a1=WyróżnikOkresu (Stawka urlopowa:Składnik zmienny) a1=a1+WyróżnikOkresu (Wynagrodzenie za nadliczbowe i nocne (razem)) a1=a1+WyróżnikOkresu (Dodatek za pracę w niedzielę i święta) //a1=a1-WyróżnikOkresu (Płaca akordowa) a1=a1-WyróżnikOkresu (Płaca prowizyjna) a1=a1+WyróżnikOkresu (Płaca zasadnicza) stawka_usp_pl_k=Round(a1/22,0.01) end // INFO(num2txt(stawka_usp_pl_k)&&num2txt(a1)) else if {Obliczanie stawki za nieobecność usp.płatną}='wariant II' //nowy PobierzOkres(pierwszy) a3=WyróżnikOkresuWyp (Korekta godzin przepracownych) PobierzOkres(najpierwszy) a1=WyróżnikOkresuWyp (Stawka urlopowa:Składnik zmienny) a1=a1+WyróżnikOkresuWyp (Wynagrodzenie za nadliczbowe i nocne (razem)) a1=a1+WyróżnikOkresuWyp (Dodatek za pracę w niedzielę i święta) a1=a1+WyróżnikOkresuWyp (Płaca akordowa) if p_system_placy$='godzinowy' or p_system_placy$='godzinowo-akordowy' //a1=a1+(WyróżnikOkresuWyp (Ilość godzin przepracowanych)-a3)*WyróżnikOkresuWyp (Stawka godzinowa) a1=a1+(WyróżnikOkresuWyp (Ilość godzin przepracowanych)+a3)*WyróżnikOkresuWyp (Stawka godzinowa) end //obliczenie stawki dla poprzedniego miesiąca a2=WyróżnikOkresuWyp (Ilość godzin przepracowanych)+a3+WyróżnikOkresuWyp (Ilość godzin nadliczbowych) //INFO(num2txt(a1)&&num2txt(a2)) if a2>0 stawka_usp_pl_k=Round(a1/a2,0.01) end else //pobranie sumy zmiennych składników wynagrodzenia z poprzedniej listy płac //zgodnie z Par.5 Rozp. MPiPS z dn. 29.05.98 Dz. U. nr 62 1996r. PobierzOkres(najpierwszy) a1=WyróżnikOkresu (Stawka za dzień nieobecności uspr. płatnej) stawka_usp_pl_k=a1 if a1=0 a1=WyróżnikOkresu (Stawka urlopowa:Składnik zmienny) a1=a1+WyróżnikOkresu (Wynagrodzenie za nadliczbowe i nocne (razem)) a1=a1+WyróżnikOkresu (Dodatek za pracę w niedzielę i święta) a1=a1+WyróżnikOkresu (Płaca akordowa) if p_system_placy$='godzinowy' or p_system_placy$='godzinowo-akordowy' //a1=a1+(WyróżnikOkresu (Ilość godzin przepracowanych)-[Korekta godzin przepracowanych])*WyróżnikOkresu (Stawka godzinowa) a1=a1+(WyróżnikOkresu (Ilość godzin przepracowanych)+[Korekta godzin przepracowanych])*WyróżnikOkresu (Stawka godzinowa) end //obliczenie stawki dla poprzedniego miesiąca if najpierwszy0 stawka_usp_pl_k=Round(a1/a2,0.01) end else a2=WyróżnikOkresu (Ilość godzin przepracowanych)+[Korekta godzin przepracowanych]+WyróżnikOkresu (Ilość godzin nadliczbowych) if a2>0 stawka_usp_pl_k=Round(a1/a2,0.01) end end end end end end if [Ilość dni nieobecności usprawiedliwionych płatnych]-[Korekta ilości dni usprawiedliwionych płatnych]<>0 or [Ilość godzin usprawiedliwionych płatnych]<>0 if nakladca a1=WyróżnikListy (Stawka urlopowa:Składnik zmienny) a1=a1+WyróżnikListy (Wynagrodzenie za nadliczbowe i nocne (razem)) a1=a1+WyróżnikListy (Dodatek za pracę w niedzielę i święta) //a1=a1-WyróżnikListy (Płaca akordowa) a1=a1-WyróżnikListy (Płaca prowizyjna) a1=a1+WyróżnikListy (Płaca zasadnicza) []=a1/22 else if {Obliczanie stawki za nieobecność usp.płatną}='wariant II' //nowy PobierzOkres(pierwszy) a1=WyróżnikOkresuWyp (Stawka urlopowa:Składnik zmienny) a1=a1+WyróżnikOkresuWyp (Wynagrodzenie za nadliczbowe i nocne (razem)) a1=a1+WyróżnikOkresuWyp (Dodatek za pracę w niedzielę i święta) a1=a1+WyróżnikOkresuWyp (Płaca akordowa) if system_placy$='godzinowy' or system_placy$='godzinowo-akordowy' a1=a1+WyróżnikOkresuWyp (Płaca godzinowa) end //obliczenie stawki dla aktualnego miesiąca a2=WyróżnikOkresuWyp (Ilość godzin przepracowanych)+WyróżnikOkresuWyp (Ilość godzin nadliczbowych) if a2>0 []=a1/a2 else if system_placy$='miesięczny' or system_placy$='prowizyjny' []=0 else []=WyróżnikOkresuWyp (Stawka godzinowa) end end //koniec nowy else //pobranie sumy zmiennych składników wynagrodzenia z aktualnej listy płac //zgodnie z Par.5 Rozp. MPiPS z dn. 29.05.98 Dz. U. nr 62 1996r. a1=WyróżnikListy (Stawka urlopowa:Składnik zmienny) a1=a1+WyróżnikListy (Wynagrodzenie za nadliczbowe i nocne (razem)) a1=a1+WyróżnikListy (Dodatek za pracę w niedzielę i święta) a1=a1+WyróżnikListy (Płaca akordowa) if system_placy$='godzinowy' or system_placy$='godzinowo-akordowy' a1=a1+[Płaca godzinowa] end //obliczenie stawki dla aktualnego miesiąca if pierwszy0 []=a1/a2 else []=0 end else a2=[Ilość godzin przepracowanych]+[Ilość godzin nadliczbowych] if a2>0 []=a1/a2 else if system_placy$='miesięczny' or system_placy$='prowizyjny' []=0 else []=[Stawka godzinowa] end end end end end else []=0 end // *************************************************************************** // * * // * P O D P R O C E D U R Y * // * * // *************************************************************************** Zerowanie zmiennych: stawka_usp_pl_k=0 a1=0 a2=0 a3=0 //koniec Zerowanie zmiennych