Formda Parametrik raporlama sorunu
Tarih
08/02/2012 14:40
Konu Sahibi
QATLET
Yorumlar
7
Okunma
2061
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



QATLET
sevelim & sevilelim
Kullanici Avatari
Aktif Üye
Z....
102
02/02/2012
20
Eskişehir
Ofis 97
06/10/2016,11:20
Çözüldü 
Merhabalar;

Sorunum şudur.
İlişikte gönderdiğim uygulamada otorapor formunda;

1- Form üst bilgisinde belirlediğim seçimlere göre alt formda filitreli sonuç alıyorum.
2- Bu sonuçlara ulaşabilmek için Değiştir22 butonunu kullanıyorum.
3- Değiştir22 butonunun tıklandığında seçimine girdiğim kodla filitreleme yapıp alt formda filitrelenmiş verilere ulaşıyorum.

SORUN :
Formun üst bilgisinde belirlediğim kriterlerden XTARİH1 ve XTARİH2 alanlarına girdiğim değere ait ( TARİH >= XTARİH1 AND TARİH <= XTARİH2 ) filitreyi uygulayamadım. Yani belirlenen iki tarih aralığındaki kayıtları almak istiyorum.

Öte yandan şayet XTARİH1 alanına veri girip XTARİH2 alanını boş bırakırsam sadece 1 günlük yani XTARİH1 alanına ait kayıtları görmek istiyorum.

Teşekkürler.


Ek Dosyalar
İSTATİSTİK1.rar
[572.27 KB]
Cevapla


ozanakkaya
sledgeab
Kullanici Avatari
Kurucu
O.... A....
9.023
29/01/2008
Denizli
Memur
Ofis 2010 32 Bit
Bugün,14:25
Çözüldü 
(08/02/2012, 14:40)QATLET Adlı Kullanıcıdan Alıntı: Formun üst bilgisinde belirlediğim kriterlerden XTARİH1 ve XTARİH2 alanlarına girdiğim değere ait ( TARİH >= XTARİH1 AND TARİH <= XTARİH2 ) filitreyi uygulayamadım. Yani belirlenen iki tarih aralığındaki kayıtları almak istiyorum.

bu işlem için eklenmesi gereken kod

Visual Basic Code
strCriteria = strCriteria & " AND [TARİH] Between #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "# AND #" & Format(CDate(Me.XTARİH2), "mm/dd/yyyy") & "#"


(08/02/2012, 14:40)QATLET Adlı Kullanıcıdan Alıntı: Öte yandan şayet XTARİH1 alanına veri girip XTARİH2 alanını boş bırakırsam sadece 1 günlük yani XTARİH1 alanına ait kayıtları görmek istiyorum.

bu işlem için eklenmesi gereken kod üstteki ile birlikte;

Visual Basic Code
    If IsNull(Me.XTARİH2) Then
                strCriteria = strCriteria & " AND [TARİH] = #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "#"
    Else
                strCriteria = strCriteria & " AND [TARİH] Between #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "# AND #" & Format(CDate(Me.XTARİH2), "mm/dd/yyyy") & "#"
    End If




Sonuç olarak, butonun tıklandığında olayındaki kodu aşağıdaki ile değiştirilmesi gerekli.

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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
Private Sub Değiştir22_Click()
On Error GoTo Err_Değiştir22_Click

Dim strCriteria As String
If Değiştir22 = True Then
Me.Değiştir22.Caption = "TÜMÜNÜ GÖSTER"
Me.XTAŞIMATÜRÜ.Enabled = False
XMÜŞTERİNO.Enabled = False
XEŞYACİNSİ.Enabled = False
XTARİH1.Enabled = False
XTARİH2.Enabled = False
XÇIKIŞVARIŞ.Enabled = False
XÖDEMETÜRÜ.Enabled = False
XÖDEMEŞEKLİ.Enabled = False
XİLTİSAKHATTI.Enabled = False
strCriteria = ""
 
 
 If Nz(Me!XTAŞIMATÜRÜ) <> "" Then
 If Nz(strCriteria) = "" Then
 strCriteria = "[TAŞIMATÜRÜ] Like " & Chr$(34) & Me!XTAŞIMATÜRÜ
 Else
 strCriteria = strCriteria & " AND [TAŞIMATÜRÜ] Like " & Chr$(34) & "*" & Me!TAŞIMATÜRÜ & "*"
 End If
 If Right$(Me!XTAŞIMATÜRÜ, 1) = "*" Then
 strCriteria = strCriteria & Chr$(34)
 Else
 strCriteria = strCriteria & "*" & Chr$(34)
 End If
 End If
 
 
 If Nz(Me!XMÜŞTERİNO) <> "" Then
 If Nz(strCriteria) = "" Then
 strCriteria = "[MÜŞTERİNO] Like " & Chr$(34) & Me!XMÜŞTERİNO
 Else
 strCriteria = strCriteria & " AND [MÜŞTERİNO] Like " & Chr$(34) & "*" & Me!XMÜŞTERİNO & "*"
 End If
 If Right$(Me!XMÜŞTERİNO, 1) = "*" Then
 strCriteria = strCriteria & Chr$(34)
 Else
 strCriteria = strCriteria & "*" & Chr$(34)
 End If
 End If
 
 If Nz(Me!XÇIKIŞVARIŞ) <> "" Then
 If Nz(strCriteria) = "" Then
 strCriteria = "[ÇIKIŞVARIŞ] Like " & Chr$(34) & Me!XÇIKIŞVARIŞ
 Else
 strCriteria = strCriteria & " AND [ÇIKIŞVARIŞ] Like " & Chr$(34) & "*" & Me!XÇIKIŞVARIŞ & "*"
 End If
 If Right$(Me!XÇIKIŞVARIŞ, 1) = "*" Then
 strCriteria = strCriteria & Chr$(34)
 Else
 strCriteria = strCriteria & "*" & Chr$(34)
 End If
 End If
 
 If Nz(Me!XEŞYACİNSİ) <> "" Then
 If Nz(strCriteria) = "" Then
 strCriteria = "[EŞYACİNSİ] Like " & Chr$(34) & Me!XEŞYACİNSİ
 Else
 strCriteria = strCriteria & " AND [EŞYACİNSİ] Like " & Chr$(34) & "*" & Me!XEŞYACİNSİ & "*"
 End If
 If Right$(Me!XEŞYACİNSİ, 1) = "*" Then
 strCriteria = strCriteria & Chr$(34)
 Else
 strCriteria = strCriteria & "*" & Chr$(34)
 End If
 End If
 
 
 If Nz(Me!XÖDEMETÜRÜ) <> "" Then
 If Nz(strCriteria) = "" Then
 strCriteria = "[ÖDEMETÜRÜ] Like " & Chr$(34) & Me!XÖDEMETÜRÜ
 Else
 strCriteria = strCriteria & " AND [ÖDEMETÜRÜ] Like " & Chr$(34) & "*" & Me!XÖDEMETÜRÜ & "*"
 End If
 If Right$(Me!XÖDEMETÜRÜ, 1) = "*" Then
 strCriteria = strCriteria & Chr$(34)
 Else
 strCriteria = strCriteria & "*" & Chr$(34)
 End If
 End If
 
 If Nz(Me!XÖDEMEŞEKLİ) <> "" Then
 If Nz(strCriteria) = "" Then
 strCriteria = "[ÖDEMEŞEKLİ] Like " & Chr$(34) & Me!XÖDEMEŞEKLİ
 Else
 strCriteria = strCriteria & " AND [ÖDEMEŞEKLİ] Like " & Chr$(34) & "*" & Me!XÖDEMEŞEKLİ & "*"
 End If
 If Right$(Me!XÖDEMEŞEKLİ, 1) = "*" Then
 strCriteria = strCriteria & Chr$(34)
 Else
 strCriteria = strCriteria & "*" & Chr$(34)
 End If
 End If
 
 If Nz(Me!XİLTİSAKHATTI) <> "" Then
 If Nz(strCriteria) = "" Then
 strCriteria = "[İLTİSAKHATTI] Like " & Chr$(34) & Me!XİLTİSAKHATTI
 Else
 strCriteria = strCriteria & " AND [İLTİSAKHATTI] Like " & Chr$(34) & "*" & Me!XİLTİSAKHATTI & "*"
 End If
 If Right$(Me!XİLTİSAKHATTI, 1) = "*" Then
 strCriteria = strCriteria & Chr$(34)
 Else
 strCriteria = strCriteria & "*" & Chr$(34)
 End If
 End If
 
 ' If Len(Me.XTARİH2) = 0 Then ' (((alt if'e isNull(Me.XTARİH2) eklendi)))
 ' Nz(Me.XTARİH2) = (Me.XTARİH1)
 ' Else
 
 'Nz(Me.XTARİH2) = (Me.XTARİH1)
 ' End If
 
 
 If Nz(Me!XTARİH1) <> "" Then
 If Nz(strCriteria) = "" Then
 strCriteria = "[TARİH] Like " & Chr$(34) & Me!XTARİH1
 Else
 If IsNull(Me.XTARİH2) Then
 strCriteria = strCriteria & " AND [TARİH] = #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "#"
 Else
 strCriteria = strCriteria & " AND [TARİH] Between #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "# AND #" & Format(CDate(Me.XTARİH2), "mm/dd/yyyy") & "#"
 End If
 End If
 ' If Right$(Me!XTARİH1, 1) = "*" Then
 ' strCriteria = strCriteria & Chr$(34)
 ' Else
 ' strCriteria = strCriteria & "*" & Chr$(34)
 ' End If
 End If
 
 
 
 Me.Filter = strCriteria
 Me.FilterOn = True
 DoCmd.GoToRecord , , acFirst


Else
 DoCmd.ShowAllRecords
 Me.Değiştir22.Caption = "KRİTER GİR VE BAS"

 XTAŞIMATÜRÜ = Null
 XMÜŞTERİNO = Null
 XEŞYACİNSİ = Null
 XTARİH1 = Null
 XTARİH2 = Null
 XÇIKIŞVARIŞ = Null
 XÖDEMETÜRÜ = Null
 XÖDEMEŞEKLİ = Null
 XİLTİSAKHATTI = Null

 Me.XTAŞIMATÜRÜ.Enabled = True
 XMÜŞTERİNO.Enabled = True
 XEŞYACİNSİ.Enabled = True
 XTARİH1.Enabled = True
 XTARİH2.Enabled = True
 XÇIKIŞVARIŞ.Enabled = True
 XÖDEMETÜRÜ.Enabled = True
 XÖDEMEŞEKLİ.Enabled = True
 XİLTİSAKHATTI.Enabled = True


End If
 

Exit_Değiştir22_Click:
 Exit Sub

Err_Değiştir22_Click:
 MsgBox Err.Description
 Resume Exit_Değiştir22_Click
End Sub

Cevapla


QATLET
sevelim &amp; sevilelim
Kullanici Avatari
Aktif Üye
Z....
102
02/02/2012
20
Eskişehir
Ofis 97
06/10/2016,11:20
Çözüldü 
Merhabalar;
göndermiş olduğunuz kodu aynen girmeme karşılık iki tarih arası filitrelemede hiç bir veri gelmiyor.
Sanırım ben bir hata yapıyorum. Ama hatamı bir türlü bulamadım.

Dosyayı göndermiş olduğunuz kodun işlenmiş hali ile ekliyorum.
Nerede hatam var bilemiyorum.
İlginize şimdiden teşekkürler.

Ek Dosyalar
İSTATİSTİK.rar
[583.18 KB]
Cevapla


accessman

Kullanici Avatari
Onursal
2.367
31/10/2008
425
Denizli
Ofis 2003
20/09/2016,00:20
Çözüldü 
ben de tüm formlar gözükmüyor
@benbendedeilem
Cevapla


ozanakkaya
sledgeab
Kullanici Avatari
Kurucu
O.... A....
9.023
29/01/2008
Denizli
Memur
Ofis 2010 32 Bit
Bugün,14:25
Çözüldü 
2. nolu mesajdaki 122 nolu satır.

Visual Basic Code
strCriteria = "[TARİH] Like " & Chr$(34) & Me!XTARİH1


bu kodu aşağıdaki ile değiştir.

Visual Basic Code
 strCriteria = "[TARİH] = #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "#"


Deneme yaptım, problem çıkmadı.

(09/02/2012, 16:18)accessman Adlı Kullanıcıdan Alıntı: ben de tüm formlar gözükmüyor

Uygulamadaki bazı formlar gizlenmiş, ofis 2003'te yerini tam hatırlamıyorum ama, "araçlar/seçenekler/gizli nesneleri göster" gibi bir yerde idi.
Cevapla


QATLET
sevelim &amp; sevilelim
Kullanici Avatari
Aktif Üye
Z....
102
02/02/2012
20
Eskişehir
Ofis 97
06/10/2016,11:20
Çözüldü 
Göndermiş olduğunuz aşağıdaki kodu ilişikteki dosyada da görüleceği üzere aynen ekledim.

**********************************************

If Nz(Me!XTARİH1) <> "" Then
If Nz(strCriteria) = "" Then
strCriteria = "[TARİH] = #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "#"
Else
If IsNull(Me.XTARİH2) Then
strCriteria = strCriteria & " AND [TARİH] = #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "#"
Else
strCriteria = strCriteria & " AND [TARİH] Between #" & Format(CDate(Me.XTARİH1), "mm/dd/yyyy") & "# AND #" & Format(CDate(Me.XTARİH2), "mm/dd/yyyy") & "#"
End If
End If
End If

**********************************************
komut butonuna bastığımda

[TARİH] = # TARİH1 alanına girdiğim değer # ' sorgu ifadesi içindeki Tarihte söz dizim hatası

iletisi alıyorum.

Sizce nedeni ne olabilir.



Ek Dosyalar
İSTATİSTİK1.rar
[598.37 KB]
Cevapla







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  Formda İsim yazdığımda tablodan veri gelmesi 53rize 6 155 27/11/2016, 13:36 53rize
  Access Formda Tümünü Seç Buton Olay Yordamı Ekleme ? mehami 7 297 25/11/2016, 18:36 mehami
  Formdaki bir alan göre alt formda alanları gizleme enderya 2 84 20/11/2016, 19:34 ozanakkaya
  Alt Formda Satır Silindiğinde Yeniden Hesaplatmak shalala 2 143 17/11/2016, 09:44 shalala
  Sorgudaki değişime göre formda uyarı vermek mehmetb84 4 143 16/11/2016, 23:08 mehmetb84


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