access 2007 błąd procedury

access 2007 błąd procedury
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam proszę o pomoc. Cały czas otrzymuję informację "Pracownik o podanym identyfikatorze pracuje już przy innym zleceniu." Nie jest to prawda pole CzasZakonczenia_op nie jest puste. Proszę o pomoc.

Set rst1 = db.OpenRecordset("tbl_RZ_Zlecenia", dbOpenDynaset)
Set rst2 = db.OpenRecordset("tbl_RZ_OperacjeZlecen", dbOpenDynaset)

If IsNull(Me![Kod]) Or (Me![Kod] = " ") Then GoTo Exit_Polecenie5_Click

rst1.FindFirst ("[IDZlecenia] = " & Forms![frmZleceniaLista]![frmZleceniaLista podformularz]![IDZlecenia])
rst2.FindFirst ("CStr([IDPracownika_p]) = '" & Me![Kod] & " ' And CStr(IsNull([CzasZakonczenia_op]))")

If rst2.NoMatch Then
If IsNull(rst1![DataPrzyjZam]) Or (rst1![Przyjmujacy] = 0) Then
rst1.Edit
rst1![DataPrzyjZam] = Now()
rst1![Przyjmujacy] = Me![Kod]
rst1![Status] = 1
rst2.AddNew
rst2![IDZlecenia] = rst1![IDZlecenia]
rst2![CzasRozpoczecia_op] = Now()
rst2![IDPracownika_p] = Me![Kod]
rst1.Update
rst2.Update
DoCmd.Close
Forms!frmZleceniaLista![frmZleceniaLista podformularz].Requery

Else
rst2.AddNew
rst2![IDZlecenia] = rst1![IDZlecenia]
rst2![CzasRozpoczecia_op] = Now()
rst2![IDPracownika_p] = Me![Kod]
rst2.Update
rst1.Edit
rst1![Status] = 1
rst1.Update
DoCmd.Close
Forms!frmZleceniaLista![frmZleceniaLista podformularz].Requery

End If
Else
MsgBox "Pracownik o podanym identyfikatorze pracuje już przy innym zleceniu.", vbInformation
End If

AK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 9
0

Użyj znacznika

Kopiuj
  • Rejestracja: dni
  • Ostatnio: dni
0

chyba problem jest w kodzie

Kopiuj
 If rst2.NoMatch Then 

gdy pomijam tą linie zaczyn działać, ale nie mam pojęcia co jest złego w składni?

Marcin.Miga
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2794
0

Problem jest linię wcześniej.

  • Rejestracja: dni
  • Ostatnio: dni
0

ale co jest nie tak w składni?

Kopiuj
rst2.FindFirst ("CStr([IDPracownika_p]) = '" & Me![Kod] & " ' And CStr( IsNull ([CzasZakonczenia_op]))")
Marcin.Miga
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2794
0

Powinna być:

Kopiuj
rst2.FindFirst ("CStr([IDPracownika_p]) = '" & Me![Kod] & " ' And [CzasZakonczenia_op] IS NULL")
  • Rejestracja: dni
  • Ostatnio: dni
0

Dzięki, działa super :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.