Sayın üstatlar mrb. Acces de hazırladığım müşteri takip programıma ait Veri sayfasındaki bilgileri değiştirirken veya yanlışlıkla Delete basıldığında yani istemeden değişiklik olması durumunu engellemek için, veri sayfasında herhangi bir değişiklik yaparken önce onay alsın istiyorum. Yani " Kayıt değiştirilecektir.Onaylıyormusunuz" gibi bir onaydan sonra değişiklik yapsın istiyorum. Bu konuda yardımcı olursanız memnun olurum. KOnu ile ilgili örnek dosyam (Orjinal dosyanın kayıtları azaltılmış hali) ektedir. Şimdiden teşekkür eder saygılarım sunarım.
Değişiklik Onayı İçin Soru Sorar....
Private Sub Form_BeforeUpdate(Cancel As Integer)
' formda yanlışlıkla bir veri üzerinde değişiklik yapmayalım diye
' değişiklik durumunda onay alıyoruz.
If NewRecord = False Then
If MsgBox("Değişiklikler kaydedilsin mi?", _
vbYesNo) = vbNo Then
Cancel = True
DoCmd.RunCommand acCmdUndo
End If
End If
End Sub
bu kısmı modüle yazınız. kayıt silme için kullanacağımız fonksiyon...
Public Sub KayitSil(Optional ByVal FRM As Form, Optional ShowMsg As Boolean)
' Yanlışlıkla kayıt silinmesini engellemek üzere onay alınmasını sağlar.
On Error Resume Next
If ShowMsg Then
If MsgBox("Kayit silinecek. Devam edilsin mi?", vbCritical + vbYesNo) = vbNo Then Exit Sub
End If
If FRM Is Nothing Then
DoCmd.SetWarnings False
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
DoCmd.SetWarnings True
Exit Sub
Else
If FRM.NewRecord And (Not FRM.Dirty) Then Exit Sub
End If
If FRM.Dirty Then DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70
If Not FRM.NewRecord Then
With FRM.RecordsetClone
.Bookmark = FRM.Bookmark
.Delete
.MoveNext
If .EOF Then .MoveLast
FRM.Bookmark = .Bookmark
End With
End If
FRM.Requery
End Sub
kayıtsil kullanımı silme butonunun koduna yazınız
Call KayitSil(Screen.ActiveForm, True)
Göndermiş olduğunuz kodlarla işimi halledemedim. Belki sizin için çok klay bir durum ama yamamak çok kötü. Gönderdiğim dosya üzerinde yardımcı olursanız çok sevinirim. İyi çalışmalar.
Verilen ilk kod 01-Alıcı Müşteriler Listesi formunun güncelleştirme öncesinde olayına yazıldı,
Teşekkür ediyorum. Verdiğiniz kodları uyguladım. İsteğimi elde ettim.Ellerinize sağlık.
Malesef son cevabı aldınız. Üyeliğiniz askıya alınmıştır.