Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.*;
- import java.sql.*;
- import java.util.*;
- import java.text.*;
- import java.lang.*;
- import java.io.*;
- import javax.swing.table.DefaultTableModel;
- import net.sf.jasperreports.engine.*;
- import net.sf.jasperreports.engine.util.*;
- import net.sf.jasperreports.view.*;
- public class CetakLapSkJabatan extends JInternalFrame implements ActionListener{
- private Dimension UM = Toolkit.getDefaultToolkit().getScreenSize();
- private JPanel y = new JPanel();
- private JLabel lblBerdasarkan = new JLabel ("Berdasarkan :"),
- lblNrk = new JLabel ("NRK :"),
- lblNama = new JLabel ("Nama :"),
- lblPeriode = new JLabel ("Periode :");
- private JTextField txtNrk = new JTextField (6),
- txtNama = new JTextField(25),
- txtPeriode = new JTextField (4);
- private String[] arrCari = {"NRK","Semua Pegawai"};
- private JComboBox cboBerdasarkan = new JComboBox(arrCari);
- private JButton btnCetak = new JButton ("Cetak"),
- btnCari = new JButton ("Cari"),
- btnBersih = new JButton ("Bersih");
- public CetakLapSkJabatan(){
- super ("Cetak Laporan SK Jabatan",false,true,false,true);
- setSize (375, 245);
- y .setLayout(null);
- lblBerdasarkan.setBounds(45,20,100,25);
- lblNrk.setBounds(45,55,100,25);
- lblNama.setBounds(45,90,100,25);
- lblPeriode.setBounds(45,125,100,25);
- cboBerdasarkan.setBounds(140,20,120,25);
- txtNrk.setBounds(140,55,90,25);
- txtNama.setBounds(140,90,170,25);
- txtPeriode.setBounds(140,125,90,25);
- btnCetak.setBounds(60,170,100,25);
- btnCari.setBounds(230,55,80,25);
- btnBersih.setBounds(190,170,100,25);
- y.add (lblBerdasarkan);
- y.add (lblNrk);
- y.add (lblPeriode);
- y.add (lblNama);
- y.add (cboBerdasarkan);
- y.add (txtNrk);
- y.add (txtPeriode);
- y.add (txtNama);
- y.add (btnCetak);
- y.add (btnBersih);
- y.add (btnCari);
- getContentPane().add (y);
- btnCari.addActionListener(this);
- btnCetak.addActionListener(this);
- btnBersih.addActionListener(this);
- init();
- setVisible (true);
- }
- void init(){
- cboBerdasarkan.setSelectedIndex(0);
- txtNrk.setText("");
- txtNrk.setEnabled(false);
- txtNama.setText("");
- txtNama.setEnabled(false);
- txtPeriode.setText("");
- txtPeriode.setEnabled(true);
- btnCetak.setEnabled(true);
- btnBersih.setEnabled(true);
- btnCari.setEnabled(true);
- }
- void bersih(){
- txtNrk.setText("");
- txtNrk.setEnabled(false);
- txtNama.setText("");
- txtNama.setEnabled(false);
- txtPeriode.setText("");
- txtPeriode.setEnabled(true);
- cboBerdasarkan.setSelectedIndex(1);
- btnCetak.setEnabled(true);
- btnBersih.setEnabled(true);
- btnCari.setEnabled(true);
- txtNrk.requestFocus();
- }
- void cari(){
- try{
- Koneksi objKon = new Koneksi();
- Connection con = objKon.bukaKoneksi();
- Statement st = con.createStatement(); //3
- String sql = "Select * From pegawai Where Nrk='"+txtNrk.getText()+"'";
- ResultSet rs = st.executeQuery(sql);
- if(rs.next()){
- txtNama.setText(rs.getString("Nama"));
- txtPeriode.setText("");
- txtPeriode.setEnabled(true);
- btnCetak.setEnabled(true);
- btnBersih.setEnabled(true);
- }
- /*else{
- btnCetak.setEnabled(false);
- btnBersih.setEnabled(false);
- }*/
- rs.close(); //7
- con.close(); //8
- /*txtNrk.setEnabled(false);
- txtNama.setEnabled(false);
- txtPeriode.setEnabled(false);*/
- }
- catch(SQLException e){
- }
- }
- void cetakPerPegawai(){
- try{
- String nmFile = "./Laporan/Laporan SK Jabatan.jasper";
- String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
- String koneksi = "jdbc:odbc:MS Access Database";
- String user = "";
- String password = "";
- HashMap parameter = new HashMap();
- parameter.put("nrk",txtNrk.getText());
- Class.forName(driver);
- Connection conn = DriverManager.getConnection(koneksi, user, password);
- File report_file = new File(nmFile);
- JasperReport jasperReport = (JasperReport)JRLoader.loadObject(report_file.getPath() );
- JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameter,conn);
- JasperViewer.viewReport(jasperPrint,false);
- JasperViewer.setDefaultLookAndFeelDecorated(true);
- }
- catch(Exception e){
- JOptionPane.showMessageDialog(null,"Data tidak dapat dicetak! "+e,"Cetak Data", JOptionPane.ERROR_MESSAGE);
- }
- }
- void cetakSemuaPerPeriode(){
- try{
- String nmFile = "./Laporan/Laporan SK Jabatan(All).jasper";
- String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
- String koneksi = "jdbc:odbc:MS Access Database";
- String user = "";
- String password = "";
- HashMap parameter = new HashMap();
- parameter.put("periode",txtPeriode.getText());
- Class.forName(driver);
- Connection conn = DriverManager.getConnection(koneksi, user, password);
- File report_file = new File(nmFile);
- JasperReport jasperReport = (JasperReport)JRLoader.loadObject(report_file.getPath() );
- JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameter,conn);
- JasperViewer.viewReport(jasperPrint,false);
- JasperViewer.setDefaultLookAndFeelDecorated(true);
- }
- catch(Exception e){
- JOptionPane.showMessageDialog(null,"Data tidak dapat dicetak! "+e,"Cetak Data", JOptionPane.ERROR_MESSAGE);
- }
- }
- void cetakSemuaPeriode(){
- try{
- String nmFile = "./Laporan/Laporan SK Jabatan(Semua Periode).jasper";
- String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
- String koneksi = "jdbc:odbc:MS Access Database";
- String user = "";
- String password = "";
- HashMap parameter = new HashMap();
- Class.forName(driver);
- Connection conn = DriverManager.getConnection(koneksi, user, password);
- File report_file = new File(nmFile);
- JasperReport jasperReport = (JasperReport)JRLoader.loadObject(report_file.getPath() );
- JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameter,conn);
- JasperViewer.viewReport(jasperPrint,false);
- JasperViewer.setDefaultLookAndFeelDecorated(true);
- }
- catch(Exception e){
- JOptionPane.showMessageDialog(null,"Data tidak dapat dicetak! "+e,"Cetak Data", JOptionPane.ERROR_MESSAGE);
- }
- }
- public void actionPerformed(ActionEvent ae){
- if(cboBerdasarkan.getSelectedItem().toString().equals("Semua Pegawai")){
- btnCari.setEnabled(false);
- txtPeriode.setEnabled(true);
- System.out.println(cboBerdasarkan.getSelectedItem().toString());
- }
- else{
- btnCari.setEnabled(true);
- txtPeriode.setEnabled(false);
- }
- if(ae.getSource()==btnCari){
- PopUpPegawai popuppegawai = new PopUpPegawai();
- popuppegawai.setText(txtNrk);
- popuppegawai.setModal(true);
- popuppegawai.setVisible(true);
- cari();
- }
- if(ae.getSource()==btnCetak){
- if (cboBerdasarkan.getSelectedItem().equals("Semua Pegawai")){
- if(txtPeriode.getText().equals("")){
- cetakSemuaPeriode();}
- else{
- cetakSemuaPerPeriode();
- }
- }
- else{
- cetakPerPegawai();
- }
- }
- if(ae.getSource()==btnBersih){
- bersih();
- }
- }
- public static void main (String[] args){
- new CetakLapSkJabatan();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement