Amiga Dünyası sayı 6, sayfa 41

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 41

1. Penceredeki Report düğmesini klikleyerek yapılacak tüm seçimlerin raporun tamamına uygulanmasını sağlayalım.

2. SUM düğmesini klikleyerek seçilen nümerik alanların toplanacağını belirte-

3. Alan ismi panelinden toplanacak sayısal alanların seçimini yapalım: Toplam Borç, Bakiye. Superbase, bu adımlarda yapılan tüm seçimleri ana komut satırına aktarır. Buralarda her şeyi uygun olarak yaptıysanız, komut satırı aşağıdaki gibi görünecektir:

REPORT SUM Toplam Borç.Bakiye

4. Gruplayarak topladığı kayıtları saymasını ve toplamı raporun sonuna yazmasını da istiyoruz. Bu işlem için kullanılacak seçenek düğmesi, COUNT.

Bu düğmeye de klik yaptığınızda, satırın son durumu:

REPORT SUM Toplam Borç,Bakiye COUNT

olur. Burada en önemli konu, yapılacak sırasının doğru olarak verilmesidir. Alan ve operatörlere rastgele basılırsa, anlamsız raporlar, hatta uyumsuz data alanı ve operatörler kullanmanız sebebiyle "Can't do this" (Yapılamaz) mesajı alabilirsiniz.

Şimdi sıra rapordaki farklı gruplar için farklı özellikleri tanımlamaya geldi. Bu prosedür de tıpkı raporun tamamı için olduğu gibidir:

1. Gruplama için GROUP operatörünü kullanacağımızdan bahsetmiştik. Group düğmesi kliklenerek ana komut satırına aktarıldıktan sonra, gruplamada kullanılacak alan ismi seçilir. Her GROUP sözcüğünü bir alan ismi takip eder.

Örneğimizde gruplamada kullanacağımız ilk alan, Şehir. Bu kıstasla, Superbase'in yapacağımız belirlemeleri verilen isimdeki gruplara uygulamasını sağlayacağız:

GROUP Şehir

Burada tanımlanan grup alanı, Query Order komut satırında da kullanılmış olabilir. Gruplama alanının text alanı olması en iyisidir, ancak kullanım amacına göre tarih ve sayı alanları da kullanılabilir.

2. Rapor sonunda alacağımız genel toplamdan başka, şehir şehir grupların toplamlarını da almak istediğimize göre yine SUM operatörünü toplanacak alanları belirterek ekliyoruz:

GROUP Şehir SUM Toplam Borç.Bakiye

3. Her gruba giren kayıt miktarının sayılmasını istiyoruz:

GROUP Şehir SUM Toplam Borç, Bakiye COUNT

Bu komutla aynı şehirde kaç kayıt olduğunu saydırıyoruz.

Evet... Sıra geldi şehirler içindeki semtlerin ve bu şehirlere bağlı kasabaların gruplanmasına. Semt veya ilçe bilgisinin dosya tanımında Adres2 diye bir alanda tanımlandığını düşünün. Bu durumda, yeni gruplama alanımız Adres2. Adres2 alanını da grup olarak belirtip, aynı genel rapor özellikleri ve şehir gruplamasında olduğu gibi, grup aratoplamı ve kayıt sayısını istiyoruz:

GROUP Adres2 SUM Toplam Borç.Baki- ye COUNT

Query Report penceresi ana komut satırına bu tanımlamayı da eklediğimizde, komutun son durumu şöyle olur:

REPORT SUM Toplam Borç.Bakiye COUNT GROUP Şehir SUM Toplam Borç.Bakiye GROUP Adres2 SUM Top- lam Borç.Bakiye COUNT

Bu komutu verip ekrana döküm aldığınızda, yaptıklarımızın anlamını daha iyi kavrayacağınızdan şüphemiz yok.

Adres2 grubu, şehir grubundan sonra tanımlandığı için, komutta şehir grubu dış grup olarak kabul edilir. Bu sıralamada tek bir kural mevcut: Alan grupları en dış seviyeden içe doğru verilir.

TOPLAM BORÇ

25000000.00 3000000.00

BAKİYE 12.400.000,00 288.000,00

28000000.00 15280000.00

1250000.00 200000.00

1250000.00 200000.00

300000.00 150000.00

300000.00 150000.00

29550000.00 15630000.00

ADI VE SOYADI DENİZ KARA ALİ SAPMAZ

Group Count 2 KADIKÖY

MEHMET ALDATMAZ

Group Count 1 KARAKÖY

VELİ DURGUN

Group Count 1 NİŞANTAŞ

Group Count 4 İSTANBUL

Report Count: 9

ADRES2 KADIKÖY KADIKÖY

KARAKÖY

NİŞANTAŞI

ŞEHİR İSTANBUL İSTANBUL

İSTANBUL

İSTANBUL

92930000.00 50640000.00

TABLO 1

Klavyeyle gezinmek için ← ve → tuşları.