raporda group içinde group olur mu?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

raporda group içinde group olur mu?

Mesaj gönderen must_sargin »

Benim yapmak istediğim bir araca ait taşımaları gruplandırarkr göstermek ve alt toplam almak. Araçları ARAÇ adlı,Taşınan yükleri YUK adlı tabloda tanımladım. Örneğin Toplu araç raporunda


1. 34 DNM 34
1. TAŞ
01.02.2004 Soforadi Miktar Açıklama
05.02.2004 Soforadi Miktar Açıklama
2. ÇAKIL
06.02.2004 Soforadi Miktar Açıklama
10.02.2004 Soforadi Miktar Açıklama

2. 34 MND 45
1. TAŞ
03.01.2004 Soforadi Miktar Açıklama
05.03.2004 Soforadi Miktar Açıklama
2. ÇAKIL
06.02.2004 Soforadi Miktar Açıklama
10.02.2004 Soforadi Miktar Açıklama



Raporda bu şekilde göstermek istiyorum. Yardımcı olabilirseniz sevinirim.
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

takıldıgınız nokta nedir SQL'i yazmak mi yoksa delphi tarafinda bunu yapmak mi?

Eger PLAKA, TASINAN_MAL, TARIH,SOFOR_ADI, MIKTAR,ACIKLAMA sutunlarında olusan bir query yazarsaniz. Tabi ilk 3 alana gore de siralamaniz gerekiyor...
Delphi tarafinda da PLAKA 'ay gore bir grup PLAKA+TASINAN_MAL'a gore de bir grup tanımlayarak yapabilirsiniz...
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

group içi group

Mesaj gönderen must_sargin »

takıldığım nokta rapor hazırlarken subdetail altına bir subdetail koyarak qreportta araçplaka gruplandırmasının altında yuke göre de gruplandırarak aracın hangi yuku ne kadar taşıdığının toplamını almak.
acaba şöyle olabilirmi? yuk tablosunun masterine araç tablosunu göstersem olabilir mi? birde nasıl bir kod yazabileceğimi anlatabilirseniz sevinirim.
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

Qucik report'un ornekleri icinde grouping isimli tam istediginizi yapan bir ornek var. Onu incelemenizi tavsiye ederim....
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

delphi içindeki örneği inceledim. ancak sql'deki mantığı benim programıma nasıl uyarlayacağımı çözemedim.


master sql

select c.company, o.orderno, o.custno, o.ItemsTotal
from orders o join customer c on o.custno=c.custno
where c.company LIKE 'A%'
order by c.company, o.orderno


detail sql

SELECT OrderNo, Qty, ItemNo
FROM ITEMS I
WHERE (i.OrderNo = :OrderNo)
ORDER BY OrderNo, ItemNo


benim tablolarım şu şekilde

ARAÇTablosu : Aracno, AracPlaka
YUKTablosu : Yukno, Yukadi, Ucreti
TAŞIMATablosu : Aracno, Yukno, Sevkyerno, Tarih, Aciklama

Bu tablolarla benzer bir sql tablosuna örnek verebilir misiniz?
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- QuickReport bu SQL sorgusunu sizin için yapabiliyor... Ben de işçi puantaj olayında benzeri bir çalışma yapmıştım... Orda da

Kod: Tümünü seç

Ülke 
  Şehir-Şantiye
    İşçi Adı - Çalıştığı saat - Fazla mesai - Hakediş
    İşçi Adı - Çalıştığı saat - Fazla mesai - Hakediş
    İşçi Adı - Çalıştığı saat - Fazla mesai - Hakediş
- 1 Adet Group-Band
- 1 Adet Detail-Band
- 1 Adet child-Band (Detail-Band'a bağlanacak)

- QuickReport'da GroupHeader ile buna link edilecek band'lar yardımıyla çözüm sunabilirsiniz... Hala çözemezseniz, Ankara'ya döndüğümde anlatmaya çalışırım...
Resim
Resim ....Resim
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

denedim ama bir türlü yük adlarına göre sıralama yaptıramadım mesela
raporda

yuk no:1
yuk ad 1. demir
yuk ad 2. çakıl
yuk ad 3. kum

şeklinde
gibi çıkıyor. benim istediğim yuk no 1.
yuk ad Demir olarak göstermek ama başaramadım. anlatabilir misiniz?
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Selam...
Bir QuickReport sayfasında aşağıdaki bandları koy ve yanında takip eden şekilde Masterlarına bağla... Bu bağlama şekli ile QuickReport senin için query oluşturup ilgili gruplara ayırıp raporlayacaktır...

Kod: Tümünü seç

Title-TitleBand1 (TQRBand, BandType = rbTitle)
Detail-QRBand1 (TQRBand, Band Type = rbDetail)
GroupHeader-QRGroup1 (TQRGroup) (Master:QRSubDetail1)
SubDetail-QRSubDetail1 (TQRSubDetail) (Master:QuickRep1)
GroupHeader-QRGroup2 (TQRGroup) (Master:QRSubDetail2)
SubDetail-QRSubDetail2 (TQRSubDetail) (Master:QRSubDetail1)
Title'da : Plaka KayNo ve Plaka ID başlıkları QRLabel olsun...
Detail'de : Plaka KayNo ile Plaka ID için QRDBText tanımla...

GroupHeader'da : Taşınan Malzeme Kayno ve Taşınan Malzeme QRLabel olsun.
SubDetail'de : Taşınan Malzeme Kayno ve Taşınan Malzeme QRDBText tanımla...

GroupHeader'da : Tarih, SoforAdı, Miktar, Açıklama başlıkları için QRLabel koy...
SubDetail'de : Tarih, SoforAdı, Miktar, Açıklama başlıkları için QRDBText tanımla...

- İstediğin sonuçları alırsın....

- 1 Sayfayı geçen sonuçların varsa baştaki title olyını da bir grup'a alman gerekir... Yoksa ilk sayfa dışında bu ana başlığı göremezsin... Bende bu gerekmediğinde sadece Title ile halletmeyi yeğlemiştim.

- Ne de olsa bir sorgu bile daha az yaptırmak hız kazancı demektir...
:)
Resim
Resim ....Resim
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

selamlar
tarifine göre yapmaya çalıştım ama bir türlü group header'in üstünde tutamıyorum. title-group header-detail-sub detail-group header-subdetail şeklinde sıralanıyor.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Yanlarında açıkça yazdım...

- Gerekli master ilişkilerini sen kur, bandlar uygun yerlere kendiliğinden kayacaktır... :idea:
Resim
Resim ....Resim
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

dediğiniz gibi özelliklerini verince sıralandı ancak en alttaki subdetail2'de gruplamada problemim var. altta tüm yüklerin altında tüm taşımalar görünüyor. sorum taşıma tablosunun masterini araç tablosu verdim(araçlara göre gruplandıracağım için) ancak yuk tablosuyla neyi ilişkilendirebilirim.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Şimdi, master detail ilişkisini tablolarla yaptıktan print ediyorsunuz.. QuickReport sizin yaptığınız sorgu çerçevesinde görüntüleme yapar...


Yani ekrana üç adet DBGrid koyun..
1. Master
2. Slave
3. Slave Master edilmiş ikinci derece slave

Bu üçlü grubun doğru çalıştığını görün ve sonra bu DbGridlerin DataSource'larının DataSet'lerini ilgili QRDBText'lere atayın... Sorunsuz olarak raporlarınızı gruplu bir şekilde göreceksiniz...
Resim
Resim ....Resim
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

dediklerine göre yaptım ancak şöyle bir sorun oluşuyor. arac tablosunda aracno ve aracplaka bölümleri var yük tablosunda yukno aracno yukadi ve yukucreti var yani her yükün tanımına ayrı ayrı arac tanımlamam gerekiyor. bunu nasıl düzeltebilirim.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

@must_sargin

- Bu gruplama metodunu kavramanız için çaba sarfetmelisiniz...

- Nasıl gruplamdığını detaylıca açıklamaya çalıştım... Artık bir grup nasıl oluşuyor, bağlantı yapıldığında grupların yerleri nasıl değişiyor gördünüz...

- Baskıyı kodlamadan önce, her proje başlangıcında yapılması gereken gibi, kağıt üzerinde şemanızı çizin, sonra da bunu ilk verdiğim cevaptaki gibi satır satır gerkenler ve vereceğim isimler şeklinde kurgulayın...

- Olmazsa QuickReport sayfasını silin 0'dan yeniden tasarlayın...

- Eğer veritabanı bağlantılarınız bahsettiğiniz tarzda gruplamaya müsaade etmiyorsa önce veritabanınızı buna uygun hale getirin... Ya da işin kısayolunu kullanmak için sadece Baskıya özel veritabanı oluşturup, raporunuzu buraya yansıtın ve QuickReport ile bu baskı veritabanını kağıda yansıtın...

- Başarılar...
Resim
Resim ....Resim
Cevapla