Merhabalar JasperReport ile tasarlamış olduğum raporumun .jrxml dosyasını, projenin çalışma anında düzenleyip "JasperCompileManager" ile compile ettikten sonra yeni bir rapor elde edebilir miyim?

soruldu: 30 Ara '14, 12:48

trigger's gravatar image

trigger
61446
cevap kabul oranı: 0%

değiştirildi: 31 Ara '14, 07:54

CemIkta's gravatar image

CemIkta ♦
19.9k29125190


Asagidaki kodlari kendi mantigina gore degistirirsen calismasi lazim.

// jrxml dosyasini oku
InputStream reportStream = this.getClass().getResourceAsStream("myReport.jrxml");

// template'i JasperDesign'a cevir  
JasperDesign jasperDesign = JRXmlLoader.load(reportStream);

// designi JasperReport olarak compile et  
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);

// JasperPrint olustur.  
// JasperReport, rapor parametreleri ve veritabani baglantisini ver.  
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, 
new HashMap<string, object="">(), veritabaniConnection);  
permanent link

cevaplandı: 31 Ara '14, 07:52

CemIkta's gravatar image

CemIkta ♦
19.9k29125190
cevap kabul oranı: 36%

Peki sizce çalışma anında xml dosyamızı compile etmek doğru bir yaklaşım mıdır? Eğer öyle ise ben programın çalışma anında xml verisini istediğim şekilde düzenleyip raporu dinamik olarak şekillendirebilirim. Bu mükemmel bir özellik değil midir?(Diğer raporlama araçlarını kullanmadığım için fikirlerim kısıtlı olabilir :))

(31 Ara '14, 12:23) trigger trigger's gravatar image

Tavsiye edilen ve hizli calisan sekli .jrxml dosyalarini design bittikten sonra iReport icinde .jasper olarak compile etmektir, boylece Java ile compile etmeden kullanirsiniz. Eger dinamiklikten kastiniz verilerse zaten verileri istediginiz veri kaynagini secerek dinamik verebilirsiniz, eger raporun gorunumu ile ilgili degisiklikler yapmak istiyorsaniz en pratik yol degisik durumlara gore farkli rapor template'leri olusturmak. Basit kontroller iReport icinde de expression olarak verilebilir. Ornegin su sartlari saglarsa bu alani raporda goster gibi.

(01 Oca '15, 20:03) CemIkta ♦ CemIkta's gravatar image

Eger *.jasper dosyalari ile islem yaparsaniz kod blogu biraz daha azalir.


// jdbc resultset ile datalari okur
JasperPrint jasperPrint = JasperFillManager.fillReport("reports/rapor1.jasper", 

mapParameters, new JRResultSetDataSource(resultset));

(01 Oca '15, 20:08) CemIkta ♦ CemIkta's gravatar image

@CemIkta hocam koşul ifadeleri sanki gelen veriler için bir düzenleme gibi geldi bana. Yani gelen veriye göre rengini değiştir,fontunu büyüt tarzı çalışıyor. Benim istediğim tasarımda A,B,C diye üç sütunumuz var diyelim ben kullanıcının isteğine göre, örneğin B,C yi göstermek istiyorum. Bu compile edilmiş .jasper uzantılı dosyada mümkün mü? Birde bu raporlarımızı web ortamında görüntülemek için JasperServer kullanmak zorunda mıyız? JasperExportManager.exportReportToPdfStream bu komut ile pdf formatında görüntüleyebiliyoruz. Fakat bu görüntülediğimiz sayfaya hiçbir müdehale yapamıyoruz. Örneğin button koyamıyoruz. Başka bir görüntüle yöntemi var mıdır?

(02 Oca '15, 13:26) trigger trigger's gravatar image
1

Bu tür raporlamalar icin degisik template'ler yapmalisiniz. Internet tarayicida Jasper raporlari degisik yollarla gosterebilirsiniz. 1. Raporun PDF ciktisini PDF.js(Mozilla gelistiriyor ve Firefox'da kullaniyor: http://mozilla.github.io/pdf.js/) ile web uygulamanizda gösterebilirsiniz. PDF.js üzerinde istediginiz UI degisikliklerini yapabilirsiniz. 2. Raporun HTML ciktisini bir div blogunda gostermek. Sanirim Jasper Dashboard araclari da degisik viewer secenekleri sunuyor.

(02 Oca '15, 22:15) CemIkta ♦ CemIkta's gravatar image
Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×8

Soruldu: 30 Ara '14, 12:48

Görüntüleme: 786 kez

Son güncelleme: 04 Oca '15, 21:52

powered by BitNami OSQA