djole001 23.10.2018 17:51
Predmet:Re: Baza za kontrolu pristupa!

Tako je...I je ulaz (IN), a O je izlaz (Out)

zxz 23.10.2018 18:45
Predmet:Re: Baza za kontrolu pristupa!

Ima sad samo jos jedno pitanje a to je koliko maksimalno moze trajati radno vrijeme

djole001 23.10.2018 18:50
Predmet:Re: Baza za kontrolu pristupa!

Ne duze od 10 sati...obicno 8 do 8,5.

zxz 24.10.2018 21:35
Predmet:Re: Baza za kontrolu pristupa!

Nisam danas stigao ali se nadam da cu sutra nesto napraviti.

Avko 24.10.2018 22:48
Predmet:Re: Baza za kontrolu pristupa!

mene zanima kako ces preneti ocitane podatke u akses

Gjoreski 25.10.2018 11:56
Predmet:Re: Baza za kontrolu pristupa!

On vec ima podatke u access

Avko 25.10.2018 12:46
Predmet:Re: Baza za kontrolu pristupa!

Citiraj Gjoreski:
On vec ima podatke u access

znaci vec je spojen citac sa accessom?

djole001 25.10.2018 17:24
Predmet:Re: Baza za kontrolu pristupa!

Sve je to povezano i radi. Postoji program kompanije ZKteco Time attendance koji kada ga instalirate on u instalacionom direktorijumu formira access bazu sa tabelama gde se i nalaze dve one dve tabele...USERID i CHECKINOUT.

zxz 28.10.2018 18:53
Predmet:Re: Baza za kontrolu pristupa!

Evo procedura pa mozemo testirati i raspravljati.
Jeste da sam malo zakasnio ali nisam stigao prije.
PreuzmiIzvorni kôd (Visual Basic):
  1. Function Pokreni()
  2. KUpis 1
  3. End Function
  4. Function KUpis(UserId As Integer)
  5. Dim SQL(2) As String
  6. Dim Rs(2) As DAO.Recordset
  7. Dim Db As DAO.Database
  8. Dim Dat(3) As Date
  9. Dim Id(2) As Integer
  10. Dim DatStr(3) As String
  11.  
  12. Call Tabela
  13. Set Db = CurrentDb
  14. SQL(0) = "SELECT * FROM UlazIzlaz"
  15. Set Rs(0) = Db.OpenRecordset(SQL(0))
  16. SQL(1) = "SELECT UserId, CheckTime FROM CHECKINOUT WHERE UserId=" & UserId & " AND CheckType='i' ORDER BY CheckTime"
  17. Set Rs(1) = Db.OpenRecordset(SQL(1))
  18.  
  19. Do While Not Rs(1).EOF
  20. Dat(1) = Rs(1)!CheckTime
  21. Id(1) = Rs(1)!UserId
  22. If Err.Number = 3021 Then
  23. Id(2) = 0
  24. Err.Clear
  25. On Error GoTo 0
  26. End If
  27.  
  28. If Dat(0) < Dat(1) Then
  29. Dat(0) = Dat(1) + TimeValue("00:05:00")
  30. Dat(3) = Dat(1) + 1
  31. DatStr(1) = "#" & Format(Dat(1), "mm-dd-yy HH:mm") & "#"
  32. DatStr(3) = "#" & Format(Dat(3), "mm-dd-yy HH:mm") & "#"
  33. SQL(2) = "SELECT UserId, CheckTime FROM CHECKINOUT WHERE  CheckType='o' and (CheckTime Between " & DatStr(1) & " AND " & DatStr(3) & ") ORDER BY CheckTime"
  34. Set Rs(2) = Db.OpenRecordset(SQL(2))
  35. Rs(0).AddNew
  36. If Rs(2).RecordCount > 0 Then
  37. Dat(2) = Rs(2)!CheckTime
  38. Rs(0)!Izlaz = Dat(2)
  39. Rs(2).Close
  40. End If
  41. Rs(0)!UserId = Id(1)
  42. Rs(0)!Ulaz = Dat(1)
  43. Rs(0).Update
  44. End If
  45. Rs(1).MoveNext
  46. Loop
  47.  
  48. Rs(1).Close
  49. Rs(0).Close
  50. Set Db = Nothing
  51. End Function
  52. Function Tabela()
  53. Dim Db As DAO.Database
  54. Dim tdf As DAO.TableDef
  55.  
  56. Set Db = CurrentDb()
  57.  
  58. For Each tdf In Db.TableDefs
  59. If tdf.Name = "UlazIzlaz" Then
  60. DoCmd.DeleteObject acTable, tdf.Name
  61. Exit For
  62. End If
  63. Next tdf
  64.         Db.Execute "CREATE TABLE UlazIzlaz " _
  65.             & "(id counter, UserID Number,ulaz DateTime,izlaz DateTime);"
  66. End Function

Avko 29.10.2018 11:27
Predmet:Re: Baza za kontrolu pristupa!

ja sada neznam gdje to staviti. Mogao si staviti u onaj Đoletov primjer pa zakaciti.