Dcount İle Aynı Kişi Varsa Eklenmesin

1 2 3 4 5 6 7 8 9 10 11
05/04/2020, 03:42

SeferŞANLI

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.
05/04/2020, 04:39

mehmetdemiral

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?
05/04/2020, 04:44

SeferŞANLI

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.
05/04/2020, 06:54

accessman

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 
05/04/2020, 07:30

accessman

(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
1 2 3 4 5 6 7 8 9 10 11