Imam formu u kojoj treba popuniti četiri podatka. Prva dva, šifra i naziv su obavezna, a druga dva nisu. Kada hoću da izađem a nisam uneo obavezne podatke javlja mi grešku "You cannot save the record at this time". Napravio sam deo koji označava nepopunjena polja i poruku. Tu nastaje problem, ja bih da ako se klikne na Yes da se obriše uneseno i vrati na zadnji sačuvani record, a ako se klikne na no da se nastavi sa unosom. Svaka pomoć je dobrodošla.
Code:
Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim obavezno As Control, EmptyStr$
For Each obavezno In Me.Controls
If Right(obavezno.Name, 3) = "_ob" Then
If IsNull(obavezno.Value) Or obavezno.Value = vbNullString Then
EmptyStr = EmptyStr & obavezno.Name & ";"
obavezno.BackColor = RGB(255, 192, 203)
End If
End If
Next
If EmptyStr <> vbNullString Then
EmptyStr = Left(EmptyStr, Len(EmptyStr) - 1)
If MsgBox("Niste popunili neka obavezna polja: " & vbCrLf & EmptyStr & vbCrLf & "Ako želite da prekinete kliknite na Yes", vbExclamation + vbYesNo, "Brisanje artikla") = vbYes Then
DoCmd.SetWarnings False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.SetWarnings True
DoCmd.GoToRecord , , acLast
Else
Me.Undo
End If
End If
End Sub
Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim obavezno As Control, EmptyStr$
For Each obavezno In Me.Controls
If Right(obavezno.Name, 3) = "_ob" Then
If IsNull(obavezno.Value) Or obavezno.Value = vbNullString Then
EmptyStr = EmptyStr & obavezno.Name & ";"
obavezno.BackColor = RGB(255, 192, 203)
End If
End If
Next
If EmptyStr <> vbNullString Then
EmptyStr = Left(EmptyStr, Len(EmptyStr) - 1)
If MsgBox("Niste popunili neka obavezna polja: " & vbCrLf & EmptyStr & vbCrLf & "Ako želite da prekinete kliknite na Yes", vbExclamation + vbYesNo, "Brisanje artikla") = vbYes Then
DoCmd.SetWarnings False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.SetWarnings True
DoCmd.GoToRecord , , acLast
Else
Me.Undo
End If
End If
End Sub
