Hocalarım merhaba. projemde uzun bir yol aldım ama yine yardımınıza ihtiyacım var.
yoklama sorgu alt formu diye alt form oluşturdum. tasarım tamam ama takıldığım konular;
* kaydedince sadece seçtiğim ay'a ve yıla kaydetmesi ve ayı seçince kaydettiklerimin tekrar gelmesi ( örneğin ; ocak ayını ve yılını seçtim verileri girdim o aya kaydetmesi sonradan o ayı tekrar seçtiğimde kişinin gelip gelmediğini görmem )
* branşa göre öğrenci çağırma
* grup koduna göre öğrenci çağırma.
örneklerden baktım ama başaramadım. sizden yardım rica ediyorum. değerli vaktinizi ayırdığınız için şimdiden çok teşekkür ederim.
15-09-2022, 09:21 (En son düzenleme: 15-09-2022, 09:24 alperalper.)
(14-09-2022, 15:51)omergenc7 demiş ki: Hocalarım merhaba. projemde uzun bir yol aldım ama yine yardımınıza ihtiyacım var.
yoklama sorgu alt formu diye alt form oluşturdum. tasarım tamam ama takıldığım konular;
* kaydedince sadece seçtiğim ay'a ve yıla kaydetmesi ve ayı seçince kaydettiklerimin tekrar gelmesi ( örneğin ; ocak ayını ve yılını seçtim verileri girdim o aya kaydetmesi sonradan o ayı tekrar seçtiğimde kişinin gelip gelmediğini görmem )
* branşa göre öğrenci çağırma
* grup koduna göre öğrenci çağırma.
örneklerden baktım ama başaramadım. sizden yardım rica ediyorum. değerli vaktinizi ayırdığınız için şimdiden çok teşekkür ederim.
Öncelikle kaydetmekten kastınız nedir onu anlayamadım. Makbuz kaydetmek mi? öğrenci kaydetmek mi? Programınızı biraz inceledim bana sorarsanız programanızdaki kurgusal hatalardan kaynaklı olarak yukarıdaki sorunları yaşamaktasınız. Bence yolun başındayken bunları düzeltmeniz daha doğru olur ilerde sorun yaşamamanız adına söylüyorum.
İlk gözüme takılanlar:
Uygulamanızın girişinde şifre kontrolü yaparken buraya 3 veya 4 hatalı giriş kontrolü koymanız daha iyi olur.
Giriş formunda kullanıcıyı seçtikten sonra şifre güncelleme sonrasındaki yordamı şifre kontrolü için kullanmayınız. bu şekilde şifrenizi tahmin etmek için sınırsız bir deneme imkanı oluşmuş ve hiçbir hata vermeden anlık deneme... bunun yerine kullanıcı adını seç, şifreyi yaz bir buton ile girişe tıklat. şifre doğru ise girsin yanlış ise 3 veya 4 hatalı giriş hakkı tanı. bunun için formda login giriş örnekleri var. sen yapmak istersen aşağıdaki gibi yapabilirsin.
Öğrenci takip formunuzda kayıt kaynağı var ve üzerindeki denetimler doğrudan aktif. yani yanlışlıkla bir tuşa bassanız veriler direk değişir.
Yeni kaydet butonunuz doğrudan öğrenci takip formu va tablosu ile alakalı. yani ödemeler için yaptığınız altform ile alakası yok. kayıt yapmaması normaldir.
Yukarıda herhangi bir öğrenci seçili iken alt formda alakası olmayan öğrencilerin adları da gelmekte. dolayısı ile bu veri tutarsızlıklarına neden olur. ahmet seçili ile mehmete ödeme alınması durumu olabilir. Yazılabililecek daha pek çok hata var.
Özetle bunların yerine size nacizane tavsiyem şu olur. bir form oluşturun. üzerine bir liste kutusu yapın. öğrencilerinizin listesi burada olsun. isterseniz formun yan tarafına sekmeli denetim isterseniz doğrudan denetimleri ekleyin. listeden seçtiğiniz kişiye göre ilgili kaydı bulun.. ödeme al butonu ile ayrı bir formda ödemeleri alabilirsiniz. veya sekme denetimini kullanabilirseniz 1.sekme öğrenci bilgileri, 2. sekme ödemeler vs. gibi ayarlanabilir.
Visual Basic
dim i asbyte, hak asbyte
hak=4
For i= 0 to 4 '0 dan başla 4 e kadar say.
if şifre <>doğru şifre then'eğer yazılan şifre doğru olan şifreden farklı ise....
hak = hak-i
if hak= 4 thenexitsubelse msgbox "yanlış şifre kalan şifre hakkınız: " & hak
else
'doğru şifre olması durumunda açılacak form kodları
15-09-2022, 09:57 (En son düzenleme: 15-09-2022, 10:16 omergenc7.)
(15-09-2022, 09:21)alperalper demiş ki:
(14-09-2022, 15:51)omergenc7 demiş ki: Hocalarım merhaba. projemde uzun bir yol aldım ama yine yardımınıza ihtiyacım var.
yoklama sorgu alt formu diye alt form oluşturdum. tasarım tamam ama takıldığım konular;
* kaydedince sadece seçtiğim ay'a ve yıla kaydetmesi ve ayı seçince kaydettiklerimin tekrar gelmesi ( örneğin ; ocak ayını ve yılını seçtim verileri girdim o aya kaydetmesi sonradan o ayı tekrar seçtiğimde kişinin gelip gelmediğini görmem )
* branşa göre öğrenci çağırma
* grup koduna göre öğrenci çağırma.
örneklerden baktım ama başaramadım. sizden yardım rica ediyorum. değerli vaktinizi ayırdığınız için şimdiden çok teşekkür ederim.
Öncelikle kaydetmekten kastınız nedir onu anlayamadım. Makbuz kaydetmek mi? öğrenci kaydetmek mi? Programınızı biraz inceledim bana sorarsanız programanızdaki kurgusal hatalardan kaynaklı olarak yukarıdaki sorunları yaşamaktasınız. Bence yolun başındayken bunları düzeltmeniz daha doğru olur ilerde sorun yaşamamanız adına söylüyorum.
İlk gözüme takılanlar:
Uygulamanızın girişinde şifre kontrolü yaparken buraya 3 veya 4 hatalı giriş kontrolü koymanız daha iyi olur.
Giriş formunda kullanıcıyı seçtikten sonra şifre güncelleme sonrasındaki yordamı şifre kontrolü için kullanmayınız. bu şekilde şifrenizi tahmin etmek için sınırsız bir deneme imkanı oluşmuş ve hiçbir hata vermeden anlık deneme... bunun yerine kullanıcı adını seç, şifreyi yaz bir buton ile girişe tıklat. şifre doğru ise girsin yanlış ise 3 veya 4 hatalı giriş hakkı tanı. bunun için formda login giriş örnekleri var. sen yapmak istersen aşağıdaki gibi yapabilirsin.
Öğrenci takip formunuzda kayıt kaynağı var ve üzerindeki denetimler doğrudan aktif. yani yanlışlıkla bir tuşa bassanız veriler direk değişir.
Yeni kaydet butonunuz doğrudan öğrenci takip formu va tablosu ile alakalı. yani ödemeler için yaptığınız altform ile alakası yok. kayıt yapmaması normaldir.
Yukarıda herhangi bir öğrenci seçili iken alt formda alakası olmayan öğrencilerin adları da gelmekte. dolayısı ile bu veri tutarsızlıklarına neden olur. ahmet seçili ile mehmete ödeme alınması durumu olabilir. Yazılabililecek daha pek çok hata var.
Özetle bunların yerine size nacizane tavsiyem şu olur. bir form oluşturun. üzerine bir liste kutusu yapın. öğrencilerinizin listesi burada olsun. isterseniz formun yan tarafına sekmeli denetim isterseniz doğrudan denetimleri ekleyin. listeden seçtiğiniz kişiye göre ilgili kaydı bulun.. ödeme al butonu ile ayrı bir formda ödemeleri alabilirsiniz. veya sekme denetimini kullanabilirseniz 1.sekme öğrenci bilgileri, 2. sekme ödemeler vs. gibi ayarlanabilir.
Visual Basic
dim i asbyte, hak asbyte
hak=4
For i= 0 to 4 '0 dan başla 4 e kadar say.
if şifre <>doğru şifre then'eğer yazılan şifre doğru olan şifreden farklı ise....
hak = hak-i
if hak= 4 thenexitsubelse msgbox "yanlış şifre kalan şifre hakkınız: " & hak
else
'doğru şifre olması durumunda açılacak form kodları
endif
next
Hocam merhaba söylediklerinizi çalışacağım ama benim problemim ne giriş ne de öğrenci kaydı yaparken hata almam. ben sadece tablolarda gördüğünüz yoklama defterinden bahsetmiştim. yoklama alt forma baktığınız da aslında görürsünüz. öğrenci kaydım zaten oraya problemsiz gelmektedir. benim istediğim. AY ,YIL bazında yoklama defterini kaydetmek ve branşa göre öğrenci getirmek. başka problemim yok. öğrenci tablosu yada ödeme tablosu ile ilgili bir problemim yok.
WHERE (((yoklamasorgu.AY)Like [Formlar]![yoklamaalt]![yoklamasorgu alt formu].[Form]![AY])AND((yoklamasorgu.YIL)Like [Formlar]![yoklamaalt]![yoklamasorgu alt formu].[Form]![YIL])AND((yoklamasorgu.Branş)Like [Formlar]![yoklamaalt]![yoklamasorgu alt formu].[Form]![Açılan_Kutu118]));
YIL VE AY açılır kutuların güncellleme sonrasını aşağıdaki gibi yapın.
WHERE (((yoklamasorgu.AY)Like [Formlar]![yoklamaalt]![yoklamasorgu alt formu].[Form]![AY])AND((yoklamasorgu.YIL)Like [Formlar]![yoklamaalt]![yoklamasorgu alt formu].[Form]![YIL])AND((yoklamasorgu.Branş)Like [Formlar]![yoklamaalt]![yoklamasorgu alt formu].[Form]![Açılan_Kutu118]));
YIL VE AY açılır kutuların güncellleme sonrasını aşağıdaki gibi yapın.
Visual Basic
PrivateSub AY_AfterUpdate()
Form.Requery
EndSub
PrivateSub YIL_AfterUpdate()
Form.Requery
EndSub
ilginiz için çok teşekkür ederim fakat. bunları yaptığımda bu sefer öğrenci verisi gelmiyor ve ay seçimi hata verdiriyor. form işlevsiz hale geliyor.
bu konu benim için çok önemli ama olmuyor bir türlü . öğrenci formuna bağladım kayıtları alıyorum ama aylık kaydedemiyorum. branş türüne göre getiremiyorum.