Advertisement
jamboljack

Overtime (Jam Lebih)

Nov 24th, 2014
332
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. xxklr = Alltrim(tmp_absen.j_klr)  && Tetapan Jam Keluar (16:30)
  2.  
  3. && Hitung Kelebihan Jam    
  4. Do Case
  5. && Jika Jam Pulang >= Jam Keluar Dan Menit Keluar = 00
  6. Case Val(Left(Alltrim(This.Value),2)) >= Val(Left(Alltrim(xxklr),2)) And Val(Right(Alltrim(xxklr),2)) = 0
  7.     && Nilai Jam Pulang - Nilai Jam Keluar (16 - 17) atau (16 - 18) atau (16 - 15)
  8.     xxjam = (Val(Left(Alltrim(This.Value),2)) - Val(Left(Alltrim(xxklr),2)))
  9.  
  10.     Do Case
  11.     && Jika Nilai Jam Keluar = 0
  12.     Case Val(Left(Alltrim(xxklr),2)) = 0
  13.         xxjam = 0
  14.     && Jika Nilai Jam Pulang = 0
  15.     Case Val(Left(Alltrim(This.Value),2)) = 0
  16.         xxjam = 0
  17.     Endcase
  18.  
  19.     Do Case
  20.     && Jika Nilai Menit Keluar = 0
  21.     Case Empty(Val(Right(Alltrim(xxklr),2)))
  22.         && MEnit = Apa adanya.
  23.         xxmnt = Val(Right(Alltrim(This.Value),2)) && ambil apa adanya
  24.     && Jika Nilai Menit Pulang > Nilai Kanan Menit Keluar
  25.     Case (Val(Right(Alltrim(This.Value),2)) > Val(Right(Alltrim(xxklr),2))) && Jika Menit Pulang > Menit Jam Pulang
  26.         && Bulat Menit Pulang - Bulat Menit Keluar
  27.         xxmnt = (Abs(Val(Right(Alltrim(This.Value),2)) - Val(Right(Alltrim(xxklr),2)))) && dikurangi hasilnya di absolut
  28.     && Jika Nilai Menit Pulang <= Nilai Menit Keluar
  29.     Case (Val(Right(Alltrim(This.Value),2)) <= Val(Right(Alltrim(xxklr),2))) && Jika Jam & Menit Pulang < Jam Pulang Tetapan (Pulang Cepat)
  30.         xxmnt = Val('00')
  31.     Endcase
  32.  
  33.     mlbh = Right('00'+Alltrim(Str(xxjam)),2)+':'+Right('00'+Alltrim(Str(xxmnt)),2)
  34.  
  35. && Jika Jam Pulang >= Jam Keluar Dan Menit Keluar # 00 (30 / 40 dll)
  36. Case Val(Left(Alltrim(This.Value),2)) >= Val(Left(Alltrim(xxklr),2)) And Val(Right(Alltrim(xxklr),2)) # 0
  37.     && Nilai Jam Pulang - Nilai Jam Keluar (16 - 17) atau (16 - 18) atau (16 - 15)
  38.     xxjam = (Val(Left(Alltrim(This.Value),2)) - Val(Left(Alltrim(xxklr),2)))
  39.  
  40.     Do Case
  41.     && Jika Nilai Jam Keluar = 0
  42.     Case Val(Left(Alltrim(xxklr),2)) = 0
  43.         xxjam = 0
  44.     && Jika Nilai Jam Pulang = 0
  45.     Case Val(Left(Alltrim(This.Value),2)) = 0
  46.         xxjam = 0
  47.     CASE xxjam = 1
  48.         xxjam = 0
  49.     Endcase
  50.  
  51.     Do Case
  52.     && Jika Nilai Menit Keluar = 0
  53.     Case Empty(Val(Right(Alltrim(xxklr),2)))
  54.         && MEnit = Apa adanya.
  55.         xxmnt = Val(Right(Alltrim(This.Value),2)) && ambil apa adanya
  56.     && Jika Nilai Menit Pulang > Nilai Kanan Menit Keluar
  57.     Case (Val(Right(Alltrim(This.Value),2)) > Val(Right(Alltrim(xxklr),2))) && Jika Menit Pulang > Menit Jam Pulang
  58.         && Bulat Menit Pulang - Bulat Menit Keluar
  59.         xxmnt = (Abs(Val(Right(Alltrim(This.Value),2)) - Val(Right(Alltrim(xxklr),2)))) && dikurangi hasilnya di absolut
  60.     && Jika Nilai Menit Pulang <= Nilai Menit Keluar
  61.     Case (Val(Right(Alltrim(This.Value),2)) <= Val(Right(Alltrim(xxklr),2))) && Jika Jam & Menit Pulang < Jam Pulang Tetapan (Pulang Cepat)
  62.         xxmnt = Val('00')
  63.     Endcase
  64.    
  65.     mlbh = Right('00'+Alltrim(Str(xxjam)),2)+':'+Right('00'+Alltrim(Str(xxmnt)),2)
  66.  
  67. Otherwise
  68.     mlbh = '' && nilai jam kurang dari standar
  69. Endcase
  70.  
  71. If mlbh # '00:00'
  72.     Replace lbh_jam With mlbh
  73. Else
  74.     Replace lbh_jam With ''
  75. Endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement