Selasa, 26 Mei 2020

iReport

IReport
‐  JasperReports : Merupakan software open source untuk reporting
 iReport : Merupakan Visual Designer untuk membuat laporan yang komplek menggunakan   JasperReports library tanpa harus memiliki pengetahuan tentang XML
Cara Membuat Report di Java-Netbeans Menggunakan JasperReport dan Ireport.

 Install iReport cara nya seperti ini :

  • Extract iReport, kita pilih 4 File dengan format file nbm.
  • Buka Netbeans, pilih menu Tools > Plugins > (klik tab Downloaded)
  • Klik button Add, cari file iReport yang sudah kalian extract tadi
  • Setelah membuka folder extract td, CTRL + A, lalu pilih open ke empat filenya
  • Pastikan sudah tercentang semua, klik Install
  • pilih  next, next dan install saja IDE Installernya
 Contoh menggunakan iReport pada Java Netbeans :
  • Extract File Library nya, copy ke Folder Netbeans Project  : Documents > NetBeansProjects > iReport.
  • Pada Netbeans, Pilih project nya, pada Libraries klik kanan, Add Jar/Folder. Cari semua file library di project kalian tadi, CTRL + A, lalu Open
  • Kembali ke Libraries tadi, klik kanan Add Library, pilih MySQL JDBC Driver
  • Sekarang buat View nya dengan JframeFrom pada package ireport
  • Buat View hanya 1 button saja dulu, sebagai contoh untuk klik dan memanggil laporan nya
  • Pada package belajarreport, klik kanan, pilih New lalu Other, Cari Report dan pilih Report Wizard
  • Next , pilih Layout yang bagus dan beri nama report.
  • Setelah memberi nama, akan ada pilihan Connections. Kalian klik button New, pilih Database JDBC connection
  • Pastikan XAMPP MYSQL kalian sudah menyala
  • Sebelum di save, pastikan klik Test dulu untuk mentest koneksi Project kita apakah berhasil terkoneksi ke MySQL nya
  • Masukkan Query nya dari tabel
  • Next dan pindahkan semua fields ke kanan dengan mengklik tanda >> atau kalian pilih field mana saja yang nanti nya akan ditampilkan pada Laporan / Report
  • Next, dan Finish
  • Buka file report.jrxml, klik Preview (pastikan tabel  memiliki data)
  •  Cara nya jika button yang di buat pada JframeFrom tadi ketika di klik menampilkan laporan.
  • Buat dulu Class Koneksi , isi nya :
  • private void laporanActionPerformed(java.awt.event.ActionEvent evt) {                                       
                        String namaFile = "src/bgproject/iReport.jrxml";
                        String filetoFill ="src/bgproject/iReport.jasper";
                        try{
                        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/zakat4", "root", "");
                        JasperCompileManager.compileReport(namaFile);
                        Map param = new HashMap():
                        JasperFillManager.fillReport (filetoFill,param,conn);
                        JasperPrint jp = JasperFillManager.fillReport(filetoFill, param, conn);
                        JasperViewer.viewReport(jp, true);
                        }catch (Exception ex){
                            System.out.println(ex);
                        }
                    }                     

Minggu, 10 Mei 2020

CRUD dan Seraching Data

Tabel (CRUD dan Searching Data)
1. Buka Tampilan Tabel yang telah dibuat.
2. Buat Tampilan contohnya seperti ini :



















Catatan :
Tombol simpan yang ada pada tampilan tersebut memiliki fungsi untuk menyimpan data dan mengupdate data . Dan  tombol hapus untuk menghapus data.

1.  Langkah pertama membuat events yaitu mouse clik dimana jika kita mengkilik sebuah data maka akan memunculkan ID. 

Caranya adalah klik kana pada jTabel1 lalu klik pilih events>mouse Clicked.


Kodenya :
private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {                                    
        // TODO add your handling code here:
        DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
        int data_terpilih = jTable1.getSelectedRow();
        String ID = model.getValueAt(data_terpilih, 0).toString();
        String Nama = model.getValueAt(data_terpilih, 1).toString();
        String Alamat = model.getValueAt(data_terpilih, 2).toString();
        data.setText(ID);
        id.setText(ID);
        nama.setText(Nama);
        alamat.setText(Alamat);
    }        

Catatan:
Pertama buat sebuah variabel untuk menentukan baris mana yang akan diklik, baris mana yang akan ditampilkan.
Data terpilih (data_terpilih) untuk menentukan data apa yang muncul ketika diklik.
getSelectedRow(); adalah baris yang terpilih.



2. Selanjutnya yaitu source kode tombol simpan.
Disini akan membuat 2 buah kondisi dimana jika pada jTexfield (Data) yang ada pada bawah tabel pada terisi maka akan mengupdate data, dan apabila jTexfield (Data) yang ada pada bawah tabel pada keadaan kosong dan ID, Nama, Alamat terisi maka actionnya simpan


     private void simpanActionPerformed(java.awt.event.ActionEvent evt) {                                     
        // TODO add your handling code here:
        if (data.getText().equals("")) {
            try {
                Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/zakat9", "root", " ");
                Statement st = conn.createStatement();
                String query = "INSERT INTO zakat10 VALUES ('" + id.getText() + "','" + nama.getText() + "','" + alamat.getText() + "')";
                st.executeUpdate(query);
                JOptionPane.showMessageDialog(null, "Data Baru Telah Disimpan", "Status", 1);
                ShowDataTabel();
                reset();
            } catch (SQLException ex) {
                Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
            }

        } else {

            try {
                Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/zakat9", "root", " ");
                Statement st = conn.createStatement();
                String query = "UPDATE zakat10 SET ID = '" + id.getText() + "', Nama ='" + nama.getText() + "', Alamat ='"+alamat.getText()+"'"
                        +"WHERE ID= '" +data.getText() + "'";
                st.executeUpdate(query);
                JOptionPane.showMessageDialog(null, "Data Telah Diubah", "Status", 1);
                ShowDataTabel();
                reset();
            } catch (SQLException ex) {
                Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
      
 Membuat method untuk mengupdate tampilan :
Digunakan ketika akan merest/mengupdate jika berhasil tersimpan maka fiels yang ada pada ID,Nama,Alamat akan menjadi kosong semua.
Lalu memanggil method pada tombol simpan dibagian memasukkan data.


 public void reset() {
        id.setText(null);
        nama.setText(null);
        alamat.setText(null);
        data.setText(null);
    }
}


3. Source Kode Hapus

private void hapusActionPerformed(java.awt.event.ActionEvent evt) {                                     
        // TODO add your handling code here:
           int respon= JOptionPane.showConfirmDialog(null, "Anda Yakin Ingin Menghapus Data", "Status", 0);
           if (respon ==JOptionPane.YES_OPTION){
        try {
                Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/zakat9", "root", " ");
                Statement st = conn.createStatement();
                String query = "DELETE FROM zakat10 WHERE ID ='"+id.getText()+"' ";
                st.executeUpdate(query);
                JOptionPane.showMessageDialog(null, "Data Telah Dihapus", "Status", 1);
                ShowDataTabel();
                reset();
            } catch (SQLException ex) {
                Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
    }                                    
    }
    }      
 4. Pecaraian Data
 private void dataKeyReleased(java.awt.event.KeyEvent evt) {
            // TODO add your handling code here:
            String key_id = id.getText();
            try {
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/zakat9", "root", " ");
            String query = " SELECT* FROM  zakat10  WHERE ID LIKE '%"+key_id "%' OR Nama LIKE '%"+key_id "%' OR Alamat LIKE '%"+key_id "%' OR ;
            Statement st = conn.createStatement();
            ResultSet rs = st.executeQuery(query);
            DefaultTableModel tm = (DefaultTableModel) jTable1.getModel();
            tm.setRowCount(0);
            while (rs.next()) {
                String ID = rs.getString("ID");
                String Nama = rs.getString("Nama");
                String Alamat = rs.getString("Alamat");
                System.out.println(ID);
                tm.addRow(new Object[]{ID, Nama, Alamat});
            }
        } catch (SQLException ex) {
            System.out.println(ex);
        }
                           

Jumat, 01 Mei 2020

Tabel

Cara Menampilkan Data di Database ke Tabel.
1.Aktifkan Xampp lalu buat database

2. Kembali  ke JframeFrom dan buat table dengan cara mendrag Jtabel yang ada di Swing control,.

3. Edit table klik kanan pilih table Contents > columns.

4. Klik source lalu buat sebuah metod.
private void tampilan() {
new Tabel1(). setVisible (true);
        try {
                Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/zakat9", "root", " ");
                String query = “SELECT* FROM zakat10";
                Statement st = conn.createStatement();
ResultSet rs = executeQuery(query);
DefaultTabelModel tm = (DefaultTabelModel) jTabel1.getModel ();
tm.setRowCount (0);
            while (rs.next()) {
                String id = rs.getString “(id”);
                String nama = rs.getString “(nama”);
                tm.addRow[new Object[](id.nama)];
            }
        } catch (SQLException ex) {
            Logger.getLogger(FrmUtamajava.class.getName()).log(Level.SEVERE, null, ex);
        }
5. memanggil method.
public FrmUtamajava() {
        tampilan();

iReport

IReport ‐   JasperReports  : Merupakan software open source untuk reporting ‐  iReport  : Merupakan Visual Designer untuk membuat lapor...