Mükerrer Kayıt Engelleme

1 2
27/06/2009, 12:14

Aykay

Değerli arkadaşlar merhaba;
Belli kriterlerde kayıt oluştururken onun kayıtlı olduğunu uyaran ve kayıt yapmasını engelleyecek bir uyarıcı oluşturmak istiyorum.
Örnekte olduğu gibi kayıt oluştururken mükerrer kayıdın önüne geçecek herhangi bir uyarıcı bulunmamaktadır. Söz konusu örnekte tek personele ve çok personele aylık puantaj oluşturuluyor. Bu oluşum sağlanırken hangi ay seçildiyse o ayın bütün gününü (örn: 01.06.2009-30.06.2009), yılı ve en sonda seçilen personeli kontrol ederek mükerrer kayıdın önüne geçerek ekrana uyarı getirecek.
Örnek1: Haziran-2009-Deneme1 Deneme seçilip daha sonra tek personel puantaj oluştur butonuna basıldığında bu kayıt daha önce (Haziran-2009-Deneme1 Deneme) yapıldığını uyarıp engelleyecek.
Örnek2: Haziran-2009 seçilip daha sonra çok personel puantaj oluştur butonuna basıldığında bu kayıt daha önce (Haziran-2009) yapıldığını uyarıp engelleyecek.

Teşekkürler
27/06/2009, 13:23

Nurullah_Serdar

ikinci sorunu anlamadım işin gerçeği. ama ilk sorunun cevabını gönderiyorum. sanırım istediğiniz olay bu.
27/06/2009, 14:16

okileturc

Eğer mükerrer kaydı kod ile kontrol etmek istemiyorsanız
2 alternatif daha önerebilirim 1. Çoklu birincil anahtar :
kaydın unique olmasını gerektiren tablo alanlarını mouse
ile seçip birincil anahtara basarsanız. Resimde olduğu
gibi Personel ve Tarih birleşimini birincil anahtar olarak takip
edeceğinden ayni kişiye ayni tarihle kayıt açamayacaktır



2. metod ise tablonuza "KONTROL" adında bir alan
ekleyin Türü "Metin" , Gerekli "Evet", Sıfır uzunluk
izni "Hayır", Sıralı " Evet, Kayıt tekrarı yok"
Burada yapmanız gereken her yeni kayıt eklediğinizde
KONTROL alanına bilgi atmak
me.[KONTROL]=me.[PERSONEL_ID]&me.[TARIH]



Kolay gelsin
27/06/2009, 21:04

Aykay

Sayın Okileturc hocam;
Örneğinizi ilgili çalışmada denedim ama bir türlü çalıştıramadım. Size zahmet uygulama üzerinde çalışır vaziyet de gönderebilir misiniz? Örneği tekrar ekliyorum.
Saygılar,
Teşekkürler
28/06/2009, 10:35

okileturc

1. seçeneği ekte gönderiyorum
TBLPUANTAJCET tablosunda
PERSONEL_ID ve
PUANTAJ_TARIH alanlarını
birleşik birincil anahtar olarak işaretledim
Ayni isim ve tarihli 2. bir kayıt
eklenmeyecektir.

Kolay gelsin
Bu da 2. örnek
PUANTAJKONTROL alanı ekledim
Mevcut kayıtlarınızı
PUANTAJKONTROL=PERSONEL_ID & PUANTAJ_TARIH
olarak güncelledim ve alana kayıt tekrarı yok
özelliği verdim. yalnız burada dikkat edilmesi gereken
konu yeni puantaj kartı eklediğiniz sorgularda
mutlaka PUANTAJKONTROL=PERSONEL_ID & PUANTAJ_TARIH
kodunu bu KONTROL alanına kayıt atmak için
kullanmanız

Kolay gelsin
28/06/2009, 12:29

Aykay

Emeğinize sağlık hocam ve diğer ilgili hocalarım;
Yine sayenizde çözebileceğim bir sorun var.
Çalışmadaki ad soyad açılan kutu bölümünde;
Satır kaynak türü= Tablo/Sorgu
Satır Kaynağı=TBLPERSONEL
seçtiğim zaman veri oluşturmuyor. Fakat bu bu verileri TBLPUANTAJCET den aldığımda sorun çözülüyor. Ama bu seferde bu tablo sıfırdan, yani boş iken oluşturulmak istendiğinde yine hata veriyor ve oluşturmuyor. Bu seferde tabloda kayıt olmayınca adsoyad açılan kutusunda herhangi bir veri bulunmuyor. Her zamanda ilgili tablodan adsoyad alamam ki veri olmadığında ve yeni adsoyad kayıt etmek istediğimde yine sıknıtı ile karşılacağım.
Umarım ifade edebildim.
Teşekkürler.
1 2