Skip to main content

AccessTr.neT


Form Üzerinden Kriterleri Girilen Sorgu Kriter Alanı Boş İse Herşeyi Sorgulasın

Form Üzerinden Kriterleri Girilen Sorgu Kriter Alanı Boş İse Herşeyi Sorgulasın

#6
    If Not IsNull(Me.txt_Kalinlik) Then
strWhere = strWhere & "([KALINLIK] Like ""*" & Me.txt_Kalinlik & "*"") AND "
End If

şeklinde 8 tane if bloğu var. Üstteki kodda txt_Kalinlik metin kutusu boş değil ise strWhere değişkenine veri tanımlıyor. Yani ölçüte ([KALINLIK] Like ""*" & Me.txt_Kalinlik & "*"") AND kodu ekleniyor. Her if kodu için aralarda AND olarak ekleme yapılıyor.


lngLen = Len(strWhere) - 5
bu kod strWhere, yani sorgudaki ölçütün uzunluğunu hesaplıyor, -5 olmasının sebebi en sona eklenen " AND " şeklindeki 5 karakter harici uzunluğun hesaplanması.

If lngLen <= 0 Then kodu ile, hiç ölçüt eklenmemiş ise tüm verilerin görünebilmesi için çalışacak kodlar.

DoCmd.DeleteObject acQuery, "QRY_KIOLD_FirmaOzel" ' önceki "QRY_KIOLD_FirmaOzel" isimli sorguyu siler
strsql = "SELECT * FROM KODISLEM_old "
Set qdf = CurrentDb.CreateQueryDef("QRY_KIOLD_FirmaOzel", strsql) ' strsql değişkenine tanımlanan sorguyu "QRY_KIOLD_FirmaOzel" adında yeniden oluşturur.
DoCmd.OpenQuery qdf.Name 'oluşturulan sorguyu açar

elseden sonraki kodlar hesaplanan IngLen değeri 0'dan büyük veya 0'a eşit değil ise çalışır.


strWhere = Left$(strWhere, lngLen) ' Sorguya eklenecek ölçütü en sondaki " AND " olmadan tanımlar.

DoCmd.DeleteObject acQuery, "QRY_KIOLD_FirmaOzel" ' önceki "QRY_KIOLD_FirmaOzel" isimli sorguyu siler

strsql = "SELECT * FROM KODISLEM_old WHERE " & strWhere

Set qdf = CurrentDb.CreateQueryDef("QRY_KIOLD_FirmaOzel", strsql) ' strsql değişkenine tanımlanan sorguyu "QRY_KIOLD_FirmaOzel" adında yeniden oluşturur. Sorguda ölçüt olduğu için strWhere değerindeki ölçütü sorguya ekler.
DoCmd.OpenQuery qdf.Name ' önceki "QRY_KIOLD_FirmaOzel" isimli sorguyu siler
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
RE: Form Üzerinden Kriterleri Girilen Sorgu Kriter Alanı Boş İse Herşeyi Sorgulasın - Yazar: ozanakkaya - 17/10/2020, 17:03
Task