DOKUMANISTAN

Access Ay Bazlı Rapor Oluşturma #33

Tablonuzda verisi olmadığı halde hesaplama yaparak yeni verileri raporunuzda gösterebilirsiniz. Bu örneğimizde Tarih alanındaki verilerden Ay isimleri çıkarmak istiyorum. Ay isimlerini bulduktan sonra da gruplayarak verilerin toplamını görmek istiyorum. Bu sebeple tarihten verileri alarak Ay Bazlı Rapor oluşturacağız.

Ürün Listesi

Önce istediğimiz Rapor için bir sorgu oluşturalım.

Rapor için Ay bazlı Gruplanmış Rapor Oluşturma

Oluştur – Sorgu Tasarımı seçip URUN LISTESI alanını seçiyorum.

Ürün Listesi Sorgu Oluşturma

İlk kolonunuz Ayları belirleyeceğimiz Tarih alanı 2 defa ekliyoruz. Birisi Tarihin sayısal hali. Bu alan ile sıralama yapacağız, diğer alanda ise Ayın Metinsel halini listeleyeceğiz. Diğer alanlar ise gruplama diğer bir ifade ile hesaplama işlemi yapılacağından sayısal alanlar seçmeliyiz. Bu sebeple Adet, Fiyat ve Toplam alanlarını seçiyorum.

Ürün Listesi Sorgu Tasarımı

Tarih’den Ay Değerini Almak

İlk tarih alanı Sayısal tarih değerleri gelsin. Bunun için tarih verisi yerine AY_NO: Month([Tarih]) yazıyorum.

Ay Bazlı Rapor Formülü

AY_NO : İki Nokta karakterinden önce yazılan değerler Kolon ismi olarak alınır.

Month :  Tarih alanındaki değerden sadece ay kısmını sayısal olarak alır. Örneğin Month(03.06.2005) formülü yazarsak formül bize 6 değerini verir.

Sırala : Artan

Ay isimleri Ocak, Şubat … şeklinde sıralanması olsun istiyorum. Ancak Metinsel Değerlerse sıralama harf sıralaması ile olacağından sayısal değeri de sorguya dahil ettim. Çıkan sayısal değerleri de Artan şekilde sıralıyorum.

Sayısal Ay Numarasından Metinsel Ay Değerini Almak

İkinci tarih alanı ise Metinsel olarak Ocak gibi değer gelmesini sağlayalım.  Bunun için ikinci tarih alanına AY_ADI: MonthName(Month([Tarih])) şekilde formül yazıyoruz.

Ay Adı Verme Rapor Tasarimi

AY_ADI : İki Nokta karakterinden önce yazılan değerler Kolon ismi olarak alınır.

MountName  : 1 ile 12 arasında sayısal olarak verilen değeri Ay ismine çevirir. Örneğin MountName(6) yazarsak Haziran Değerini verir.

Sorguyu çalıştırdığımda aşağıdaki şekilde veri elde etmiş olacağız.

Tarihten Ay Adı Görünümü

Amacım her ay değerinden 1 tane olsun. Diğer Adet, Fiyat ve Toplam alanlarını da toplayarak ay bazlı toplam değerlerini vermesini istiyorum.  Exceldeki Özet Tablo gibi düşünebiliriz.

Bunun için Sorgu tasarımına tekrar dönüyoruz. Tasarım Sekmesindeki Toplamlar alanın seçiyorum.

Toplamlar Formülü Butonu

Sorguya aşağıdaki gibi Toplam Satırı gelecektir.

Ay Bazlı Rapor Gruplama İşlemi

Bu hali ile satır bazlı aynı satırdan birden fazla varsa o alanları gruplayacaktır. Bizim amacımız Ay’ları gruplasın ama diğer sayısal alanlarsa hesaplama işlemi yapsın istiyorum. Bunun için AY_NO ve AY_ADI kolonları Grupla olacak. Böylece tekrar etmeyecek, diğer alanları ise Topla olarak değiştiriyoruz.

Sorgu aşağıdaki şekilde olmalıdır.

Ay Bazlı Rapor Gruplama İşlemi Topla

Veriyi sorguladığımızda aşağıdaki şekilde görülecektir.

Ay Bazlı Rapor Ön İzlemesi

İstediğimiz gibi günlük tarih verilerinden ay bazlı veri çıkarmış olduk.

Sorguyu AYLAR olarak kaydediyorum. İşlemin birinci adımı tamam.

Metinsel olarak Ay bazlı Rapor Oluşturma

Şimdi Sorguda elde ettiğimiz verileri Raporlar kısmında göstereceğiz. İstersek sorguda yaptığımız MountName formülü burada da kullanabilirdik. Formüller Raporda, Formda, Sorguda her yerde çalışır. Ben sorguda kullandım.

Bunun için Boş Rapor açıyorum. Tasarım Görünümüne geçiyorum. Rapor Sayfa tasarımını aşağıdaki şekilde kısaltıyoruz.

Metinsel Ay Bazlı Boş Rapor

Böylece alt alta tekrar işleminde tekrar dizayn ile uğraşmayacağım.

Sorguyu Rapora Bağla ve Alanları Rapora Ekle

İlk kural hangi tablo veya sorgu ile çalışacaksa onu Rapora bağlıyorum.

Bunun için Sağ Tuş Rapor Özellikleri Kayıt Kaynağında hazırladığımız AYLAR sorgusunu seçiyorum.

Özellik Sayfası

Böylece Sorguyu Rapora bağlamış olduk.

Tasarım Sekmesinden Var Olan Alanları Ekle seçiyoruz.

Var Olanları Ekle Butonu

Sağ kısımda Alan Listesi görülecektir. Bu kısımda Sorguda belirlediğimiz alanlar görünmektedir.

Alan Listesi

İlk olarak AY_ADI kolonunu Sayfanın ayrıntı kısmına sürüklüyoruz.

Metinsel Ay Bazlı Ayrıntı Metin Kutusu

Amacım Sayfa Üst Bilgisinde Başlıklar, Verinin geleceği tekrarlanan kısımda Ayrıntı alanında kalmasıdır. Bu işlemi Manuelde yapabiliriz. Ancak menülerden Düzenle alanından yapmanızı tavsiye ederim.

AY alanı seçiliyken Düzenle sekmesinden Sekmeli seçiyoruz.

Sekmeli Butonu

Tasarım aşağıdaki şekilde olacaktır.

Ay Adı Rapor Üst Bilgi

Şimdide diğer alanları istediğiniz sıralamaya göre yanına getiriyoruz. Bunun için AY alanı seçiliyken Alan Listesinden diğer alanları sürükleyip tam alanının biten kısmına getirip bırakıyoruz. Kolonun hizasında yapabileceğini turuncu çizgi belirecek

Ay Adı Metin Kutusu Hizalama

Bıraktığınızda aşağıdaki şekilde hizalı şekilde hemen yanında diğer kolon belirecektir. Diğer alanlarla birlikte aşağıdaki şekilde olacaktır.

Rapor Ay Bazlı Hizalama

Rapor neredeyse tamam. Rapor Görünümünde açıp verileri kontrol edelim.

Raporun Görsel Tasarımı

Raporun Görsel Tasarımı Tablo

Raporda görüldüğü gibi veriler doğru şekilde gelmiş.

Kenardaki çizgilerini kaldırmak için Düzen görünümüne geçiyorum. Tüm alanları seçerek Sağ Tuş Özellikler seçiyorum.  Kenarlık Stilini Saydam olarak değiştiriyorum. Sayısal alanları da aynı yerdeki Biçim ve Ondalık Basamakları alanından aşağıda şekilde seçiyorum.

Rapor Tasarımı Özellik Sayfası

Tekrar Rapor bölümüne geçtiğimizde daha görsel verimiz oldu. Siz tasarımı farklı şekilde yapabilirsiniz.

Rapor Görsel Tasarım Görseli

Form Üzerinden Ay alanındaki Sayıları Metine Çevirme

Eğer form üzerinden Ay ismini değiştirmek isteseydim Rapor Tasarım bölümüne geliyoruz. Ayrıntı kısmında ki AY_NO alanını seçiyoruz ve Özellikler Sayfasındaki Denetim Kaynağına gidip … basıyoruz.

Ay Sayısı Metne Çevirme

İfade Oluşturucusu açılacaktır.  Veri alanında AY_NO kolonu görülmektedir. Biz bu alanı hazır fonksiyonlarla Metin haline dönüştüreceğiz.

Ay Sayısını Metne Çevir MountName

AY_NO yazısını siliyoruz. Aşağıdaki kategorilerden MonthName fonksiyonu çağırıyoruz.

İfade Öğelerinden Fonksiyonlar

  • Yerleşik İşlevleri seçiyoruz.
  • Tarih/Saat Seçiyoruz.
  • MonthName alanını çift tıklıyoruz.

=MonthName([AY_NO]) formülünü yazıyoruz. [AY_NO] değeri daha önce yaptığımız gibi ayın sayısal karşılığını veriyordu. MounthName fonksiyonu ile de Metinsel değere çevirmiş oluyoruz.

Ay Sayısını Metne Çevir Ay Adı

Rapora Toplam Alanı Eklemek

Birde yıl bazlı Toplam değerini Raporun en altına ekleyelim.

Bunun için önce toplam işlem yapabilecek alan olan Rapor Altbilgisi alanını çağırmamız gerekiyor. Tasarım Sekmesinden Başlık alanını seçiyoruz. Sayfa başlığımız ve alt Kısımda Rapor Alt Bilgisi alanı gelmektedir. İşte ayrıntıda çıkan verilerin Toplam işlemini bu alanda yapacağız. Diğer alanlara ekleyeceğimiz formülü koyarsanız çalışmayacaktır.

Ay Sayısını Metne Çevir Toplamı

Formda gerekli küçültmeleri yaptıktan sonra Rapor Alt Bilgisine boş bir Metin Kutusu ekleyelim. Toplam Alanının hizasına getirip Para birimi ve Ondalık basamakları önceki Toplam alanı gibi belirleyelim. Aradan çıksın.

Formülü =Topla([Toplam]) şekilde yazıyoruz. Aylar sorgusundaki Toplam alanındaki çıkan verileri Topla anlamına gelmektedir.

Topla(TOPLAM)

Rapor Görünümünde açtığımızda toplam alanını da aşağıdaki şekilde elde etmiş olduk.

Ay Sayısını Metne Topla Görseli

 


Access Dosya Download Makalede kullandığımız Access Dosyasını buradan indirebilirsiniz.

Eğitime Access Raporlarda Barkod Etiket Yapımı #34 makaleden devam edin.

Yorum yapın