Log Kaydı Oluşturmak - Baskı Önizleme +- AccessTr.neT (https://accesstr.net) +-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html) +--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html) +--- Konu Başlığı: Log Kaydı Oluşturmak (/konu-log-kaydi-olusturmak.html) |
Cvp: Log Kaydı Oluşturmak - feraz - 16/03/2020 (15/03/2020, 23:39)accessman yazdı: Örnek zaten ekli yani taruzun araçar örneğinin casus formunda sadece ilişkisiz bir metin kutusu eklenecek o kadarMaliesef dediğiniz gibi bir metin kutusu eklemekle denenmiyor. Şunu söyleyebilirimki dosyayı denedim ilişkisiz olayındada Log tutuluyor tabii biraz kodlar değişiyor. Bunun için kullanacağınız form ve tablo örneği gerek nasıl olacaksa.Tabii örnek ekleyin demektende bıkkınlık geldi artık aynı kelimeleri yazmaktan. Dediğim gibi kısaca Tablo ve Form eklerseniz ve yardım etmeye çalışabiliriz.Eklemezsenizde ben kendim için yapıp arşivleyeceğim bilgisayarıma. Dediğim gibi inanın artık bıkkınlık geldi aynı kelimeleri yazmaktan maliesef. Cvp: Log Kaydı Oluşturmak - accessman - 16/03/2020 Baya bi uğraştım her yolu denedim ama galiba metin kutusunun Oldvalue özelliği ilişkisiz iken çalışmıyor Cvp: Log Kaydı Oluşturmak - feraz - 16/03/2020 (16/03/2020, 18:21)accessman yazdı: Baya bi uğraştım her yolu denedim ama galiba metin kutusunun Oldvalue özelliği ilişkisiz iken çalışmıyorAnlatamıyorum galiba yada dosya ekleyin kısmını göremiyorsunuz sadece o kısmı.Oldvalue kısmına gerek yok. Neyse ben vazgeçtim üstad. Cvp: Log Kaydı Oluşturmak - berduş - 17/03/2020 @feraz beyin belirttiği gibi..... teorik olarak önerebileceğim şey tüm formdan çağırabileceğiniz bir dizi oluşturmak alanlara değer atarken bu değerleri diziye yüklemek ve son aşamada eski-yeni kıyaslaması yaparken bu dizi değerini çağırmak olabilir
satırının altına
satırını ekleyerek diziyi tanmladıkilk değeri almak için gerekli kodlar
kontrol sırasında çalıştırılacak kodkırmızı olanlar eklenmiş yeşil olanlar değiştirilmiştir '________________________________________________________________________________________________ x=0 For Each Kontrol In frm Select Case Kontrol.ControlType 'Tüm kontrolleri gözden geçirelim.. Case acTextBox, acComboBox, acCheckBox, acOptionGroup 'Boş verilere değer atayalım.. EskiData =nz(EskDgr(x)) YeniData = nz(kontrol) If EskiData <> YeniData Then 'Diğer değişkenleri tanımyalım Tablo = frm.RecordSource kllnc = AktifKullanici Zmn = Now() Msj = "Kayıt Değiştirildi" 'Değişiklikleri kaydedelim.. Sorgu = "INSERT INTO TGuncellemeKaydi ([Tablo], [KayitNo], [FormAdi], [DenetimAdi], " _ & "[EskiVeri], [YeniVeri], [Kullanici], [Zaman],[Silinme]) " _ & "VALUES ('" & Tablo & "', '" & KayitKimligi & "', '" & frm.name & "', " _ & "'" & Kontrol.name & "', '" & EskiData & "', '" & YeniData & "', " _ & "'" & kllnc & "', '" & Zmn & "', '" & Msj & "')" CurrentDb.Execute Sorgu End If x=x+1 End Select Next Kontrol '__________________________________________________ gerisi size kalmış Not: diziye değer atama mantığı for each döngüsünün nesneleri aynı sırayla aldığı varsayımı üzerine kurulu hatalı bir varsayım olabilir o durumda diziye nesne adı ve değeri atanıp tekrar döngüyle kontrol edilebilir Cvp: Log Kaydı Oluşturmak - accessman - 17/03/2020 çok teşekkürler ilk fırsatta deneyeceğim Cvp: Log Kaydı Oluşturmak - berduş - 17/03/2020 Not: hatırlatma ilişkisiz formlarda tablo adını sizin girmeniz gerekmektedir Ayrıca Kontrol.Name sizin nesneye verdiğiniz isim olduğundan tablodaki alan adı ve nesne adı ilişkisiz olduğundan ilk bakışta hangi alanın değiştiği anlasilamayabilir. |