3 aydan önceki tarihleri silmek
Tarih
25/01/2014 00:14
Konu Sahibi
kaleci
Yorumlar
9
Okunma
2648
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



kaleci
Aktif Üye
Kullanici Avatari
Aktif Üye
60
21/12/2012
0
14/04/2014,00:30
Çözüldü 
Merhaba arkadaşlar,

Aşağidaki kod, 3 aydan önceki verileri ay, ay siliyor.

Kod:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub cmdLöschen_2_Click()
'üc aydan eski tarihleri siler
Select Case MsgBox("Wollen Sie die Datensätze, die länge als 6 Monate sind, wirklich löschen?", _
              vbYesNo Or vbQuestion Or vbDefaultButton1, "Datensatz löschen")
       Case vbYes
            MsgBox "Löschen..."
CurrentDb.Execute "DELETE DateDiff('m',[Datum1],Date()) AS Ifade1, * FROM tblKfzPersDE IN '' [ms access;pwd=test;database=D:\KfzPersonenDB.accdb] WHERE (((DateDiff('m',[Datum1],Date()))>=3));"
       Case vbYes
            MsgBox "nicht Löschen..."
End Select
'Formular aktualisieren
Me.Requery
Me.untFrmKfz.Requery
End Sub


Bunu gün olarak ayarlama imkanımız varmıdır.
Yani 24.01.2014 de kodu çaliştırdıgım zaman 01.11.2013 den önceki verileri siliyor.

Benim istediğim
Kodu 24.01.2014 de çaliştırırsam 24.10.2013 tarihinden önceki verileri silsin.
Kodu 25.01.2014 de çaliştırırsam 25.10.2013 tarihinden önceki verileri silsin.
Kodu 26.01.2014 de çaliştırırsam 26.10.2013 tarihinden önceki verileri silsin.

Ben üç aydan eski verileri kaydetmek istemediğim gibi, üç aylık verilerinde kayıtlı olmasını istiyorum. Şu anda kodu çalıştırdığımda 2 ay 1,2,3….29,30. Günlük veriler kayıtta kalıyor.

Yardımcı olursanız menmun olurum

Saygılarımla
kaleci

Cevapla


alpeki99
Yeniden başlayabilmek...
Kullanici Avatari
Uzman
O....
5.975
29/10/2008
Ordu
Ofis 2013 32 Bit
Çözüldü 
Bugünün tarihinden 90 gün çıkartın. Elde ettiğiniz tarihi Where için şart olarak kullanın. Where tarih > 90 gün önceki tarih
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla


alpeki99
Yeniden başlayabilmek...
Kullanici Avatari
Uzman
O....
5.975
29/10/2008
Ordu
Ofis 2013 32 Bit
Çözüldü 
3 ay önceki tarihi şu şekilde bulabilirsiniz :

Visual Basic Code
DateAdd("m", -3, Date)


24.01.2014 isek 24.10.2013 ü tarih olarak elde edersiniz. Elde edilen tarihi Where için şart göstereceksiniz.

AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla


kaleci
Aktif Üye
Kullanici Avatari
Aktif Üye
60
21/12/2012
0
14/04/2014,00:30
Çözüldü 
alpeki99 hocam,

hizli bir sekilde cevap verdigin icin tesekkür ederim, ama dedigini yapinca kod calismiyor. Galiba söylediginizi yanlis veya eksik uyguluyorum.

Saygilarimla
kaleci
Cevapla


alpeki99
Yeniden başlayabilmek...
Kullanici Avatari
Uzman
O....
5.975
29/10/2008
Ordu
Ofis 2013 32 Bit
Çözüldü 
Ekte yer alan örnek proje işinizi görecektir. Mümkün mertebe yorum satırı eklemeye çalıştım:

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
Sub TarihleriEtiketteGoster()

  lblBugun.Caption = Date
  lblUcAyOncekiTarih.Caption = DateAdd("m", -3, Date)
  
End Sub

Private Sub btnKayitSil_Click()
Dim ucAyOncekiTarih As Date
Dim ucAyOncekiTarihSon As String

  ' Formu kullanırken gece yarısını geçebileceği için kullanıcıyı yanıltmayalım tarihi tekrar formda gösterelim
  TarihleriEtiketteGoster
  
  ' 3 ay önceki tarihi bulalım
  ucAyOncekiTarih = DateAdd("m", -3, Date)
  
  ' Türkçe tarih ile ingilizce tarih uyumu için işlem yapalım
  ucAyOncekiTarihSon = Format(ucAyOncekiTarih, "dd""/""mm""/""yyyy")
  
  DoCmd.SetWarnings False
  
    ' Üç aydan eski kayıtları silecek olan sql cümlemiz
    DoCmd.RunSQL "DELETE FROM tblMusteriler WHERE (Tarih < #" & ucAyOncekiTarihSon & "#)"
    
    ' Silinen kayıtlar olduğu için liste kutusunuda güncelleyelim
    lstKayitListesi.Requery
  
  DoCmd.SetWarnings True

End Sub

Private Sub btnTestKayitlariniEkle_Click()

  DoCmd.SetWarnings False
    
    ' Formu kullanırken gece yarısını geçebileceği için kullanıcıyı yanıltmayalım tarihi tekrar formda gösterelim
    TarihleriEtiketteGoster
  
    ' Tablodaki eski kayıtları silelim
    DoCmd.RunSQL "DELETE FROM tblMusteriler"
    
    ' Test için tabloya yedi kayıt ekleyelim
    DoCmd.RunSQL "INSERT INTO tblMusteriler (AdSoyad,Tarih) VALUES ('AccessTr.Net','" & DateAdd("m", -3, Date) & "')"
    DoCmd.RunSQL "INSERT INTO tblMusteriler (AdSoyad,Tarih) VALUES ('AccessTr.Net 1','" & DateAdd("m", -1, Date) & "')"
    DoCmd.RunSQL "INSERT INTO tblMusteriler (AdSoyad,Tarih) VALUES ('AccessTr.Net SİL 1','" & DateAdd("m", -5, Date) & "')"
    DoCmd.RunSQL "INSERT INTO tblMusteriler (AdSoyad,Tarih) VALUES ('AccessTr.Net 102','" & DateAdd("m", -2, Date) & "')"
    DoCmd.RunSQL "INSERT INTO tblMusteriler (AdSoyad,Tarih) VALUES ('AccessTr.Net Test','" & DateAdd("m", -1, Date) & "')"
    DoCmd.RunSQL "INSERT INTO tblMusteriler (AdSoyad,Tarih) VALUES ('AccessTr.Net SİL 2','" & DateAdd("m", -6, Date) & "')"
    DoCmd.RunSQL "INSERT INTO tblMusteriler (AdSoyad,Tarih) VALUES ('AccessTr.Net alpeki99','" & DateAdd("m", 1, Date) & "')"
  
  DoCmd.SetWarnings True
  
    ' Tabloya eklenen verileri liste kutusunda gösterelim
    lstKayitListesi.Requery
  
  ' Kullancıyı bilgilendirelim
  MsgBox "Test için veritabanına 7 kayıt eklenmiştir." & vbCrLf & vbCrLf & "Şimdi ikinci butona basarak 3 aydan eski tarihli kayıtları silebilirsiniz.", vbInformation, "AccessTr.Net - alpeki99"

End Sub

Private Sub Form_Load()

  ' Bugünün tarihi ve üç ay öncenin tarihini form üzerinde gösterelim ki farkı görebilsin.
  TarihleriEtiketteGoster

End Sub



Ek Dosyalar
.rar   Uc_Aydan_Onceki_Kayitlari_Sil.rar (Dosya Boyutu: 26,97 KB / İndirme Sayısı: 10)
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla


kaleci
Aktif Üye
Kullanici Avatari
Aktif Üye
60
21/12/2012
0
14/04/2014,00:30
Çözüldü 
Alpeki hocam,

ellerine sağlik, çok güzel de bir örnek vermişsin.

saygılarımla
kaleci
Cevapla







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  Bugünki Tarihden önceki veriler 53rize 8 131 27/11/2016, 13:18 53rize
  Form üzerinden Klasördeki bir dosyayı silmek musteri53 2 66 20/11/2016, 08:06 musteri53
  Kayıtlar arasında dolaşmak (Önceki / Sonraki kayıt) koruyucu 10 262 25/10/2016, 23:23 koruyucu
  Metin kutusuna önceki kayıdı getirme odin 6 233 16/08/2016, 18:18 atoz112
  Fatura arşivinden faturaları silmek. m_demir 5 229 02/08/2016, 22:45 m_demir


Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2016 MyBB Group.
DMCA.com Protection Status
© Desing by XSTYLED| Develops by ozanakkaya