Skip to main content

AccessTr.neT


Dcount İle Aynı Kişi Varsa Eklenmesin

Dcount İle Aynı Kişi Varsa Eklenmesin

Çözüldü #1
[Resim: uzBUfJ.jpg]

ekledim tablo sistemine Altforma aynı öğrenciye (ogrenci_id) alanına aynı ogretmenin eklenmesini nasıl engelleriz.

Şöyle izah edeyim. frm_gorusler formu açıldıktan sonra öğrenci seçiliyor. ve öğretmen seçilerek alt forma atılıyor. mükerrer eklemeyi öğrenci bazında nasıl yaparız?
.rar RAPOR SŞ.rar (Dosya Boyutu: 331,93 KB | İndirme Sayısı: 7)
Cevapla
#2
Birde Veli seçiline listede sadece o öğrencinin velisi, Sınıf öğretmeni seçilince öğrencinin sınıf öğretmeni kimse sadec onun gelmesini nasıl sağlarız.
Cevapla
#3
Mükerrer kayıt engellemek için kurduğunuz mantığı çok anlayamadım. 



If DCount("*", "tbl_gorusler", "[adi_soyadi] = '" & Gadsoyad & "' And [olay_id] = " & [olay_is_no] & "") <> 0 Then

MsgBox (Gadsoyad & "Bu Kişi Daha Önce Eklenmiş !")



Dcount'un bu şekilde kullanılmasını daha önce düşünmemiştim. Fakat bazı hatalar yapıyor kodlar. Altta olmayan kaydı var gibi görüp eklemiyor. 

Biz genellikle mükerrer kayıtlar için Dlookup kullanırız. Bir şey mi kaçırdım acaba? Farklı bir şey mi yapmak istediniz?
Cevapla
#4
Kurgulayamadım. Yani kafamda kurguladım ama koda dökemedim. Şöyle ki; dediğiniz çok doğru aslında;
tbl_gorusler tablosunda; tablodaki öğretmen_id kodundan öğrenci_ id sinde olan öğretmeni ekleme

Yukarıdaki kod tüm tabloyu kontrol ediyor, eklenen kişiyi bir daha hiçbir şekilde eklemiyor. Oysa benim yapmak istediğim
Öğrenci bazında bunu yapmak, Yani listede A ve B öğrencisi var, Bir kişi hem A öğrencisi hem B öğrencisine görüş yazabilir. Ama A öğrencisine aynı kişi bir daha görüş yazama eklenemez. Yapmaya çalıştığım bu Sayın Hocam.
Son Düzenleme: 05/04/2020, 04:48, Düzenleyen: SeferŞANLI.
Cevapla
#5
sn. @SeferŞANLI
o zaman aslında yapılması gereken mantığı tam kurmak şöyle ki
bir olayın bir öğrecisi oluyorsa 
bir öğrenciye bir öğretmen bir kez görüş yazıyorsa
aynı olaya aynı öğretmen iki kez görüş yazamaz
bu tabloda iki kez olmayan sadece olay id
yani aynı olay id sine aynı öğretmenin görüş bildirmesine engel olmak lazım
dcount ile bu olay id sinde bu öğretmen id si var mı diye bakarız
bir öğrencinin birden fazla olayı olsa biri martta biri nisanda
martta görüş yazan öğretmen eğer aynı öğrencinin nisandaki olayına görüş yazamayacak ise o zaman 
dcount ile bu öğrenci id sinde bu öğretmen id si var mı diye bakarız
eğer bir olayda birden fazla öğrenci varsa ali veli  
aliye görüş yazan veliye görüş yazamıyorsa yine o zaman 
dcount ile bu olay id sinde bu öğretmen id si var mı diye bakarız

öğrenci ve olay aynı olmasa da öğretmen bu tabloda bir kez yer alabilecek ise
sadece ve sadece o zaman öğretmen id si DCount ile kontrol edilir
umarım anlatabilmişimdir 
Cevapla
#6
(05/04/2020, 04:39)mehmetdemiral yazdı: Mükerrer kayıt engellemek için kurduğunuz mantığı çok anlayamadım. 



If DCount("*", "tbl_gorusler", "[adi_soyadi] = '" & Gadsoyad & "' And [olay_id] = " & [olay_is_no] & "") <> 0 Then

MsgBox (Gadsoyad & "Bu Kişi Daha Önce Eklenmiş !")



Dcount'un bu şekilde kullanılmasını daha önce düşünmemiştim. Fakat bazı hatalar yapıyor kodlar. Altta olmayan kaydı var gibi görüp eklemiyor. 

Biz genellikle mükerrer kayıtlar için Dlookup kullanırız. Bir şey mi kaçırdım acaba? Farklı bir şey mi yapmak istediniz?
 o başta ki yıldız mı
ne işe yarıyor olabilir 
yoksa tüm alanları falan mı ifade ediyor
@benbendedeilem
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task