aşağıdaki çalışmayı inceler misiniz?
Not: çalışma 2. dosyanız üzerinden yapılmıştır
yapılanlar
1 - öncelikle öğrenci nöbetini kaydeden geçici bir TmpOgrNbt tablosu eklenmiştir
böylece form açıldığında bu tabloya öğrenciler eklenip kaydet tuşuna bastığınızda geçici tablodaki veriler nöbet tablosuna aktarılıyor
burada sadece tarih alanı girdiğiniz veriler asıl nöbet tablosuna aktarılıyor
Not: şimdilik tekrar kontrolü yok yani siz 10 defa aynı öğrenciye aynı gün nöbet yazıp eklerseniz hepsi eklenir.
2 - ilişkiler panelindeki öğrenci-nöbet tabloları öğrenci no alanı yerine öğrenci tablosundaki kimlik alanı üzerinden tanımlanmıştır
3 - öğrenci formunun veri kaynağı değiştirilip geçici TmpOgrNbt tablosu yapılmıştır
kaydet düğmesinin kodu
Private Sub Komut16_Click()
Me.Requery
Set db = CurrentDb
xEkle = "INSERT INTO Nöbet ( [OgrencID], Tarih, [Nöbet Yeri] ) " & _
"SELECT TmpOgrNbt.OgrencID, TmpOgrNbt.NbtTrh, TmpOgrNbt.NbtYeri " & _
"FROM TmpOgrNbt WHERE ((TmpOgrNbt.NbtTrh) Is Not Null) AND ((TmpOgrNbt.NbtYeri) Is Not Null);"
Debug.Print xEkle
db.Execute xEkle
db.Close
Set db = Nothing
End Sub
form yüklenirken geçici tabloya öğrenci ekleme kodu
Private Sub Form_Load()
Set db = CurrentDb
xSil = "delete * from TmpOgrNbt"
xEkle = "INSERT INTO TmpOgrNbt ( [OgrencID] ) " & _
"SELECT [Kimlik] " & _
"FROM Öğrenciler;"
db.Execute xSil
db.Execute xEkle
db.Close
Set db = Nothing
Me.Requery
End Sub
Nöbet2_hy.rar
(Dosya Boyutu: 95,47 KB | İndirme Sayısı: 12)