Skip to main content

AccessTr.neT


formda sadece kaydet butonunun kaydetmesi

formda sadece kaydet butonunun kaydetmesi

Çözüldü #22

ilginize teşekkür ederim ozan bey ama sorun devam etmekte. siz yanlış anladınız sanırım sorunu.. gördüğüm kadarıyla sizin eklediğiniz kod sadece formu kapatıyor..

sorunu tekrar anlatayım;

tüm kutucuklar doldurulup hata ile tab tuşuna bastım veya tüm kutular dolu iken satıştan vazgeçtim. şöyle bir durum oluşuyor;
ilgili kayıt (satışı yapılmak istenen alış), alışlar tablosunda satıldı işaretlenmiyor ve satışlar tablosuna yeni kayıt açıyor. (satıldı görünüyor)
ama ilgili kayıt satışlar formunda satışlar listesinde yine görünmekte.. (satış işleminden vazgeçildiği halde)

evet, kodları tam olarak anlamıyorum. yarım yamalak anlıyorum bu da yeterli olmuyor.

sanırım yapılan işlemi geri alma ile alakalı bir kod kullanmak gerek, sanırım bu da "Me.Undo" olsa gerek ki bu kod tek başına yeterli midir ve ya hangi satıra yazılmalıdır bilmiyorum.

uzunca yazıp kafa karıştırmak istemem ama ancak böyle anlatabildim, teşekkürler.

If IsNull(Me.satistarihi) Or IsNull(satisfiyati) Or IsNull(musteribilgi) Then

If MsgBox("Formda Boş Alanlar Mevcut. Kaydedilmeden Kapatılsın mı?", vbInformation + vbYesNo, "Kapatılıyor...") = vbYes Then
Me.Undo
DoCmd.Close
End If

Else

mesaj = MsgBox("Form Kapatılmadan Önce Girilen Veriler Kaydedilsin mi?", vbCritical + vbYesNoCancel, "Form Kapanıyor...")

Select Case mesaj
Case 6

Me.satisfiyati.Enabled = False
Me.satistarihi.Enabled = False
Me.musteribilgi.Enabled = False
DoCmd.RunSQL "UPDATE alislar SET [Satildi] = -1 WHERE [imeiid]=" & Me.imeiid.Value & ";"
MsgBox "Satış Gerçekleşti..."
DoCmd.Close
Case 7

Me.Undo
DoCmd.Close
Case 2

Exit Sub
End Select

End If

sanırım bunun gibi bir kod olmalı ama tam olarak doğru çalışmadı, nasıl yapabilirim bunu?

teşekkürler.

If IsNull(Me.satistarihi) Or IsNull(satisfiyati) Or IsNull(musteribilgi) Then

If MsgBox("Formda Boş Alanlar Mevcut. Kaydedilmeden Kapatılsın mı?", vbInformation + vbYesNo, "Kapatılıyor...") = vbYes Then
Me.Undo
DoCmd.SetWarnings False
DoCmd.RunSQL ("DELETE satisid FROM satislar WHERE (((satisid) Is Null));")
DoCmd.SetWarnings True
DoCmd.Close
End If

Else

mesaj = MsgBox("Form Kapatılmadan Önce Girilen Veriler Kaydedilsin mi?", vbCritical + vbYesNoCancel, "Form Kapanıyor...")

Select Case mesaj
Case 6

Me.satisfiyati.Enabled = False
Me.satistarihi.Enabled = False
Me.musteribilgi.Enabled = False
DoCmd.RunSQL "UPDATE alislar SET [Satildi] = -1 WHERE [imeiid]=" & Me.imeiid.Value & ";"
MsgBox "Satış Gerçekleşti..."
DoCmd.Close
Case 7

Me.Undo
DoCmd.Close
Case 2

Exit Sub
End Select

End If

son olarak böyle düzenledim kodları. ve şu an sanırım kayıtlarda bir hata vermiyor (ileriki zamanlarda bu kodlar bana sorun yaşatır mı bilemiyorum)

kutular dolu iken form kapatıldığında, evet seçilince şöyle bir uyarı alıyorum:

[Resim: do.php?img=4136]

sonrasında da düzgün bir şekilde işlem kaydediliyor.
bunu uyarının görünmesinin sebebini anlayamadım. sanırım kodlar da eksiklik var.

forumda bilgili arkadaşlara rica ediyorum, bu uyarıyı nasıl önleyebilirim? bu kodlar doğru mu?
.rar telefon.rar (Dosya Boyutu: 84,17 KB | İndirme Sayısı: 11)
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
Cvp: formda sadece kaydet butonunun kaydetmesi - Yazar: miCRoBe` - 25/01/2014, 15:56
Task