Tekrarlayan Kaydı Engelleme

1 2 3 4
02/10/2024, 11:56

notrino

Evet haklısınız, gelen cevaba göre ben alanlarımı metin olarak revize ettim. Ondan çalışıyor
02/10/2024, 12:00

berduş

aslında söylediklerimizi uygulasaydınız alanları değiştirmeye gerek kalmazdı
aşağıdaki kodun sorunsuz çalışması gerek
SayKayit = DCount("*", "Tablo2", "harf_id=" & Me.harf_id & " and tarih=" & CLng(Me.tarih.Value) & " and sayı=" & Me.sayı.Value)
02/10/2024, 12:56

onur_can

(02/10/2024, 12:00)berduş yazdı: aslında söylediklerimizi uygulasaydınız alanları değiştirmeye gerek kalmazdı
aşağıdaki kodun sorunsuz çalışması gerek
SayKayit = DCount("*", "Tablo2", "harf_id=" & Me.harf_id & " and tarih=" & CLng(Me.tarih.Value) & " and sayı=" & Me.sayı.Value)

Evet @berduş hocam komut çalışıyor.
Yalnız bu şekilde yine mükerrer kayıt oluşuyor. Bu da 2 tablonun yanlış ilişkilendirilmesinden kaynaklanıyor. Bunu düzeltmek için Tablo2 tablosunda bulunan harf_id alanını silip yeni bir alan oluşturulması gerekiyor. Alnın veri türü Arama sihirbazıyla oluşturulup Tablo1 deki kimlik ve HARF alanlarını kapsayacak şekilde oluşturulmalı, ayrıca Ana formdaki alt formun üst ve alta alanlarının birbirine bağlanması gerekir.
02/10/2024, 13:36

berduş

@onur_can hocam ben denediğimde yeni kaydı eklemiyordu
az önce yine dendim kaydı eklemiyor
kullandığım kod
    Dim veriSayisi As Integer
    If IsNull(Me.tarih.Value) Or IsNull(Me.sayı.Value) Then MsgBox "Tarih yada sayı alanı boş bırakılamaz": Exit Sub ' tarih yada sayı alanı boşsa uyarı verip yordamdan çıkar
    SayKayit = DCount("*", "Tablo2", "harf_id=" & Me.harf_id & " and tarih=" & CLng(Me.tarih.Value) & " and sayı=" & Me.sayı.Value)
   
    If SayKayit > 0 Then
        MsgBox "Bu kayıt zaten mevcut. Kayıt yapılamaz.", vbExclamation, "Uyarı"
        Me.Undo
    Else
        ' Kayıt işlemini gerçekleştirin
        DoCmd.RunCommand acCmdSaveRecord
        ' Yeni kayda geç
        DoCmd.GoToRecord , , acNewRec
    End If
02/10/2024, 14:09

onur_can

Doğrudur Hocam, ben sn notrinonun eklemiş olduğu uygulama üzerinden denedim, Sizin kodunuzda yanlışlık yok zaten, kodunuz çalışıyor, ilk indirdiğinizde tablolarda ilişki görebildiniz mi?
Yani kod çalışıyor fakat ilişki olmadığı için harfi atamıyor
02/10/2024, 14:16

berduş

kodu ilk mesajdki dosya üzerinde denemiştim
ben ilişkilendirmede bir soru göremedim
2. tablo ile 1. tablo; tablo2.harf_id<-->tablo1.kimlik üzerinden ilişkilendirilmiş ki bence de olması gereken bu
ana form ve alt form arasında da alan ilişkilendirilmesi doğru
1 2 3 4