Access Tablosuna Yapılacak Kayıtları Sınırlama

Katılım
19 Şubat 2006
Mesajlar
73
Excel Vers. ve Dili
exel
Merhaba Arkadaşlar

Yapmış olduğum bir access tablosuna veri girişi yapmak için form oluşturdum ama oluşan tabloya en fazla 1 veya 2 kayıt girilmesini istiyorum

yani tablodaki kayıt sayısını sınırlamak istiyorum o tabloya girilecek kayıt sayısı vereceğim sayıyı geçtiği zaman örneğin 2 kayıtla sınırlandırdığımız varsayarsak 3 kayıt yapılmaya çalışıldığı anda ya işlem yapmayacak yada bir uyarı verecek.


yardımlarınız için şimdiden teşekkür ederim.
 
Katılım
18 Nisan 2007
Mesajlar
2,053
Excel Vers. ve Dili
Access 2019
Merhaba..

Kayıt sayısının belirsiz oluşu aklıma şu yöntemi getirdi..

Ben olsam:

Formun üstüne bir düğme yerleştirip tıklama olayına

Kod:
[LEFT]Private Sub Kaydı_Kapat_Click()
[COLOR=red]AllowAdditions = False[/COLOR]
End Sub[/LEFT]
yazardım.

Tabii bu yöntemi kullanmanız tablo/form yapınız ve en önemlisi bunu yapma amacınıza göre değişir.

Benzeri amaca yönelik forum içerisinde farklı seçeneklerde var sanıyorum..

Saygılar
 
Katılım
18 Nisan 2007
Mesajlar
2,053
Excel Vers. ve Dili
Access 2019
Üstteki manuel yöntem oldu..

Şimdi aklıma başka bir şey geldi:

Formun üstüne bir tane metin kutusu yerleştirin, ismi kayıtsayısı olsun. Denetim kaynağını

Kod:
=Say([[COLOR=red][I]her kayıtta dolu olan bir alan[/I][/COLOR]])
yapın. Böylece kayıtları saymış olduk. İsterseniz biçimi görünmez de yapabilirsiniz.

Kayıt girdiğiniz son alanın güncelleme sonrası olayına

Kod:
Me.Requery
yazın.

En son olarakta formun güncelleme sonrası olayına

Kod:
If kayıtsayısı = [COLOR=red]3[/COLOR] Then AllowAdditions = False
yazın.

Artık kodda belirttiğiniz sayıdan fazla kayıt yapılamayacaktır. Bu kodda, = yerine >, < vb. işleçleride kullanabilirsiniz.

Evet, ben olsam bunu yapardım ;)
 
Katılım
19 Şubat 2006
Mesajlar
73
Excel Vers. ve Dili
exel
Say&#305;n Taruz

Anlatt&#305;&#287;&#305;n&#305;z &#350;ekilde denedim fakat yinede kay&#305;t yap&#305;yor
ben 1 diye s&#305;n&#305;rlad&#305;m ama yeni a&#231;t&#305;&#287;&#305;m kutucu&#287;a 2 say&#305;s&#305; yaz&#305;l&#305;yor
yani olmad&#305;.
 
Katılım
18 Nisan 2007
Mesajlar
2,053
Excel Vers. ve Dili
Access 2019
Merhaba,

Çalışmanızı ekleyebilir misiniz?
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
Say&#305;n Taruz'un mant&#305;&#287;&#305; olduk&#231;a g&#252;zel.

Alternatif bir mant&#305;k da &#351;&#246;yle olabilir:

ilgili tabloya kontrol ad&#305;nda bir say&#305; alan eklenir.

&#246;rne&#287;in tablomuza 3 adet kay&#305;t girilebilsin &#351;art&#305;n&#305; koymak i&#231;in

Bu alan&#305;n "validation rule" &#246;zelli&#287;ine < 4 yazar&#305;z.

ilgili forma, bu tan&#305;mlad&#305;&#287;&#305;m&#305;z kontrol alan&#305;n&#305; g&#246;r&#252;nmez olarak ekleriz.

formun before_update olay&#305;na

Kod:
Me!kontrol = Nz(DMax("kontrol", "deneme"), 0) + 1
ekleriz. (buradaki deneme tablomuzun ismi oluyor)

on error goto

gibi hata kontrolleri ile de uygun mesaj&#305; veririz.

Dolay&#305;s&#305;yla bizim yapaca&#287;&#305;m&#305;z kontrol&#252; veritaban&#305;na y&#305;km&#305;&#351; oluruz.
 
Katılım
18 Nisan 2007
Mesajlar
2,053
Excel Vers. ve Dili
Access 2019
Merhaba..

Çeşit olsun :)

Formun geçerli olduğunda ve güncelleme sonrası olay yordamına

Kod:
If Me.RecordsetClone.RecordCount = 1 Then
Me.AllowAdditions = False
MsgBox "Kayıt Limiti Doldu"
End If
yazın.

Bu sefer örnekde denedim :)

Hepsi güzel oldu.. Hangisini seçsek? ;)
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
hemen farkl&#305; bir y&#246;ntem daha bulmam laz&#305;m :)
 
Katılım
19 Şubat 2006
Mesajlar
73
Excel Vers. ve Dili
exel
ilginize &#231;ok te&#351;ekk&#252;r ediyorum arkada&#351;lar

o zaman soruyu biraz zorla&#351;t&#305;ray&#305;m

&#351;imdi bir formun alt&#305;nda yine form olarak alt form olu&#351;turdum fakat bu alt forma sadece o kay&#305;t i&#231;in tek bir giri&#351; yap&#305;ls&#305;n istiyorum tabloya s&#305;n&#305;r de&#287;ilde form g&#246;r&#252;n&#252;mde giri&#351;e s&#305;n&#305;r koymak istiyorum

&#351;&#246;yle s&#246;ylim ben bu i&#351; i&#231;in kay&#305;t se&#231;icilerini falan yok ediyorum yani yeni kay&#305;t i&#231;in herhangibi kontrol koymuyorum haliyle yeni kay&#305;t yap&#305;lam&#305;yor
ama gel gelelim maus tekerle&#287;i &#231;evrildi&#287;i zaman kay&#305;tlar aras&#305;nda dola&#351;maya ba&#351;l&#305;yor onu bir t&#252;rl&#252; engelleyemiyorum.
 
Katılım
7 Ocak 2005
Mesajlar
205
Excel Vers. ve Dili
office 2003 pro türkçe
te&#351;ekk&#252;rler
Kritik bir durum oldu&#287;unu cevaplar&#305;n&#305;zdan farkedip hemen hatam&#305; d&#252;zelttim
 
Üst