June 24, 201015 yr Hi guys, I've designed a punch card solution in FM10 to help employees clock in and out. I have a calculation field (Hours_work) that outputs the payable work hours based information collected in a weekly report. If no clock-in time and/or clock-out time is registered, I want the Hours_work field to output 0. How do I do that? Also, does anyone see any issues with my script steps below?. Here's the script: Round( (Hour( ClockOut_time - ClockIn_time )*60 + Minute( ClockOut_time - ClockIn_time)) / 60 - Hours_lunch; 2) + If( GetAsNumber(ClockOut_time) <= GetAsNumber(ClockIn_time); 24; 0) Round( (Hour( ClockOut_time - ClockIn_time )*60 + Minute( ClockOut_time - ClockIn_time)) / 60 - Hours_lunch; 2) + If (GetAsNumber(ClockOut_time) <= GetAsNumber(ClockIn_time); 24; 0) When the clock in time is 5:29 PM and no clock-out time is specified, the Hours_work field outputs 6.52. That's wrong. How do I fix that? Thanks a lot Edited June 24, 201015 yr by Guest
June 24, 201015 yr How about = Case ( ClockIn_time and ClockOut_time ; Round ( ( ClockOut_time - ClockIn_time ) / 3600 + 24 * ( ClockOut_time ≤ ClockIn_time ) - Hours_lunch ; 2 ) ) BTW, it's a calculation, not a script.
June 24, 201015 yr Author Thanks bud. Let me fire this beast and see what we got. You're right, it's a calculation, not script
June 24, 201015 yr Author It worked, thanks a lot. Can I just ask you to explain why you used this line: 24 * ( ClockOut_time ≤ ClockIn_time ) Thanks
June 24, 201015 yr It's the equivalent of your: If (GetAsNumber(ClockOut_time) <= GetAsNumber(ClockIn_time); 24; 0)
Create an account or sign in to comment