2013-06-25 47 views
0

我正在計算兩個字段之間的小時總數:TimeInTimeOut,結果將顯示在我的計算顯示字段hoursWorked上。問題是,當我在第一個字段輸入15:00,並在第二個字段輸入01:00時,它不顯示任何內容。我試着把一個@If執行兩個計算,如果TimeOut小於TimeIn它將使用第一個動作,但仍然沒有。這裏是我的代碼:Lotus Notes:包括第二天的計算時間

thours:[email protected](@IsNull(TimeIn) | @IsNull(TimeOut)=""; @Return(""); ""); 
seconds := @If(TimeOut < Timein;(24 + TimeIn) - TimeOut; TimeIn - TimeOut); 
hours := @Integer(seconds/3600); 
minutes := @Integer(@Modulo(seconds;3600)/60); 
output := @Right("00" + @Text(hours); 2) + ":" + @Right("00" + @Text(minutes); 2); 
@TextToTime(output) 

回答

2

計算秒這樣:

seconds := TimeOut - TimeIn; 
seconds := @If(seconds < 0; seconds + 24*3600; seconds); 

每當TimeOut越小則TimeIn假定的時間框架從一開始就進入到第二天。

例子:

TimeIn TimeOut hoursWorked 
15:00 01:00  10:00 
15:00 14:45  23:45 
15:00 17:00  02:00 
+0

哇克努特!你再次幫助我。非常感謝你做的這些。 – drayl