hocam, ben aynı işlemi form yoluyla değilde, ekleme sorgusu vasıtasıyla yapmak istiyorum. Çünkü başka hesaplamalar var.
Neticede alınacak mesaj aynı: Tabloda mükerrer kaydı kabul etmeyen fiş numarası var.
Bu durumda sizin "Yeni kayıt ekle" butonuna eklediğiniz komut, nasıl olmalı?
Yani ben butona bastığımda, ekleme sorgusu çalışacak, tabloda mükerrer kayıt olup olmadığına bakacak. Varsa "mükerrer kayıt var" uyarısı verecek. Yoksa "x adet kayıt eklendi" uyarısı verecek.
Uyarı Mesajı Ekleme
Örneği inceleyin. SeriNOsu kaçtan başlayacağı ve kaç adets satır ekleneceğini belirtin, mükerrer kayıtta ve kaç kayıt eklendiği bilgisi versin.
Saygılar, iyi çalışmalar.
*********
Kod, formül vs bilmek önemlidir ama mantığını yürütebilmek, nerede ve nasıl kullanılacağını bilmek daha önemlidir.
*********
Kod, formül vs bilmek önemlidir ama mantığını yürütebilmek, nerede ve nasıl kullanılacağını bilmek daha önemlidir.
Hocam, teşekkür ederim. Ancak tam olarak yapmak istediğim bu değil. Ekte gönderdiğim database de, Form2 den girdiğinizde ünite ve tarih seçildikten sonra, ekleme sorgusu çalıştırılıyor. Burada "mesaikontrol" alanında "yineleme yok" kısıtı var. Dolayısıyla mükerrer kayıt durumunda uyarı mesajı geliyor.
Ben,
-Mükerrerlik yok ise ilk 2 kayıt ekleme uyarı mesajı yerine "X adet kayıt eklenmiştir." şeklinde mesaj gelmesini,
-Mükerrerlik var ise 3.uyarı yerine "Mükerrer Kayıt Var" şeklinde kayıtların eklenmediğini gösteren mesaj gelmesini istiyorum.
Database ve resimler ekte.
Ben,
-Mükerrerlik yok ise ilk 2 kayıt ekleme uyarı mesajı yerine "X adet kayıt eklenmiştir." şeklinde mesaj gelmesini,
-Mükerrerlik var ise 3.uyarı yerine "Mükerrer Kayıt Var" şeklinde kayıtların eklenmediğini gösteren mesaj gelmesini istiyorum.
Database ve resimler ekte.
Sn preconti;
Öncelikle Araçlar/Seçenekler tıkla ve açılan pencerede Düzen/Bul sekmesindeki Onayla çerçevesindeki EylemSorgularını kutucuğundaki işareti kaldır.
Gelelim çözüme.
Ölçüt olarak Form2 ('deki ölçütleri:UNITEKODU ve TARIH) 'yi alan ve kayıt kaynağı PERMESAI olan bir sorgu oluştur. PMSorgu diyelim buna.
Yine ölçüt olarak Form2yi alan, kaynağı PERSONEL olan ve kayıtları sayan bir sorgu daha oluştur. SQL:""SELECT Count(PERSONEL.TCNO) AS SayTCNO FROM PERSONEL WHERE (((PERSONEL.UNITESI)=[Formlar]![Form2]![UniteKodu])); Bu sorgunun adı da MTEklencekler olsun.
Komut4 (PERSONELİ LISTEYE EKLE) 'ün OlayYordamına:
Acaba oldu mu ?
Ben yaptım oldu
Öncelikle Araçlar/Seçenekler tıkla ve açılan pencerede Düzen/Bul sekmesindeki Onayla çerçevesindeki EylemSorgularını kutucuğundaki işareti kaldır.
Gelelim çözüme.
Ölçüt olarak Form2 ('deki ölçütleri:UNITEKODU ve TARIH) 'yi alan ve kayıt kaynağı PERMESAI olan bir sorgu oluştur. PMSorgu diyelim buna.
Yine ölçüt olarak Form2yi alan, kaynağı PERSONEL olan ve kayıtları sayan bir sorgu daha oluştur. SQL:""SELECT Count(PERSONEL.TCNO) AS SayTCNO FROM PERSONEL WHERE (((PERSONEL.UNITESI)=[Formlar]![Form2]![UniteKodu])); Bu sorgunun adı da MTEklencekler olsun.
Komut4 (PERSONELİ LISTEYE EKLE) 'ün OlayYordamına:
Kod:
Private Sub Komut4_Click()
On Error GoTo Err_Komut4_Click 'Bu satır hata durumunda gidilecek satır
'Koşulumuz;
If IsNull(DLookup("Kimlik", "PMSorgu")) Then 'PMSorguda listelenmiş kayıt var mı yok mu?? ve
'IsNull ise yani yoksa kayıt eklemeye uygundur demektir ,
'Kaç personel eklendiğini bulmak ve mesaj olarak göstermek için;
MsgBox (DLookup("SayTCNO", "MTEklenecekler") & " personel eklendi")
'Ekleme Sorgusunu çalıştırmak için;
DoCmd.OpenQuery "MESAITABLOSUNAEKLE", acNormal, acEdit
Else 'Şimdi koşulumuz olumsuz ise yani aynı ölçütlerde kayıt var ise;
'Hata için mesajımız;
MsgBox "Mükerrer kayıt hatası" & ChrW(13) & _
"Lütfen UNITEKODU ve TARIH kutularını kontrol ediniz."
'UniteKodu kutusuna yeniden odaklanması için kodumuz;
UniteKodu.SetFocus
End If
Exit_Komut4_Click: 'ÇIKIŞ satırı
Exit Sub
Err_Komut4_Click:
MsgBox Err.Description ' Accessin hata iletisi
Resume Exit_Komut4_Click 'ÇIKIŞ satırına dön
End Sub
Ben yaptım oldu
Saygılar, iyi çalışmalar.
*********
Kod, formül vs bilmek önemlidir ama mantığını yürütebilmek, nerede ve nasıl kullanılacağını bilmek daha önemlidir.
*********
Kod, formül vs bilmek önemlidir ama mantığını yürütebilmek, nerede ve nasıl kullanılacağını bilmek daha önemlidir.
Konuyu Okuyanlar: 1 Ziyaretçi