Merhabalar,
Delphi 7 üzerinde zReport DotMatrix kullanıyorum. Şimdi Delphi.2010 a geçtik ancak zReport delphi 2010 sürümü yok.
Nasıl bir yol izlememi tavsiye edersiniz?
ActiveX Control yapayım dedim, olmuyor. Projelerde sıkıntı yaşıyoruz.
Teşekkür ederim.
zReport Delphi 2010 a nasıl kurulur?
Forum kuralları
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
Re: zReport Delphi 2010 a nasıl kurulur?
s.a.
bildiğim kadarı ile zReport uzun süredir geliştirilmiyor.
onun yerine başka bir raporlama bileşeni kullanabilirsiniz.
FastReport un dotmatrix desteği var diye biliyorum.
kolay gelsin.
bildiğim kadarı ile zReport uzun süredir geliştirilmiyor.
onun yerine başka bir raporlama bileşeni kullanabilirsiniz.
FastReport un dotmatrix desteği var diye biliyorum.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: zReport Delphi 2010 a nasıl kurulur?
Delphi7 üzerinde .dll olarak rapor modülü oluşturulup kullanılabilir ama burada da rapor seçeneklerini de iletmek için bir ton parametre engeli karşınıza çıkacaktır. Zamanında bununla ilgili çalışmışlığım olmuştu. Bunun için Tek bir string parametre belirleyip TStrings tipinde çok satırlı bilgi gönderebilirsiniz. Diğer .dll tarafında da bu satırları yorumlayıp ona göre raporlar verebilirsiniz. Mesela .dll çağırmak için.exe tarafında böyle bir gönderim yapılabilir ve .dll tarafında ise FormAna isimli bir form eklenip buradaki forma GelenBilgiler isimli TListBox yerleştirilmeli.Tabi .dll tarafındaki FormAna da Calistir isimli fonksiyonu aşağıdaki gibi olmalı.Burada dikkat edilmesi gereken en önemli husus .dll tarafında oluşturulmuş nesnelerin işi bittiğinde mutlaka yok edilmelidirler. Yoksa proje kapandığı sırada çıkan Access Violation hataları nedeniyle çekilmez bir hal alabilir. Bileşenleri oluşturma ihtiyacı hissederseniz owner parametresine formu vermeni kafii, zira form yok edilirken üzerindeki bileşenleri tespit edip yok edebiliyor ama owner a özellikle nil verir veya bileşen olmayan nesneler oluşturursanız bunları mutlaka yok etmelisiniz. İyi çalışmalar.
Eğer çok sayıda raporunuz yoksa
Kod: Tümünü seç
function DlldekiRaporFonksiyonu(Bilgi:PChar):DWord;stdcall;external 'Rapor.dll' name 'DlldekiRaporFonksiyonu';
.
.
.
.
procedure TForm1.Button1Click(Sender:TObject);
var Parametre:TStringList;
begin
try
Parametre:=TStringList.Create;
Parametre.Values['RaporTuru']:='GenelListe';
Parametre.Values['Filtre']:=Edit1.Text;
Paremetre.Values['Adet']:=IntToStr(SpinEdit1.Value);
DlldekiRaporFonksiyonu(PChar(Parametre.Text));
except
on E:Exception do begin
Parametre.Free;
ShowMessage(E.Message);
end;
end;
end;
Kod: Tümünü seç
library Rapor;
uses
Windows,
SysUtils,
Forms,
Classes,
Activex,
ana_form in 'ana_form.pas' {FormAna},
genel_liste_formu in 'genel_liste_formu.pas' {FormGenelListe}';
function DlldekiRaporFonksiyonu(Bilgi:PChar):DWord;stdcall;
begin
Sonuc:=0;
try
if not Assigned(FormAna) then FormAna:=TFormAna.Create(Application);
FormAna.GelenBilgiler.Items.Text:=Bilgi;
Result:=FormAna.Calistir;
except
Result:=0;
end;
if Assigned(FormAna) then FreeAndNil(FormAna);
end;
Kod: Tümünü seç
function TFormAna.Calistir: DWord;
var RaporTuru:String;
begin
RaporTuru:=GelenBilgiler.Values['RaporTuru'];
if SameText(RaporTuru,'GenelListe') then GenelListeRaporu //Genel liste prosedürü
else if if SameText(RaporTuru,'..... //Diğer raporlar
Result:=0;
end;
procedure TFormAna.GenelListeRaporu;
begin
with TFormGenelListe.Create(Application) do try //formda tanımlı değişkenlere gelen bilgiler parametre olarak aktarılır
Filtre:=GelenBilgiler.Values['Filtre'];
Adet:=StrToIntDef(GelenBilgiler.Values['Adet'],0);
RaporAl;//parametreler ayarlandıktan sonra raporun hazırlandığı diğer formdaki raporlama çalıştırılır...
finally
Free;
end;
end;
finalization
if Assigned(FormAna) then FormAna.Free;
end.
Eğer çok sayıda raporunuz yoksa
seçeneğine öncelik vermenizi öneririm.aslangeri yazdı:...FastReport un dotmatrix desteği var ...
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .