AccessTr.neT
Modülden kontrol ve setfocus sorunu - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Modülden kontrol ve setfocus sorunu (/konu-modulden-kontrol-ve-setfocus-sorunu.html)

Sayfalar: 1 2


Modülden kontrol ve setfocus sorunu - juphen - 16/03/2012

Merhaba. 10 a yakın formları olan bir veri tabanım var.Hemen hemen tüm formlarda benzer metin kutuları var. Bu denetimlerin boş olup olmadığını vb dan kontrol ediyorum.
Ancak her form için aynı denetimi yapmaktansa tek yerde yazıp tüm denetimlerde kullanmak istiyorum.Böylece gereksiz yere aynı kontrolu defalarca yazmamış olurum. Vba da yazılan kodda sorun yok Cancel as integer ifadesiyle boş olan denetimden çıkılmamasını sağlayabiliyoruz. Ancak modülde yazılan kodda msgboxtan sonra setfocus yapamıyorum. Bunu nasıl çözerim. Modülmü kullanmak makromu kullanmak daha sağlıklı?
örnek dosya ektedir.(Access 2010)

focus.rar

Public Sub Kontrol()
Dim cancel As Integer
If IsNull(sayi) Or IsEmpty(sayi) Then
MsgBox ("bir sayi giriniz")
Screen.ActiveForm.ActiveControl.SetFocus /Bu kod çalışmıyor.
End If
End Sub





Cvp: Modülden kontrol ve setfocus sorunu - alpeki99 - 16/03/2012

Makroları unutun makro ile neredeyse hiç bir konuda bir yere varamazsınız. Örnek dosyanızı indirdim ancak mesajınızda ayrıntı vermediğinizi fark ettim.

Dosyada denetim isimli formda toplam alanına girince Msgbox komutu ile uyarı vermişsiniz. Alandan çıkınca bir uyarı vermiyor. Bu tip zorunlu alan uygulamalarında çalışma mantığı olarak yanlış ibr yöntem izliyorsunuz. Alana girince uyarı vermek yerine "Kaydetme" aşamasında zorunlu alanları kontrol ettirmeniz yerinde olacaktır. Eğer zorunlu alanlardan doldurulmamış alan var ise kayıt işlemini iptal edip, uyarı verdirip o alana odaklayabilirsiniz.


Cvp: Modülden kontrol ve setfocus sorunu - juphen - 16/03/2012

ekteki dosya küçük bir örnekti. Burda sayı alanından çıkınca boş denetimi yapmak istiyorum. sayi alanı boşsa mesaj verip sayı alanına geri dönsün istiyorum. Formun vb kaynağında rahatlıkla bunu yapıyorum.
ek örnek dosyada denetimler istediğim gibi yapılıyor. Ancak ana dosyamda birçok form ve bu fromlar üzerinde birbirine benzer birçok denetim var ve her denetim için aynı kodu yazmak zorunda kalıyorum. O yüzden Kontrol modülü şeklinde bir modülden benzer denetimler için tek kod yazıp denetimleri yapabilirmiyim.
Kaydettikten sonra denetim yapmayı bende düşündüm. Ancak otomatik sayı alanı önemli yani forma girildikten sonra otomatik sayı veriyor ve vazgeçildiğinde bir sonraki sayıdan devam ediyor. Bu da sıralamayı bozuyor.
focus.rar



Cvp: Modülden kontrol ve setfocus sorunu - alpeki99 - 16/03/2012

Biraz acele ile oldu ama işini görecektir. Sadece Sayi isimli deneyim ve Açılan Kutu için ayarladım siz kendinize göre alanları seçebilirsiniz.


Cvp: Modülden kontrol ve setfocus sorunu - juphen - 16/03/2012

Emeğinize sağlık ama ben denetimden çıkıldığında denetim yapılsın mesajdan sonra da o denetime odaklansın istiyorum. Modulden setfocus yapılamıyorsa denetimin çıkıldığında olayında kod yazmak daha mantıklı gibi.


Cvp: Modülden kontrol ve setfocus sorunu - mk70 - 17/03/2012

İstediğiniz böyle birşey mi?

mk70_focus.zip