quick report
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
quick report
quick reportta detay banda koyduğum bir qrdbtext in yerini programı derleyip çalıştırdıktan sonra bu qrdbtextin yerini değiştirebilirmiyim. 3 satır aşağı 2 satır yukarı gibisinden. yada bunu başka ne şekilde yapabilirim. saygılar sunuyorum.
Siz İman Etmedikçe Cennete Giremezsiniz. Birbirinizi Sevmedikçede İman Etmiş Olamazsınız.
Hz.Muhammed (S.A.V.)

Hz.Muhammed (S.A.V.)

sanırım değiştirebilirdin mesala qrdbtext in left top rihgt bottom gibi konum ayarlarını yapabileceğin özellikler olması lazım bu özellikler ideğiştirmek için spineditler kullan ilk etapta qrdbtext in bu değerlerini spineditlere ver ve daha sonra spineditler deki rakamlar değiştiği zaman bu yeni rakamlar ıqrdbtextin bu özelliklerine aktar.Denemedim ama olması lazım.saygılar
kolay gelsin...siz buşekilde deneyin olmasa ben size kodu iletirim.
kolay gelsin...siz buşekilde deneyin olmasa ben size kodu iletirim.
Band ın BeforePrint olayında yada QuickRep in BeforePreview / BeforePrint olaylarından birinde istediğin değeri satır olarak değilde pixel olarak verip, Mustafa'nın dediği şekilde istediğin poziysona ayarlıyabilirsin.
Vereceğin değerleri formdan girebileceğin gibi bir dosyadan da okutup alabilirsin.
Vereceğin değerleri formdan girebileceğin gibi bir dosyadan da okutup alabilirsin.
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
bu noktada bir soru
Burayı hallettim ancak bu noktada başka bir soru sormak istiyorum. burayla alakalı. burdaki QrDbText1 in fontlarıyla runtime anında oynayabilirmiyim. eğer yapılıyorsa nasıl yapabilirim. saygılar sunuyorum.
Siz İman Etmedikçe Cennete Giremezsiniz. Birbirinizi Sevmedikçede İman Etmiş Olamazsınız.
Hz.Muhammed (S.A.V.)

Hz.Muhammed (S.A.V.)

Kod: Tümünü seç
QrDbText1.Font.Name := 'TimesNewRoman';
QrDbText1.Font.Size:=14;
QrDbText1.Font.Style:= [fsBold,fsItalic];
//syntaxlarda sorun olabilir.
Merhaba arkadaşlar.
Bizim dertlerimizden biride bu. Yaptığımız çalışmada girilen verileri üç ayrı çeşitte matbu olan evraklara girmemiz gerekiyor. Bunu Quickreport ta hazırladım ve sorunsuz yazdırıyor. Fakat yazıcının değişmesi veya matbu evrakların çizili alanlarının değişmesinden dolayı qrdbtext lerin yerlerini değiştirmemiz gerekiyor. Bu durumdan dolayı prog. setup haline getiremiyorum. Yukarıda bu konu hakkında konuşulmuş fakat acemilikten tam olarak anlayamadım. Setup haline getirilen prg. da bu qrdbtext lerin yerlerini kullanıcı o an kağıt veya yazıcı durumuna göre nasıl değiştirebilir? konuyu biraz daha açarak anlatabilirmisiniz.
VT Frebird/ibexpert, delphi7
Teşekkür ve saygılarla.
Kolay gelsin.
Bizim dertlerimizden biride bu. Yaptığımız çalışmada girilen verileri üç ayrı çeşitte matbu olan evraklara girmemiz gerekiyor. Bunu Quickreport ta hazırladım ve sorunsuz yazdırıyor. Fakat yazıcının değişmesi veya matbu evrakların çizili alanlarının değişmesinden dolayı qrdbtext lerin yerlerini değiştirmemiz gerekiyor. Bu durumdan dolayı prog. setup haline getiremiyorum. Yukarıda bu konu hakkında konuşulmuş fakat acemilikten tam olarak anlayamadım. Setup haline getirilen prg. da bu qrdbtext lerin yerlerini kullanıcı o an kağıt veya yazıcı durumuna göre nasıl değiştirebilir? konuyu biraz daha açarak anlatabilirmisiniz.
VT Frebird/ibexpert, delphi7
Teşekkür ve saygılarla.
Kolay gelsin.
önceden kaydedilmis sablonlar olusturun kagıt ve yazıcı durumuna gore
mesela bunları bir inifile da saklayabilirsiniz...
hepsi icin deneme yanılma yolu ile sablonları olusturabilirsiniz...
ornegin matbu1 icin
dbtext1 left=15,top=10
dbtext2 left=45,top=10
dbtext3 left=85,top=10
olsun matbu2 icin textlerin 10 pix kaydıgını varsayalım
dbtext1 left=15,top=20
dbtext2 left=45,top=20
dbtext3 left=85,top=20
bunun gibi hazır sablonlar olustur yazdırma oncesi ini filedan bunlar okunur
yukarıdaki yontemlede oldugu gibi uygulanır...
kolay gelsin
mesela bunları bir inifile da saklayabilirsiniz...
hepsi icin deneme yanılma yolu ile sablonları olusturabilirsiniz...
ornegin matbu1 icin
dbtext1 left=15,top=10
dbtext2 left=45,top=10
dbtext3 left=85,top=10
olsun matbu2 icin textlerin 10 pix kaydıgını varsayalım
dbtext1 left=15,top=20
dbtext2 left=45,top=20
dbtext3 left=85,top=20
bunun gibi hazır sablonlar olustur yazdırma oncesi ini filedan bunlar okunur
yukarıdaki yontemlede oldugu gibi uygulanır...
kolay gelsin
ÜŞENME,ERTELEME,VAZGEÇME
Ek olarak belirtmek isterim ki QRDbText lerin yerlerini pixel cinsinden kullanıcının hesaplayıp düzeltmesi biraz problem olabilir.
Bunun için QRDbText.Size.Left veya QrDbText.Size.Top özelliklerini kullanarak mm cinsinden konum belirleyebilirsiniz.. Tabi bende QR4 var ama önceki sürümlerinde de bu özellik vardı diye hatırlıyorum..
Bunun için QRDbText.Size.Left veya QrDbText.Size.Top özelliklerini kullanarak mm cinsinden konum belirleyebilirsiniz.. Tabi bende QR4 var ama önceki sürümlerinde de bu özellik vardı diye hatırlıyorum..
İlimle geçen bir gece,
ibadetle geçen bin geceden hayırlıdır. HZ. MUHAMMED (S.A.)
ibadetle geçen bin geceden hayırlıdır. HZ. MUHAMMED (S.A.)
merhabalar,
biliyorum çok geç bi cevap ama yinede geç olsada teşekkür etmek istedim, zira bu konu üzerinde yeni çalışabildim ve yardımlarınız sayesinde başardım.
takip ettiğim yol ise qrdbtext ve diğer bileşenlerin left ve top özelliklerini bi tablodan almasını sağlamak oldu.
formxxx.qrdbtext1.size.left:=ibdataset1.fieldbyname('xxx').asfloat;
şeklinde. kullanıcı buradan veri giriş formu ile ayarları yapıyor ve düzenlemeyi yapıyor.
teşekkür ve saygılarımla.
biliyorum çok geç bi cevap ama yinede geç olsada teşekkür etmek istedim, zira bu konu üzerinde yeni çalışabildim ve yardımlarınız sayesinde başardım.
takip ettiğim yol ise qrdbtext ve diğer bileşenlerin left ve top özelliklerini bi tablodan almasını sağlamak oldu.
formxxx.qrdbtext1.size.left:=ibdataset1.fieldbyname('xxx').asfloat;
şeklinde. kullanıcı buradan veri giriş formu ile ayarları yapıyor ve düzenlemeyi yapıyor.
teşekkür ve saygılarımla.
Tekrar merhabalar,
şimdi denemeler yapıyordum da farkına vardım. bu ayarları tablodan almasını sağlayarak düzenleme yapabiliyorum fakat kalıcı olmuyor o an ayarlarda değişiklik yapıyorum ama sonra projeyi kapatıp açtığımda qrdbtext lerin durumları eski haline döndüğünü görüyorum.
ayarları tablodan alam işini form üzerine bir button koydum ve onun onclick olayında yukarıda yazdığım kod satırı ile uygulatıyorum. önce kullanıcı mesafe ayarlarını yapıyor ve tabloya kaydediyor daha sonra forma uygula buttonu ile qr üzerindeki değişikliği yapıyor.
bu ayarların kalıcı olması için yukarıdaki kod satırını nereye yazmalıyım acaba? yoksa ini dosyasımı kullanmalıyım?
teşekkür ve saygılarımla
şimdi denemeler yapıyordum da farkına vardım. bu ayarları tablodan almasını sağlayarak düzenleme yapabiliyorum fakat kalıcı olmuyor o an ayarlarda değişiklik yapıyorum ama sonra projeyi kapatıp açtığımda qrdbtext lerin durumları eski haline döndüğünü görüyorum.
ayarları tablodan alam işini form üzerine bir button koydum ve onun onclick olayında yukarıda yazdığım kod satırı ile uygulatıyorum. önce kullanıcı mesafe ayarlarını yapıyor ve tabloya kaydediyor daha sonra forma uygula buttonu ile qr üzerindeki değişikliği yapıyor.
bu ayarların kalıcı olması için yukarıdaki kod satırını nereye yazmalıyım acaba? yoksa ini dosyasımı kullanmalıyım?
teşekkür ve saygılarımla
bunu şu şelilde yapabilirsin ....yayarlar diye bir tablon olsun ....
qreeportun onprewiev diye events ne (veya kendinde bir procedure yazabilirsin) ön izleme ayarlarını kenan ve nesnelerin ayarlarının tablondan aldır her defasında özizleme yapmadan önce tablona bakacağı için en ayarları ne şekilde kaydetmişsen o şekilde kalacaktır....
trsoft arkadaşın demek istediğinide onprewiev olayına yazmalısın....
"Yazdırma işleminden önce her seferinde QRdbText lerin yerini tablondaki değerlere göre yerleştir.
"
kolay gelsin
qreeportun onprewiev diye events ne (veya kendinde bir procedure yazabilirsin) ön izleme ayarlarını kenan ve nesnelerin ayarlarının tablondan aldır her defasında özizleme yapmadan önce tablona bakacağı için en ayarları ne şekilde kaydetmişsen o şekilde kalacaktır....
trsoft arkadaşın demek istediğinide onprewiev olayına yazmalısın....
"Yazdırma işleminden önce her seferinde QRdbText lerin yerini tablondaki değerlere göre yerleştir.
"
kolay gelsin
Siz hayal edin...Biz yapalım TuannaSoft...
merhabalar,
teşekkür etmekle başlamak istiyorum. sorunu sizin dediğinize yakın çözdüm diyebilirim.
veri giriş formlar üzerinde bulunan buttonlar ile bu quickreport lara ulaşıyordum. kullanıcı yazdırmak isteyince mutlaka yazdıracağım matbu forma uygun olan quick reportu açan düğmeye basması gerekiyordu. bende düşündüm kaşındım aklıma bu geldi madem her yazdırma isteğinde bu düğmeye basıyor qrdbtextlerin değerlerini alacağı kodu buraya yazayım ki her seferinde ayarlamayı ilgili tabloya bakarak yapsın.
çok karışık oldu dimi ben bilem anlamadım kısacası quickrep1.preview i gösteren formu açan buttonun onclick olayına yazdım.
burada trsoft ustamın bi uyarısına istinaden qrdbtext türü bileşenlerin size larında bulunan top ve left ler ile mm cinsinden yapmak istedim başaramadım. kod satırları hata vermeye başladı. ilk hata integer olan alan değerini float olarak değiştirince alt satıra geçti ve bende tüm alanları floata çevirdim çünki hiç run olmadan direkt satır kırmızı yanıp run duruyordu. floata çevirdikten sonra ise run başladı fakat daha ana form açılmasına yakın tekrar aplication access hatası ve içinde anladığım kadari ile alan uyuşmazlığı geçen hata satırını verdi bunlara tamam anlaşıldı deyince run devam etti fakat ayarlarda yapılan değişiklikler etkili olmadı. bende tekrar eskiye yani pixsel olarak girilen duruma döndüm.
denediğim kod şöle idi
bu satırlar ile access alan uyuşmazlığı hatası alınca
bu eski duruma döndüm. tablolarımda alanlarımı düzenliyorum. burada alanları düzenlemeyi unutsam neyse.
gerçi şimdi durum iş görüyor sadece pixsel olarak biraz kafa karıştıracak okadar.
teşekkür ve saygılarımla.
kolay gelsin
teşekkür etmekle başlamak istiyorum. sorunu sizin dediğinize yakın çözdüm diyebilirim.
veri giriş formlar üzerinde bulunan buttonlar ile bu quickreport lara ulaşıyordum. kullanıcı yazdırmak isteyince mutlaka yazdıracağım matbu forma uygun olan quick reportu açan düğmeye basması gerekiyordu. bende düşündüm kaşındım aklıma bu geldi madem her yazdırma isteğinde bu düğmeye basıyor qrdbtextlerin değerlerini alacağı kodu buraya yazayım ki her seferinde ayarlamayı ilgili tabloya bakarak yapsın.
çok karışık oldu dimi ben bilem anlamadım kısacası quickrep1.preview i gösteren formu açan buttonun onclick olayına yazdım.
burada trsoft ustamın bi uyarısına istinaden qrdbtext türü bileşenlerin size larında bulunan top ve left ler ile mm cinsinden yapmak istedim başaramadım. kod satırları hata vermeye başladı. ilk hata integer olan alan değerini float olarak değiştirince alt satıra geçti ve bende tüm alanları floata çevirdim çünki hiç run olmadan direkt satır kırmızı yanıp run duruyordu. floata çevirdikten sonra ise run başladı fakat daha ana form açılmasına yakın tekrar aplication access hatası ve içinde anladığım kadari ile alan uyuşmazlığı geçen hata satırını verdi bunlara tamam anlaşıldı deyince run devam etti fakat ayarlarda yapılan değişiklikler etkili olmadı. bende tekrar eskiye yani pixsel olarak girilen duruma döndüm.
denediğim kod şöle idi
Kod: Tümünü seç
formadfisiarkamtb.qrdbtext1.size.left:=formayarlar1.ibdataset1.fieldbyname('CERAIMNO_LEFT').asfloat;
..............
Kod: Tümünü seç
formadfisiarkamtb.qrdbtext1.left:=formayarlar1.ibdataset1.fieldbyname('CERAIMNO_LEFT').asinteger;
gerçi şimdi durum iş görüyor sadece pixsel olarak biraz kafa karıştıracak okadar.
teşekkür ve saygılarımla.
kolay gelsin