IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

 Kayıt ol  Topluluk
Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 18 Mart 2015, 15:04   #1
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Java'da Parametrik Rapor




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
Geçen dersimizde parametrik rapor için bir IReports'da bir rapor oluşturmuştuk ve parametremizi belirlemiştik. Bu dersimizde bu parametreye post edeceğimiz Java kodlarından bahsedeceğim. Öncelikle database kısmında bir listeleme işlemi gerçekleştireceğim. Listeleceğim tablo Departman tablosu: public static List<DepartmanDomain> listele() { List<DepartmanDomain> liste = new ArrayList<DepartmanDomain>(); Connection conn = getConnection(); try { Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM departman"); while (rs.next()) { DepartmanDomain siradakiDepartmanDomain = new DepartmanDomain(); siradakiDepartmanDomain.setId(rs.getInt("id")); siradakiDepartmanDomain.setDepartmanAdi(rs .getString("departmanAdi")); liste.add(siradakiDepartmanDomain); } stmt.close(); conn.close(); } catch (SQLException e) { e.printStackTrace(); } DepartmanDao class'ın da Departman tablosunu kısaca bu şekilde listeletiyoruz. Ardından bu listeleme methodunu Combobox2ımızın içerisinde çağırıyoruz. final JComboBox departmanBox = new JComboBox(DepartmanDao.listele().toArray()); http://resim.sanalkurs.net/uploads/departman.jpg Listeleme işlemimizi gerçekleştirdikten sonra Button nesnesi oluşturuyoruz. JButton departmanButton = new JButton("Departman Raporu"); Ardından oluşturduğumuz bu buton nesnesine action listener veriyoruz aşağıdaki gibi. departmanButton.addActionListener(new ActionListener() { public **** actionPerformed(ActionEvent arg0) { // Parametrik raporun yazılacağı kısım. } }); Ardından oluşturduğumuz bu action listener'ın içini dolduruyoruz aşağıdaki gibi. departmanButton.addActionListener(new ActionListener() { public **** actionPerformed(ActionEvent arg0) { Connection baglanti = RaporDbConfig.getConnection(); try { DepartmanDomain secilenDepartmanDomain = (DepartmanDomain) departmanBox.getSelectedItem(); System.out.println(secilenDepartmanDomain.getId()) ; Map model = new HashMap(); model.put("id",secilenDepartmanDomain.getId()); JasperPrint print = JasperFillManager.fillReport("raporlar/departmanParams/departmanRaporu.jasper",model, baglanti); JasperViewer.viewReport(print, false) baglanti.close(); } catch (JRException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } }); Kısaca parametrik rapor için yukarıda ki işlemler yapıldı bu işlemleri açıklayacak olursak; Connection baglanti = RaporDbConfig.getConnection(); Raporumuzun çalışması için doğru database , kullanıcı ve şifresi gerekmektedir. Bu yüzden Connection nesnesi oluşturuyoruz sonra RaporDbConfig.getConnection(); methodunda bulunan kullancı adı şifre ve database yolunu belirtiyoruz ardından; DepartmanDomain secilenDepartmanDomain = (DepartmanDomain) departmanBox.getSelectedItem(); DepartmanBox nesnesini DepartmanDomain ile cast ediyoruz. Bir önceki dersimiz olan(JCombobox'ta Database'den Veri Çekmek ve Bu Listelenen Verilerinin Sütununu Görmek.) adlı makalemizde combobox da bulunan verilerinin sutununu öğreniyorduk. İşte burada öğrendiğimiz tabloda ki id'yi tespit ediyoruz. Sonra tespit edilen bu id'yi System.out.println(secilenDepartmanDomain.getId()) ; İle test ediyoruz doğru buluyor mu bulmuyor mu diye. Ardından; Çalıştığından emin olduktan sonra Map model = new HashMap(); Nesnesi oluşturuyoruz. Sonra oluşturduğumuz bu nesnenin içerisine departmanBox'ta id'sini tespit ettiğimiz nesneimizi import ediyoruz. model.put("id",secilenDepartmanDomain.getId()); Ardından; JasperPrint print = JasperFillManager.fillReport("raporlar/departmanParams/departmanRaporu.jasper",model, baglanti); Burada JasperPrint kütüphanesinde yer alan JasperFillMager.fillReport() metodunun içersine rapor konumuzu ve id'yi tespit ettiğimiz Map nesnesinden türetilmiş model nesnemizi ve connection nesnesinden türettiğimiz baglanti nesnesini atıyoruz. Ardından; JasperViewer.viewReport(print, false); Methodunun içerisine JasperPrint nesnesini atıyoruz. Sonra durumunu false Yapıyoruz false'un Amacı rapor kapandığında program da kapanmasın. Ardından Connection'ımızı kapatıyoruz.


__________________
SusKun ve Sessiz Mürekkep...


Kullanıcı imzalarındaki bağlantı ve resimleri görebilmek için en az 20 mesaja sahip olmanız gerekir ya da üye girişi yapmanız gerekir.

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Cevapla

Etiketler
javada, parametrik, rapor


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
JRE (Java Runtime Engine - Java Çalışma Zamanı Motoru) toXic Java 2 18 Aralık 2011 13:40
Sorun söyleyeyim (Java,JSP,ASP.NET(C#),PL/SQL,jQuery,Java Script,Ajax) J2EE123 Java 2 03 Kasım 2011 12:57
JRE (Java Runtime Engine - Java Çalışma Zamanı Motoru) Stealth Java 1 29 Eylül 2010 22:19