qreport onclose de memo tabloyu boşaltamıyorum

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
bobasturk
Kıdemli Üye
Mesajlar: 1387
Kayıt: 20 May 2004 08:39
Konum: Düzce

qreport onclose de memo tabloyu boşaltamıyorum

Mesaj gönderen bobasturk »

merhaba,

delphi7 ve firebird kullanıyorum. Raporlama aracım QReport

sorunum qreport ta. programımda qreport kullanıyorum ve jvmemorydata bileşeni ile yazdırılacak bilgileri geçici tabloya alarak oradan qreport ile raporluyorum.

istediğim raporlama aracı kapanınca veya yazdırma işlemi bitince memo tablonun boşaltılması şu yöntem ile bunu başarabiliyorum,

Kod: Tümünü seç

procedure TFrmGelenEvrakFoyYaz.QuickRep1AfterPrint(Sender: TObject);
begin
  frmgelenevrakanatablo.JvMemoryData1.Close;
  frmgelenevrakanatablo.JvMemoryData1.Open;
end;
fakat kullanıcı yazıcıya göndermeden önce vazgeçecek olursa diye formun onclose events ine aynı kodu yazıyorum şöyleki,

Kod: Tümünü seç

procedure TFrmGelenEvrakFoyYaz.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  frmgelenevrakanatablo.JvMemoryData1.Close;
  frmgelenevrakanatablo.JvMemoryData1.open;
end;
bu kod ile işlem gerçekleşmiyor. afterprint özelliğinde jvmemorydata boşalıyor ve yeni verilere hazır oluyor ama onclose evnts te bu işlemi yapmıyor.

acaba uygulama hatası mı yapıyorum veya Qreport un acayipliğimidir.

teşekkür ve saygılarımla
kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Resim
Kullanıcı avatarı
bobasturk
Kıdemli Üye
Mesajlar: 1387
Kayıt: 20 May 2004 08:39
Konum: Düzce

Mesaj gönderen bobasturk »

Tekrar merhaba,

Bu gibi durumlarda konuyu silmeyi düşünüyorken aklıma ya birilerine lazım olurda aynı sorunu yaşarsa diye düşünüyorum. tabi başkaları benim kadar kıt zekalı değildir ama silmek istemiyorum işte belki lazım olur. ama yetkili arkadaşlar gereksiz görür silerse başım üzerine.

sorunumu çözdüm. aynı kodu afterpreview envents ine yazınca istediğimi verdi.

Kod: Tümünü seç

procedure TFrmGelenEvrakFoyYaz.QuickRep1AfterPreview(Sender: TObject);
begin
  frmgelenevrakanatablo.JvMemoryData1.Close;
  frmgelenevrakanatablo.JvMemoryData1.open;
end;
rahatsızlık verdiğim için özür dilerim
kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Resim
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Estağfirullah hocam o ne demek öyle :wink:

Paylaştığın için eksik olma :)

Aslında MemoryTable ı kullanacağında açık olup olmadığını kontrol edip kapatıp yeniden açabilirsin. Ayrıca asıl formu kapatırken de aynı şekilde açıksa kapatabilirsin..
Bugün AfterPreview e yazdığın kod yarın ön izleme / preview yapmadan doğrudan yazdırmak istediğinde sorun çıkaracaktır :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Cevapla