Access'te bir sorguyu her çalıştırdığınızda giriş istemesini istediğinizde, bir parametre sorgusu oluşturabilirsiniz.
Sorgu, form veya raporlar için döndürülen kayıtları sınırlamada kullanılacak parametre değerlerini toplayacak bir form da oluşturabilirsiniz. Bu makalede sorgu, form ve raporlarda parametre kullanımınızı geliştirmek için formların nasıl kullanılacağı açıklanır.
Bu makalede
- Genel bakış
- Sorgularda parametre kullanma
- Parametre veri türlerini belirtme
- Parametre toplayan bir form oluşturma
- Rapor için parametre toplayan bir form oluşturma
Genel bakış
Sorgunun döndürdüğü kayıt kümesini sınırlamak için, Access'teki bir parametre sorgusunda ölçüt kullanabilirsiniz. Parametre sorgusunun sağladığı iletişim kutuları, sizin amaçlarınız için yetersiz olabilir. Böyle durumlarda, parametre toplama gereksinimlerinizi daha iyi karşılayan bir form oluşturabilirsiniz. Bu makalede, sorgu ve rapor parametresi toplayan bir formun nasıl oluşturulacağı açıklanır. Bu makalede, sorgu oluşturma ve sorgulardaki parametreleri tanımlama hakkında bilgi sahibi olduğunuz varsayılmaktadır. Devam etmeden önce, en azından seçme sorgusu oluşturma hakkında bilgi sahibi olmanız gerekir.
Bu makale, sorgularda parametre kullanımı örnekleri sağlar. Ölçüt belirtme işlemine yönelik kapsamlı bir başvuru sağlamaz.
- Seçme sorgusu oluşturma hakkında daha fazla bilgi için Basit seçme sorgusu oluşturma makalesine göz atın.
- Genel olarak sorgular hakkında daha fazla bilgi için Sorgulara giriş makalesine göz atın.
- Sorgulardaki parametreleri tanımlama hakkında daha fazla bilgi için Sorgu çalıştırırken girdi istemek üzere parametre kullanma makalesine göz atın.
- Sorgularda ölçüt belirtme hakkında daha fazla bilgi için Sorgu ölçütü örnekleri makalesine göz atın.
Sorgularda parametre kullanma
Sorguda parametre kullanmak, ölçüt kullanan bir sorgu oluşturmak kadar kolaydır. Bir sorguyu, bir parça numarası gibi tek bir bilgi veya iki tarih gibi birden fazla bilgi isteyecek şekilde tasarlayabilirsiniz. Her parametre için, bir parametre sorgusu, sizden o parametre için bir değer isteyen ayrı bir iletişim kutusu görüntüler.
Sorguya parametre ekleme
Bir seçim sorgusu oluşturun ve sorguyu Tasarım görünümünde açın.
Parametrenin uygulanmasını istediğiniz alanın Ölçüt satırında, parametre iletişim kutusunda görüntülenmesini istediğiniz metni köşeli ayraç içinde girin. Örneğin:
[Başlangıç Tarihi]
Parametre sorgusunu çalıştırdığınızda istem, bir iletişim kutusunda köşeli ayraçlar olmadan görüntülenir.
Parametre istemlerinizle bir ifade de kullanabilirsiniz, örneğin:
[Başlangıç Tarihi]ve[Bitiş Tarihi] ArasındaNot
Her parametre istemi için ayrı bir iletişim kutusu görüntülenir. İkinci örnekte, Başlangıç Tarihi ve Bitiş Tarihi için birer tane olmak üzere iki iletişim kutusu görüntülenir.
Parametre eklemek istediğiniz her alan için 2. adımı yineleyin.
Yukarıdaki adımları kullanarak aşağıdaki sorgu türlerinden herhangi birine parametre ekleyebilirsiniz: Seç, Çapraz Tablo, Sonuna Ekle, Tablo Yap veya Güncelleştir.
Aşağıdaki adımları izleyerek bir birleşim sorgusuna bir parametre de ekleyebilirsiniz:
- Birleşim sorgusunu SQL görünümünde açın.
- Parametre isteminde bulunmasını istediğiniz tüm alanları içeren bir WHERE yan tümcesi ekleyin.
WHERE yan tümcesi zaten varsa, parametre istemi kullanmak istediğiniz alanların tümcede olup olmadığına bakın ve yoksa ekleyin. - WHERE yan tümcesinde ölçüt kullanmak yerine parametre istemi kullanın.
Parametre verisi türlerini belirtme
Parametrenin hangi tür verileri kabul edeceğini de belirtebilirsiniz. Herhangi bir parametre için veri türünü belirtebilirsiniz, ancak sayısal veriler, para birimi veya tarih/saat verileri için veri türünü belirtmek özellikle önemlidir. Parametrenin kabul edebileceği veri türünü belirttiğinizde, yanlış türde veri giren (örneğin, para birimi beklenen bir parametreye metin giren) kullanıcılara daha açıklayıcı bir hata iletisi gösterilir.
Not
Bir parametre metin verisi kabul edecek şekilde yapılandırılmışsa, her girdi metin olarak yorumlanır ve hiçbir hata iletisi görüntülenmez.
Bir sorgudaki parametrelerin veri türünü belirtmek için şu adımları izleyin:
- Sorgu Tasarım görünümünde açıkken, Tasarım sekmesinin Göster/Gizle grubunda Parametreler'i tıklatın.
- Sorgu Parametreleri iletişim kutusundaki Parametre sütununda, veri türünü belirtmek istediğiniz her parametre için parametre istemini yazın. Parametrelerin, sorgu tasarım kılavuzundaki Ölçüt satırında kullandığınız parametre istemleriyle eşleştiğinden emin olun.
- Veri Türü sütununda, her parametre için veri türünü seçin.
Parametre toplayan bir form oluşturma
Parametre sorguları, parametre toplayan yerleşik bir iletişim kutusu içerse de bu, yalnızca temel işlevleri sağlar. Parametre toplamak için form kullanarak aşağıdaki özellikleri elde edersiniz:
- Tarihler için takvim denetimleri gibi veri türüne özgü denetimleri kullanabilirsiniz.
- Toplanan parametrelerde kalıcılık elde eder ve böylece bu parametreleri birden çok sorguda kullanabilirsiniz.
- Parametre toplama için birleşik giriş kutusu veya liste kutusu sağlayabilme olanağı elde eder ve böylece kullanılabilir veri değerleri listesinden seçim yapabilirsiniz.
- Sorguyu açmak veya yenilemek gibi diğer işlevler için denetim sağlayabilirsiniz.
Aşağıdaki videoda, normalde parametre sorgularıyla ilişkilendirilen iletişim kutularını kullanmak yerine, sorgu için parametre toplamaya yönelik basit bir form oluşturma işlemi gösterilir.
Rapor için parametre toplayan bir form oluşturma
Bu senaryo için kullanabileceğiniz çeşitli yollar vardır, ancak biz çoğunlukla makroları kullanan tek bir tekniği göstereceğiz. Rapora yönelik parametre toplayan bir form oluşturmak için şu adımları izleyin.
- 1. Adım: Girdi kabul eden bir form oluşturma
- 2. Adım: Parametre formunun zaten yüklü olup olmadığını denetlemek için bir kod modülü oluşturma
- 3. Adım: Formu ve raporu denetleyen bir makro oluşturma
- 4. Adım: Forma Tamam ve İptal komut düğmelerini ekleme
- 5. Adım: Sorgu ölçütü olarak form verilerini kullanma
- 6. Adım: Rapor olaylarına makro eylemlerini ekleme
- 7. Adım: Deneme
1. Adım: Girdi kabul eden bir form oluşturma
Oluştur sekmesindeki Formlar grubunda Form Tasarımı'na tıklayın.
Aşağıdaki tabloda gösterildiği gibi, tasarım görünümünde özellik sayfasını görüntülemek için F4 tuşuna basın ve sonra form özelliklerini belirtin.
Özellik Ayar Başlık Formun başlık çubuğunda gösterilmesini istediğiniz adı girin. Varsayılan Görünüm Tek Form Form Görünümüne İzin Ver Evet Veri Sayfası Görünümüne İzin Ver Hayır PivotTable Görünümüne İzin Ver Hayır PivotChart Görünümüne İzin Ver Hayır Kaydırma Çubukları Hiçbiri Kayıt Seçicileri Hayır Gezinti Düğmeleri Hayır Kenarlık Stili İletişim Formun toplamasını istediğiniz her parametre için, Tasarım sekmesindeki Denetimler grubunda Metin Kutusu'na tıklayın.
Aşağıdaki tabloda gösterildiği gibi metin kutularının özelliklerini ayarlayın.
Özellik Ayar Ad Parametreyi açıklayan bir ad girin, örneğin, BaşlangıçTarihi. Biçim Parametre alanının veri türünü yansıtan bir biçim seçin. Örneğin, tarih alanı için Genel Tarih'i seçin. Formu kaydedin ve frmÖlçüt gibi bir ad verin.
2. Adım: Parametre formunun zaten yüklü olup olmadığını denetlemek için bir kod modülü oluşturma
Oluştur sekmesindeki Makrolar ve Kod grubunda Modül'e tıklayın.
Visual Basic Düzenleyicisi'nde yeni bir modül açılır.Visual Basic Düzenleyicisi'ne aşağıdaki kodu yapıştırın veya yazın:
Function IsLoaded(ByVal strFormName As String) As Boolean Dim oAccessObject As AccessObject Set oAccessObject = CurrentProject.AllForms(strFormName) If oAccessObject.IsLoaded Then If oAccessObject.CurrentView <> acCurViewDesign Then IsLoaded = True End If End If End FunctionModülü benzersiz bir adla kaydedin ve sonra Visual Basic Düzenleyicisi'ni kapatın.
3. Adım: Formu ve raporu denetleyen bir makro oluşturma
Access makrolarının alt makro özelliklerini kullanarak, yapmamız gereken tüm adımları tek bir makroda tanımlayabiliriz. Bu yordam için gereken çeşitli görevleri denetlemek için İletişim Aç, İletişim Kapat, Tamam ve İptal olmak üzere dört alt makro oluşturacağız. Verilen ekran görüntüsünü kılavuz olarak kullanıp aşağıdaki alt makro ve eylemlerle yeni bir makro oluşturun. Bu örnek için parametre formumuzun frmÖlçüt olarak adlandırıldığını unutmayın. Makronuzu, daha önce oluşturduğunuz formun adıyla eşleşecek şekilde ayarlayın. Ayrıca tüm makro eylemlerini görüntülemek için, Tasarım sekmesindeki Tüm Eylemleri Göster'e tıkladığınızdan emin olun.
Makroyu kaydedin ve kapatın. Makroya Tarih Aralığı Makrosu gibi bir ad verin.
4. Adım: Forma Tamam ve İptal komut düğmelerini ekleme
Daha önce Tasarım görünümünde oluşturduğunuz parametre formunu yeniden açın.
Tasarım sekmesindeki Denetimler grubunda Denetim Sihirbazları Kullan'ın seçili olmadığından emin olun.
Tasarım sekmesindeki Denetimler grubunda Düğme'ye tıklayın.
İmleci formunuzdaki metin kutularının altına getirin ve sonra sürükleyerek Tamam komut düğmesi oluşturun.
Özellik sayfası görünmüyorsa, görüntülenmesi için F4 tuşuna basın.
Aşağıdaki tabloda gösterildiği gibi Tamam düğmesinin özelliklerini ayarlayın.
Özellik Ayar Ad Tamam Başlık Tamam Varsayılan Evet Tıklandığında Makronun adını (örneğin, Tarih Aralığı Makrosu.Tamam) girin. Aşağıdaki tabloda gösterildiği gibi bir İptal komut düğmesi oluşturun ve özelliklerini ayarlayın.
Özellik Ayar Ad İptal Başlık İptal Tıklandığında Makronun adını (örneğin, Tarih Aralığı Makrosu.İptal) girin. Formu kaydedin ve kapatın.
5. Adım: Sorgu ölçütü olarak form verilerini kullanma
Daha önce Tasarım görünümünde oluşturduğunuz sorguyu açın.
Veri ölçütlerini girin. Forms nesnesini, formun adını ve denetimin adını kullanın:
- Örneğin, bir Access veritabanındaki (.accdb veya .mdb) frmÖlçüt adlı bir formda, sorgudaki Başlangıç Tarihi ve Bitiş Tarihi adlı denetimlere başvurmak için aşağıdaki ifadeyi kullanın:
Between [Formlar]![frmÖlçüt]![Başlangıç Tarihi] And [Formlar]![frmÖlçüt]![Bitiş Tarihi]
- Örneğin, bir Access veritabanındaki (.accdb veya .mdb) frmÖlçüt adlı bir formda, sorgudaki Başlangıç Tarihi ve Bitiş Tarihi adlı denetimlere başvurmak için aşağıdaki ifadeyi kullanın:
6. Adım: Rapor olaylarına makro eylemlerini ekleme
Tasarım görünümünde, kullanmak istediğiniz raporu açın.
Özellik sayfası görünmüyorsa, görüntülenmesi için F4 tuşuna basın.
Raporun Kayıt Kaynağı özelliğinin daha önce tanımladığınız parametre sorgusunu kullandığından emin olun.
Bu iki ek rapor özelliğini de aşağıdaki tabloda gösterildiği gibi ayarlayın.
Özellik Ayar Açıldığında Makronun adını (örneğin, Tarih Aralığı Makrosu.İletişim Aç) girin. Kapatıldığında Makronun adını (örneğin, Tarih Aralığı Makrosu.İletişim Kapat) girin. Access, raporun Aç olayında, Tarih Aralığı Makrosu nesnesine ilişkin İletişim Aç alt makrosunda tanımlanan eylemleri çalıştırır. Benzer şekilde Access, raporu kapattığınızda Tarih Aralığı Makrosu nesnesine ilişkin İletişim Kapat alt makrosunda tanımlanan eylemleri çalıştırır.
Raporu kaydedin ve kapatın.
7. Adım: Deneme
Access nesnelerinin tümünü oluşturduğunuza göre artık deneme zamanı geldi. Raporunuzu Rapor Görünümü veya Baskı Önizleme'de açın ve Access raporu görüntülemeden önce parametre formunuzun iletişim kutusunda açıldığını fark edin. Daha önce oluşturduğunuz metin kutularına gereken ölçütleri girin ve sonra formdaki Tamam komut düğmesine tıklayın. Ardından Access formu gizler (Görünür = Hayır) ve raporu, yalnızca ölçütlerinize uyan verilerle açar. Bu işlem, raporun temel aldığı parametre sorgusu gizli formdaki denetimlerin değerlerini okuyabildiği için işe yarar. Raporu kapattığınızda Access parametre formunu da kapatır.