28-10-2009, 17:06
Merhaba değerli arkadaşlar..
Bazen, uygulamalarımızı başkalarının kullanımına açtığımızda tüm inisiyatiflerin yine de bizde olmasını istediğimiz durumlar olabiliyor.. Forumumuzu sürekli takip eden üyelerimiz bilir, bu konuda daha önce Gelişmiş Kullanıcı ve Grup İzinleri Belirleme Örneği adında bir uygulama daha hazırlamıştım.. Bu uygulama ile kullanıcıların yapabileceği işlemleri denetim altına alıyorduk..
Şimdi sizlerle paylaşacağım, KAYIT CASUSU adını verdiğim serinin bu son uygulaması ile de kullanıcıların form üzerinden yaptıkları tüm değişiklikleri kayıt altına alıyoruz..
Bu konuyu biraz daha açmak gerekirse; kullanıcının yaptığı tüm değişiklikler ayrı bir tabloda,
- Kullanıcının adı,
- Değiştirilme zamanı,
- Değişikliğin yapıldığı formun adı,
- Değişikliğin yapıldığı kayıt kaynağı (tablo ya da sorgu ismi),
- Hangi kaydın değiştiği (kaydın kimlik numarası),
- Değişikliğin yapıldığı denetim adı (metin kutusu, açılan kutu vb.),
- Değiştirilen veri,
- Değiştirilen verinin yerine ne girildiği,
- Kayıt tümüyle silindi ise bunun açıklaması,
- Yeni bir kayıt girilmiş ise bunun açıklaması
Kullanıcının sadece metin kutusu ve açılan kutu üzerinden yaptığı değişiklikleri değil onay kutusu veya seçenek grubunda yaptığı kayıt değişiklikleri de görebiliyoruz.. Önemli olan denetimin bir kaynağa bağlı olması..
Çalışmayı uygulamanızda kullanmak için Kayit_Casusu ile Oturum isimli modülleri ve Tbl_Guncelleme_Kaydi isimli tabloyu çekiniz..
Sonrasında hangi formda kullanmak istiyorsanız (Tipi önemli değil. Tek form ya da Sürekli form olabilir) o formun Güncelleştirme Öncesinde kısmına
Kod:
Call KayitCasusu(Form, [Kayıt Kimliği])
yazmanız yeterli..
Burada dikkat etmeniz gereken tek nokta [Kayıt Kimliği] kısmına formunuzdaki benzersiz alanın bulunduğu denetimin ismini yazmanız gerekiyor (PersonelNo, UrunNo vb.).. Bu sayede güncellemelerin hangi kayıt üzerinde yapıldığını öğrenebileceğiz..
Yukarıdaki işlem sadece değiştirilen kayıtları bize bildirir.. Siz, "kullanıcı kaydı sildiğinde veya yeni kayıt eklediğinde de haberim olsun." derseniz eğer, silinme olayı için formunuzun Silindiğinde yordam kısmına
Kod:
Call Silinme(Form, [Kayıt Kimliği])
yazınız.. Yeni kayıt içinse Ekleme Sonrasında yordamına
Kod:
Call Ekleme(Form, [Kayıt Kimliği])
yazmanız yeterli.. [Kayıt Kimliği] kısmını düzenlemeyi unutmayınız..
Uygulamanın üzerinde çalışıldığı örnek ektedir.. Şifreler aynı..: 123
Alıntı: 27 Haziran 2011 Tarihli Güncelleme
- Tarihler arası filtre seçeneği eklendi.
- Listedeki verilerin beş farklı dosya biçiminde dışarı aktarılması için seçenek eklendi..:
- Excel
- Word
- HTML
- Text
- Aktarılan kayıtlar için silinme seçeneği eklendi.
Alıntı: 14 Şubat 2010 Tarihli Güncelleme
Formun üzerine ekleyeceğiniz bir düğmeye aşağıdaki kodu yazarak listenin boşaltılmasını sağlayabilirsiniz
Kod:CurrentDb.Execute "delete from Tbl_Guncelleme_Kaydi"
Liste0.Requery
Bulunamayan yerleri bulmak için önce kaybolmak gerekir.
SORU SORMA KILAVUZU
Giriş | Sormadan Önce | İlgili Forumu dikkatlice seçin | Anlamlı ve duruma uygun konu başlıkları kullanın | Anlamsız soru cümleleri kurmayın | Açık, dilbilgisi kurallarına uygun ve sözdizimlerine dikkate ederek yazın | Sorunuz sizin için çok acil olsa bile, çok acil diye yazmayın | Sorununuz hakkında tam ve aydınlatıcı iletiler yazın | Amacınızı belirtin | Problemin belirtilerini tanımlayın, kendi tahminlerinizi değil | Sorunuz hakkında açık olun | Nezaket asla yaralamaz ve bazen oldukça yararlıdır | Boyut her şey değildir! | Kabalıkla ilgilenmek | Cevabı E-Posta ile istemeyin | İnsanlardan özel mesajla cevap vermelerini istemeyin | Eğer cevabı anlamadıysanız | Şayet bir cevap alamazsanız | Sorununuz çözüldükten sonra küçük bir not ile bildirin | Sorulmaması gereken türde sorular | İyi ve kötü sorular
Sorulara nasıl doğru düzgün cevap verilir
Kaptan Hector Barbossa
SORU SORMA KILAVUZU
Giriş | Sormadan Önce | İlgili Forumu dikkatlice seçin | Anlamlı ve duruma uygun konu başlıkları kullanın | Anlamsız soru cümleleri kurmayın | Açık, dilbilgisi kurallarına uygun ve sözdizimlerine dikkate ederek yazın | Sorunuz sizin için çok acil olsa bile, çok acil diye yazmayın | Sorununuz hakkında tam ve aydınlatıcı iletiler yazın | Amacınızı belirtin | Problemin belirtilerini tanımlayın, kendi tahminlerinizi değil | Sorunuz hakkında açık olun | Nezaket asla yaralamaz ve bazen oldukça yararlıdır | Boyut her şey değildir! | Kabalıkla ilgilenmek | Cevabı E-Posta ile istemeyin | İnsanlardan özel mesajla cevap vermelerini istemeyin | Eğer cevabı anlamadıysanız | Şayet bir cevap alamazsanız | Sorununuz çözüldükten sonra küçük bir not ile bildirin | Sorulmaması gereken türde sorular | İyi ve kötü sorular
Sorulara nasıl doğru düzgün cevap verilir