Qreport ta tam istediğim satıra yazdırmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Salih
Üye
Mesajlar: 250
Kayıt: 11 Mar 2004 05:36

Qreport ta tam istediğim satıra yazdırmak

Mesaj gönderen Salih »

Salih [color=green]ezile büzüle [/color] yazdı: Fatura, irsaliye, garanti belgesi, sipariş raporları, üretim raporları... Sanırım 20 kadar değişik rapor yazdırmam gerekecek.

Ehhh, bu durumda önümüzdeki 1 ay içinde bu QReport hakkında başınızı epeyce ağrıtacağım gibi görünüyor. Onun üçün şimdiden çok özür dilerim.
Arkadaşlar,

2 tane report'u QRCompositeReport bileşeni ile birleştirdim, bütün bilgiler de gayet güzel geldi. Yalnız, fatura ve irsaliyedeki satır sayısı sabit değil malum.

Faturaya Max 10 satır sığıyor, ama tek satır da olsa formun üzerinde 11.satıra Toplam, 12.satıra KDV, 13.satıra tekrar toplam yazdırıcam.
sonra 2 satır boş bırakıp 16. satırdan başlayarak Rapor2'yi yazmaya başlıycam. Maximum 5 satır da orada yazdırıcam.

Özetle, 'faturada kaç satır olursa olsun illa ki 11. satıra gelip TOPLAM ı oraya yazdır' nasıl derim ?
Sevgi, Saygı.....
P206
Kıdemli Üye
Mesajlar: 395
Kayıt: 17 Haz 2003 12:36
Konum: İstanbul

Mesaj gönderen P206 »

Her satırın labellerini Quickrep e yerleştir. Programda da toplamı alıca
qrlabel12 olsun 12. satır. Oraya atamayı yaparsın.
I love my car.
Blog Yaptık
Salih
Üye
Mesajlar: 250
Kayıt: 11 Mar 2004 05:36

Mesaj gönderen Salih »

P206 yazdı:Her satırın labellerini Quickrep e yerleştir. Programda da toplamı alıca
qrlabel12 olsun 12. satır. Oraya atamayı yaparsın.
Özür dilerim, söylediklerinizi anlamadım. Detail bölümüne QRDBtext'leri kullanarak fatura satırını oluşturdum. Ancak, faturadaki satır sayısı 1 de olabilir, 10 da olabilir. Her iki durumda da TOPLAM bilgisini 11. satıra basmam lazım.

Aligntobottom diye bir property var, ama işime tam yaramıyor. Çünkü compositereport kullanıyorum ve birinci raporun altında 11.satıra toplamı yazdıktan sonra, ikinci raporu da aynı sayfaya devam etmem lazım.
Sevgi, Saygı.....
P206
Kıdemli Üye
Mesajlar: 395
Kayıt: 17 Haz 2003 12:36
Konum: İstanbul

Mesaj gönderen P206 »

Selamlar,

Benim anlatmak istediğim. Olayı şöyle düşündüm. Senin Standart bir faturanvar, üst kısımda ürünleri alt alta yazdığın ve en altınada toplamını yazdığın satır var. Sen qrlaberlerini alt alta yarleştir bandın üzerine 1,2,3,4,5,6,7,8,9,10,11 diye ürün adedine göre 1 den başalayarak labellere yazdırırsın son label a da toplamı yazdırırsın. Eğer 2 ürünün varsa 1. ve 2. label değer alıp diğerleri boş kalacak. 11. e de toplamı yazdırmış olduğun için faturanda o şekilde çıkacak.
Onneeddata eventı içinde bunları yapabilirsin.
I love my car.
Blog Yaptık
Salih
Üye
Mesajlar: 250
Kayıt: 11 Mar 2004 05:36

Mesaj gönderen Salih »

hımmm. Onneeddata'yı bir inceleyeyim bakalım. Teşekkürler....
Sevgi, Saygı.....
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

S.A.
fatura irsaliye vs. basım işleri için sana zreport u öneririm.
kullandımı diye soracak olursan :duvar: yeterli olur.
yazdırma işlemini ben direk printerin canvasını kulllanarak yaptım. O zamanlar zreporttan heberim yoktu tabi.. kastım durdum. eğer fırsat bulursam fatura basım işinide zreport a geçireceğim ama şu an başka bir programla upraşıyorum ve zaman sınırlı. neyse.
ZReportu bi incele bu işler için yapılmış olduğunu göreceksin. Fatura basacağına göre nokta vuruşlu yazıcıdan çıktı alacaksın. Müşterin kesinlikle bu niye bu kadar yavaş yazıyor diyecektir.
Kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
P206
Kıdemli Üye
Mesajlar: 395
Kayıt: 17 Haz 2003 12:36
Konum: İstanbul

Mesaj gönderen P206 »

Bizim eskiden yaptığımız gibi. Text dosyaya verileri yazmak oradan printere göndermekte bir tercih olabilir.
I love my car.
Blog Yaptık
Salih
Üye
Mesajlar: 250
Kayıt: 11 Mar 2004 05:36

Mesaj gönderen Salih »

Soruda bahsettiğim sorunu şu şekilde çözdüm : Formcreate aşamasında iken fatura veya irsaliyede yazılacak satır sayısına göre Footer height değerini değiştiriyorum :

Kod: Tümünü seç

  MDOQSatSay.Open;
  sayac := 30 - MDOQSatSay.Fields[0].AsInteger;
  if sayac > 1 then
  ZReport1ColumnFooter.Height := Sayac
  else ZReport1ColumnFooter.Height := 1;
Sevgi, Saygı.....
Cevapla