Her Kaydı Ayrı Sayfada Yazdırma

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
gencyazilim
Üye
Mesajlar: 10
Kayıt: 22 Eki 2006 11:23
Konum: Ankara
İletişim:

Her Kaydı Ayrı Sayfada Yazdırma

Mesaj gönderen gencyazilim »

Merhabalar,

Forumda ve google'de uzun aramalar sonucu maalesef aradığımı bulamadım ve sormak zorunda kaldım. Daha önce sorulduysa affola...

10 field'ı olan bir veritabanım var. access kullanıyorum. Bu 10 fieldi QuickRep içerisine ekledim ve QuickRep'in dataset özelliğini boş bıraktım. Böylece öz izleme aldığım zaman ya da yazdırdığım zaman sadece tek bir kaydın( seçili kaydın) çıktısını alabiliyorum.

Benim yapmak istediğim yazdır butonunun yanına bir edit koymak ve buraya mesela 10 yazılırsa seçili kayıt dahil olmak üzere sonraki 10 kaydın çıktısını tek seferde yazdırmak istiyorum. Bu mümkün müdür acaba?

Yazdırma için şu komutu kullanıyorum. Quickrep1.print;

Bu komutu kullanınca sadece seçili olan kayıt çıktısı alınıyor. Ben ya dediğim gibi bir edit içerisinde yazan sayı kadar ya da aşağıdaki dbgrid içerisinde (dbgrid'in multiselection özelliğini açarak) seçili olan kayıtların çıktısını her bir kayıt bir sayfaya gelecek şekilde yazdırmak istiyorum. Nasıl yapabilirim acaba yardımcı olabilecek arkadaşlara şimdiden çok teşekkür ederim.
"Türkçemiz Sevdamızdır!"

http://www.turkcesevdalilari.com
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: Her Kaydı Ayrı Sayfada Yazdırma

Mesaj gönderen sabanakman »

İlk on kayıt..:

Kod: Tümünü seç

var KacKayit,Yazilan:Integer;

procedure TForm1.QuickRep1BeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
begin
  KacKayit:=StrToIntDef(Edit1.Text,1);
  Yazilan:=0;
  Table1.First;
end;

procedure TForm1.QuickRep1NeedData(Sender: TObject; var MoreData: Boolean);
begin
  Inc(Yazilan);
  MoreData:=Yazilan<=KacKayit
end;

procedure TForm1.DetailBand1AfterPrint(Sender: TQRCustomBand;
  BandPrinted: Boolean);
begin
  Table1.Next;
  QuickRep1.NewPage;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  QuickRep1.Preview;
end;


Gridde seçilen kayıtlar..:

Kod: Tümünü seç

var KacKayit,Yazilan:Integer;

procedure TForm1.QuickRep1BeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
begin
  KacKayit:=DBGrid1.SelectedRows.Count;//StrToIntDef(Edit1.Text,1);
  Yazilan:=0;
  Table1.First;
end;

procedure TForm1.QuickRep1NeedData(Sender: TObject; var MoreData: Boolean);
begin
  Inc(Yazilan);
  MoreData:=Yazilan<=KacKayit;
  if MoreData then
   Table1.Bookmark:=DBGrid1.SelectedRows[Yazilan-1];
end;

procedure TForm1.DetailBand1AfterPrint(Sender: TQRCustomBand;
  BandPrinted: Boolean);
begin
  Table1.Next;
  QuickRep1.NewPage;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  QuickRep1.Preview;
end;
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
gencyazilim
Üye
Mesajlar: 10
Kayıt: 22 Eki 2006 11:23
Konum: Ankara
İletişim:

Re: Her Kaydı Ayrı Sayfada Yazdırma

Mesaj gönderen gencyazilim »

Hocam çok çok teşekkür ederim. Gerçekten harika oldu. Hiçbir sorun çıkmadan verdiğin kodları ekeldim ve şu anda tam istediğim gibi oldu. Çok sağ ol, çok teşekkürler. :bravo:
"Türkçemiz Sevdamızdır!"

http://www.turkcesevdalilari.com
Cevapla