Skip to main content

AccessTr.neT


İzin Hesaplaması Yapan FOnksiyon

İzin Hesaplaması Yapan FOnksiyon

#1
Kod:
Function izin$(giris, dtarih)
b = Month(giris) ' giriş tarihinin ayı
c = Month(Now) ' şimdiki zamanın ayı
m = Month(dtarih) ' doğum tarihinin ayı
simdi = Year(Now) ' bulunduğumuz zamana ait yıl değeri
izinyas = Year(giris) + 1 ' izin kullanma yılı


' Kıdem Yılı Hesaplama
a = DateDiff("yyyy", giris, Now) ' giris tarihi ile şimdiki zaman farkı
If b > c Then
kidem = a - 1 'doğum ayı şu anki aydan küçük ise 1 azalt
Else
kidem = a
End If

'İşçinin işe girdiğindeki yaşı
k = DateDiff("yyyy", dtarih, giris) ' giris tairihi ile doğum tarihindeki fark
If b < m Then
yas = k - 1
Else
yas = k
End If

' işe başlamada 49 yaşında olan kişi izin hakettiğinde 50 yaşında olacağından 49 çıkartma yapılarak hesaplandı
limit = 49 - yas ' 50 yılı tamamlama için limit heseplama

'50 yaşından önce giren kidem yılı ilk 5 yılında 50 yaşına girenler için fark hesaplama
If limit > 0 And limit < 4 Then
fark = 5 - limit
Else
fark = 0
End If

If kidem < 6 Then
If yas > 49 Then
sonuc = kidem * 20
Else
sonuc = kidem * 14 + fark * 6
End If

ElseIf kidem > 5 And kidem < 15 Then
If yas > 49 Then
sonuc = kidem * 20
Else
sonuc = (kidem * 14) + fark * 6 + (kidem - 5) * 6
End If
Else
If yas > 49 Then
sonuc = kidem * 20 + (kidem - 14) * 6
Else
sonuc = (kidem * 14) + fark * 6 + (kidem - 5) * 6 + (kidem - 14) * 6
End If
End If

izin$ = sonuc

End Function

Yukarıdaki fonkisyon işçinin işe giriş tarihi ve doğum tarihini alarak izin hakkını hesaplar. Benim gözden kaçırdığım bir olay olabilir. Yararlı olması dileğiyle... Kolay gelsin.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
İzin Hesaplaması Yapan FOnksiyon - Yazar: mkucukk - 26/05/2012, 13:29
Cvp: İzin Hesaplaması Yapan FOnksiyon - Yazar: DUAYEN - 26/05/2012, 22:29
Cvp: İzin Hesaplaması Yapan FOnksiyon - Yazar: afs11 - 30/10/2014, 23:16
Task