Function Pokreni() KUpis 1 End Function Function KUpis(UserId As Integer) Dim SQL(2) As String Dim Rs(2) As DAO.Recordset Dim Db As DAO.Database Dim Dat(3) As Date Dim Id(2) As Integer Dim DatStr(3) As String Dim Upisani As String Dim Zagrada As String Call Tabela Set Db = CurrentDb SQL(0) = "SELECT * FROM UlazIzlaz" Set Rs(0) = Db.OpenRecordset(SQL(0)) SQL(1) = "SELECT UserId, CheckTime FROM CHECKINOUT WHERE UserId=" & UserId & " AND CheckType='i' ORDER BY CheckTime" Set Rs(1) = Db.OpenRecordset(SQL(1)) Do While Not Rs(1).EOF Dat(1) = Rs(1)!CheckTime Id(1) = Rs(1)!UserId If Err.Number = 3021 Then Id(2) = 0 Err.Clear On Error GoTo 0 End If If Dat(0) < Dat(1) Then Dat(0) = Dat(1) + TimeValue("00:05:00") Dat(3) = Dat(1) + 1 DatStr(1) = "#" & Format(Dat(1), "mm-dd-yy HH:mm") & "#" DatStr(3) = "#" & Format(Dat(3), "mm-dd-yy HH:mm") & "#" SQL(2) = "SELECT UserId, CheckTime FROM CHECKINOUT WHERE CheckType='o' " & Upisani & Zagrada & " AND (CheckTime Between " & DatStr(1) & " AND " & DatStr(3) & ") ORDER BY CheckTime" Set Rs(2) = Db.OpenRecordset(SQL(2)) Forms!F.T = SQL(2) Rs(0).AddNew If Rs(2).RecordCount > 0 Then Dat(2) = Rs(2)!CheckTime DatStr(0) = "#" & Format(Dat(2), "mm-dd-yy HH:mm:ss") & "#" If Upisani <> "" Then Upisani = Upisani & "," & DatStr(0) Else Upisani = "and CheckTime Not in (" & DatStr(0) Zagrada = ")" End If Rs(0)!Izlaz = Dat(2) Rs(2).Close End If Rs(0)!UserId = Id(1) Rs(0)!Ulaz = Dat(1) Rs(0).Update End If Rs(1).MoveNext Loop Rs(1).Close Rs(0).Close Set Db = Nothing End Function Function Tabela() Dim Db As DAO.Database Dim tdf As DAO.TableDef Set Db = CurrentDb() For Each tdf In Db.TableDefs If tdf.Name = "UlazIzlaz" Then DoCmd.DeleteObject acTable, tdf.Name Exit For End If Next tdf Db.Execute "CREATE TABLE UlazIzlaz " _ & "(id counter, UserID Number,ulaz DateTime,izlaz DateTime);" End Function