Zbog neobično bizarnih razloga moram provjeriti tablicu više na prema više, tj ako odnos postoji preskoči ga, a ako ne postoji unesi novi
Napravio sam kod i sve fukcionira dok su u pitanju odnosi koji nisu unešeni, ali kod onih koji su unešeni, umjesto da mi napravi Me.undo prijavljuje mi grešku u jednom dijelu koda.
Code:
Private Sub CmdReload_Click()
Dim MyDB As Object
Dim intLoop As Integer
Dim frm As Form, ctl As Control
Dim varItm As Variant, i As Integer
Dim Rs As DAO.Recordset
Dim Rss As DAO.Recordset
Dim sUser As String
Dim FieldList As Integer
Dim qry As Object
sUser = strLoginName 'ovo je globalna varijabla kojom putem forme vodim brigu o korisniku koji se je ulogirao za Audit Trail
Dim intCount As Integer
Dim qdf1 As DAO.QueryDef
Set MyDB = CurrentDb()
Set frm = Screen.ActiveForm
Set Rss = MyDB.OpenRecordset("T-tvrtke-djelatnosti", DB_OPEN_DYNASET, dbSeeChanges) 'tablica u koju inače idu novi unosi ako zapis ne postoji
For intCount = Me.CustomerList.ListCount - 1 To 0 Step -1 'tvrtka se unosi jedna po jedna iz listboxa
Set qdf1 = MyDB.QueryDefs("qryusporedba") 'query koji samo provjerava da li ti odnosi postoje u tablici T-tvrtke-djelatnosti
qdf1.Parameters("@CustomerList") = Me.CustomerList.Column(0, intCount) 'provjerava tvrtku
qdf1.Parameters("@djelatnosti") = Me.djelatnosti 'provjerava djelatnost, tj. da li su ova dva polja u odnosu.
Set Rs = qdf1.OpenRecordset
If Rs.RecordCount > 0 Then 'ukoliko postoji zapis
Me.Undo ' napravi undo
Else 'ukoliko zapis ne postoji dodaj novi u tablicu
Rss.AddNew
Rss!Idtvrtka = Me.CustomerList.Column(0, intCount)
Rss!Naziv = Me.djelatnosti
Rss!AuditTrail = frm!tbAuditTrail & "Novi zapis je dodan " & Now & " od strane " & sUser & ";" 'iz ne znam kojeg razloga za ova zadnja tri polja mi prijavljuje grešku
Rss!Datum = Now
Rss!Unio = frm!tbUnio & sUser
Rss.Update
End If
Next intCount
End Sub
Private Sub CmdReload_Click()
Dim MyDB As Object
Dim intLoop As Integer
Dim frm As Form, ctl As Control
Dim varItm As Variant, i As Integer
Dim Rs As DAO.Recordset
Dim Rss As DAO.Recordset
Dim sUser As String
Dim FieldList As Integer
Dim qry As Object
sUser = strLoginName 'ovo je globalna varijabla kojom putem forme vodim brigu o korisniku koji se je ulogirao za Audit Trail
Dim intCount As Integer
Dim qdf1 As DAO.QueryDef
Set MyDB = CurrentDb()
Set frm = Screen.ActiveForm
Set Rss = MyDB.OpenRecordset("T-tvrtke-djelatnosti", DB_OPEN_DYNASET, dbSeeChanges) 'tablica u koju inače idu novi unosi ako zapis ne postoji
For intCount = Me.CustomerList.ListCount - 1 To 0 Step -1 'tvrtka se unosi jedna po jedna iz listboxa
Set qdf1 = MyDB.QueryDefs("qryusporedba") 'query koji samo provjerava da li ti odnosi postoje u tablici T-tvrtke-djelatnosti
qdf1.Parameters("@CustomerList") = Me.CustomerList.Column(0, intCount) 'provjerava tvrtku
qdf1.Parameters("@djelatnosti") = Me.djelatnosti 'provjerava djelatnost, tj. da li su ova dva polja u odnosu.
Set Rs = qdf1.OpenRecordset
If Rs.RecordCount > 0 Then 'ukoliko postoji zapis
Me.Undo ' napravi undo
Else 'ukoliko zapis ne postoji dodaj novi u tablicu
Rss.AddNew
Rss!Idtvrtka = Me.CustomerList.Column(0, intCount)
Rss!Naziv = Me.djelatnosti
Rss!AuditTrail = frm!tbAuditTrail & "Novi zapis je dodan " & Now & " od strane " & sUser & ";" 'iz ne znam kojeg razloga za ova zadnja tri polja mi prijavljuje grešku
Rss!Datum = Now
Rss!Unio = frm!tbUnio & sUser
Rss.Update
End If
Next intCount
End Sub
Ne znam gdje sam pogriješio, ali biću kao uvijek zahvalan na pomoći ili ako znate neko drugo riješanje također.