(18/03/2020, 13:22)Oğuz Türkyılmaz yazdı:Aşağıdaki hatayı aldım.(18/03/2020, 13:11)berduş yazdı: 1 - tablolar arası ilişki kurmak daha pratik olmaz mı?2.maddeyi aklımdan geçirmiştim ama pratikte nasıl yazılır bilmiyordum hemen deneyeceğim.
2 - hepsi için ayrı ayrı if oluşturacağınız tüm dcountları toplayıp sonuç 0 mi diye kontrol etmek daha uygun olmaz mı?
If dcount(...) + dcount(...) +.....=0 then.....
gibi
1. madde Tabloları birbiriy le Uye No alanı üzerinden ilişkilendirdikten sonra ne yapmam gerekecek. Bire çok ilişki kurdum kayıtlarında ana tablodaki kayıt silindiğinde diğer ilişikteki kayıtlar silinmesin diye işaretledim diyelim. Sonrası nasıl gelecek uye harekeketlerini sildirmedik ama uye silinebiliyor. Orayı çözemiyorum.
b-
c-
Private Sub Sil_BTN_Click()
If DCount("UyeNo", "T_UyeTahsilat", "[UyeNo]=" & Me.UyeNo_TXT) + _
DCount("UyeNo", "T_UyeHesap", "[UyeNo]=" & Me.UyeNo_TXT) + _
DCount("UyeNo", "T_UyeDestek", "[UyeNo]=" & Me.UyeNo_TXT) + _
DCount("UyeNo", "T_UyeEtkinlik", "[UyeNo]=" & Me.UyeNo_TXT) + _
DCount("UyeNo", "T_UyeBelgeler", "[UyeNo]=" & Me.UyeNo_TXT) = 0 Then
If MsgBox("Üye Kaydı ve tüm bilgileri silinecek, İşlemin geri dönüşü yoktur. Eminmisiniz ? ", vbCritical + vbYesNo, " !!! DİKKAT !!! ") = vbYes Then
CurrentDb.Execute "delete from T_Uye where [UyeNo]=" & Me.UyeNo_TXT
Dim fat As Control
For Each fat In Me.Form.Controls
Select Case fat.ControlType
Case acTextBox
fat.Value = ""
Case acComboBox
fat.Value = ""
Case acCheckBox
fat.Value = "0"
End Select
Next
End If
Else
MsgBox "DİKKAT" & vbCrLf & ("Hareket gören kayıtlar silinemez."), vbCritical
End If
End Sub