https://resimyukle.org/i/BBtiu
Ana form ve alt formla "is_id" ile bağlı
Amacım şu dersler tablosundan seçilen dersleri alt forma aktardıktan sonra, eklediğim resimdeki değişken verileri hesaplatarak ilgili tablolara göndermek.
Eğer tabloda seçilen işe ait kayıt varsa güncelleyecek, yoksa ekleyecek.
Hatalar şu şekilde oluşuyor.
Öğretmen sayısı alanına veri girilmeden güncelle butonuna basınca bağlı tabloya kayıt atıyor. Oysa atmaması gerek.
Yine Öğretmen alanına veri girilip güncelle butonuna basılınca tablonun alt satırına veriyi atıyor ve forma mevcut veri gelmiyor.
**** Öğretmen sayısı alanı nına sıfır boşluk ve metinsel karakter girilmemeli.
***** veri girişi sadece güncelle kaydet butonuyla sağlanmalı
Dim Gfiilidersyk, Gisletme, Gfiil, Gatlsef, Galansef, Gddh, Gtoplamdersyk, Gogrtfiili, Gogrtplyk, Gogrtsay As Integer
If txtogrtsay = 0 Or IsNull(txtogrtsay) Then
MsgBox "Lütfen öğretmen sayısını giriniz!!!!...", vbOKOnly, "Uyari"
Me.Undo
Exit Sub
End If
Gisletme = Dsum ("dersyükü", "tbl_dersyuku", "[is_id]=" & [is_id] & " and [dersadi]='İşletmelerde Beceri Eğitimi'") 'işletme yükü
Gfiil = Dsum ("dersyükü", "tbl_dersyuku", "[is_id]=" & [is_id])
Gfiilidersyk = Gfiil - Gisletme
Galansef = Me.txtalansef
Gatlsef = Me.txtatlsef
Gogrtsay = Me.txtogrtsay
Gis_id = Me.is_id
Gddh = Int(Gfiilidersyk / Me.txtogrtsay)
Gtoplamdersyk = Nz((Gfiilidersyk + Gisletme + Galansef + Gatlsef + Gddh), 0) ' toplam ders yükü
Gogrtfiili = Int(Gfiilidersyk / Gogrtsay) 'öğretmen başına düşen fiili yük
Gogrtplyk = Int(Gtoplamdersyk / Gogrtsay) ' öğretmen başına düşen toplam yük
If DCount("ders_ter_id", "tbl_dersyuku_alt", "[is_id]=" & Gis_id) <> 0 Then
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE tbl_dersyuku_alt set tbl_dersyuku_alt.ogrtsay=" & Gogrtsay & ",tbl_dersyuku_alt.alansef=" & Galansef & ",tbl_dersyuku_alt.atlsef = " & Gatlsef & ",tbl_dersyuku_alt.ibe = " & Gisletme & ",tbl_dersyuku_alt.ddh = " & Gddh & ",tbl_dersyuku_alt.dersyükü = " & Gfiilidersyk & ",tbl_dersyuku_alt.ogrfiilidersyk = " & Gogrtfiili & ",tbl_dersyuku_alt.ogrtplmdrsyk = " & Gogrtplyk & ",tbl_dersyuku_alt.tpldersyk = " & Gtoplamdersyk & ""
DoCmd.SetWarnings True
Else
DoCmd.SetWarnings False
DoCmd.RunSQL "insert into tbl_dersyuku_alt(ogrtsay,alansef,atlsef,ibe,ddh,dersyükü,ogrfiilidersyk,ogrtplmdrsyk,tpldersyk,is_id)values (" & Gogrtsay & "," & Galansef & "," & Gatlsef & "," & Gisletme & "," & Gddh & "," & Gfiilidersyk & "," & Gogrtfiili & "," & Gogrtplyk & "," & Gtoplamdersyk & "," & Gis_id & ")"
DoCmd.SetWarnings True
End If
Forms!frm_tercih_islemleri!.Form.frm_alt_tercih.Requery
'Forms!frm_tercih_islemleri!.Form.frm_ders_Saati.Recalc
'Forms!frm_tercih_islemleri!.Form.frm_ders_Saati.Requery
Forms!frm_tercih_islemleri.Recalc
****** veri girişinden vazgeçilince kayıt oluşturulmamalı.