1

Konu: Rapor Detail Band içinde calculate

Raporda sınıfların listesi var (SINIF,NO,AD,SOYAD,CINSIYET) ve detail bandında da sınıf mevcudu var. Detail bantta Erkek ve Kız öğrenci toplamını da nasıl yazdırabilirim.

2

Re: Rapor Detail Band içinde calculate

-Report Prop penceresinde Variables tabını aç
-Add düğmesi ile 2 tane report değişkeni ekle, örneğin erkek ve bayan
-Value to store:
erkek için: erkek=erkek+(çocuklar.cinsiyet="E",1,0)
      diğeri:    bayan=bayan+(çocuklar.cinsiyet="B",1,0)

rapor içerisinde istediğin yere (detail bant) yeni alan yaratıp (expression builderde zaten erkek ve bayanı göreceksin) erkek veya bayan değişkenine bağla

VFP9 SP2

3

Re: Rapor Detail Band içinde calculate

Teşekkürler Ali Abi.
Ara toplamları detail banttan da print when ile gizledim, güzel oldu. Sağol.

4

Re: Rapor Detail Band içinde calculate

özcan şu işi nasıl yaptığını banada öğretirmisin

Visual Fox Pro
CREATE CURSOR crsSV ( lot c(6),kod c(16),cikis n(8))

INSERT INTO CRSsv values ("999001","TR1001",500)
INSERT INTO CRSsv values ("999001","TR1001",700)
INSERT INTO CRSsv values ("999002","TR1001",4000)
INSERT INTO CRSsv values ("999004","TR1003",1250)
INSERT INTO CRSsv values ("999007","TR1010",800)
INSERT INTO CRSsv values ("999001","TR1010",400)


şuna benzer bi data ile aşağıdaki gibi bir çıktı hazırlamaya çalışıyorum

lot    kod    cikis
999001    TR1001    500
999001    TR1001    700
    TOPLAM    1200
999002    TR1001    4000
999004    TR1003    1250
999007    TR1010    800
999001    TR1010    400
    TOPLAM    1200
her kod değişiminde toplam almaya çalışıyorum

report propertise girdim
variables a kod diye alan ekledim
sonrasını nasıl yaparım

Kader, beyaz kağıda sütle yazılmış yazı
Elindeyse beyazdan, gel de sıyır beyazı. (NFK)

5 Son düzenleyen, ozcan (08.03.2011 15:56:04)

Re: Rapor Detail Band içinde calculate

Raporun içine data grouping ile gruplama eklemen lazım. Group on kısmında Crssv.kod alanını seçmelisin. Böylece kod alanına göre gruplama yapacak.
Detail bandında tüm alanlarını gösterdikten sonra group footer bandına Cikis isminde bir alan ekle ve properties bölümünde Expression: CIKIS, calculate/Calculation type: SUM seç, Reset Based on : Crssv.kod olmalı.
Yani her kod değiştiğinde koda göre gruplu olan raporun group footer bölümünde CIKIS alanının toplamı alınmış olacak.

6

Re: Rapor Detail Band içinde calculate

dediklerini uyguladım, peki tek satırolan verilerde toplam almasını nasıl önlerim
lot    kod    cikis
999001    TR1001    500
999001    TR1001    700
    TOPLAM    1200
bunda toplam alması tamam ama aşağıdakinde olmasa
999002    TR1001    4000
böyle birşey olabilirmi ?

Kader, beyaz kağıda sütle yazılmış yazı
Elindeyse beyazdan, gel de sıyır beyazı. (NFK)

7

Re: Rapor Detail Band içinde calculate

Rapora mesela SAYI ismiyle bir değişken ekle. Değişkenin özelliklerinde Reset Value based on : Group: Crssv.kod seç. Calculation Type: Count seç.
Daha sonra yukarıda toplam alıp yazdırdığın alanın (CIKIS) özelliklerinde Print When tabına geçip Print only when expression true kısmına SAYI>1 yazarsan olması lazım. Yani grupdaki kayıt sayısı SAYI değişkeninde saklanıyor ve her gruptaki SAYI  1'den fazla olduğunda Toplam alanı gösteriliyor/yazıyor.

8

Re: Rapor Detail Band içinde calculate

denedim olmadı, neyse ilk halide istediğimi karşılıyor, çok güzel oldu böyle rapor.
çok teşekkür ederim yardımın için

Kader, beyaz kağıda sütle yazılmış yazı
Elindeyse beyazdan, gel de sıyır beyazı. (NFK)