achmad.rifai.admin.ui.Saver.java Source code

Java tutorial

Introduction

Here is the source code for achmad.rifai.admin.ui.Saver.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package achmad.rifai.admin.ui;

import achmad.rifai.erp1.util.Db;
import java.awt.Color;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;

/**
 *
 * @author ai
 */
public class Saver extends javax.swing.JDialog {
    private String id;
    private java.io.File f;

    /**
     * Creates new form Saver
     */
    public Saver(java.awt.Frame parent, boolean modal, String i) {
        super(parent, modal);
        id = i;
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        prog = new javax.swing.JProgressBar();

        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
        setUndecorated(true);
        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowOpened(java.awt.event.WindowEvent evt) {
                formWindowOpened(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup().addContainerGap()
                        .addComponent(prog, javax.swing.GroupLayout.DEFAULT_SIZE, 388, Short.MAX_VALUE)
                        .addContainerGap()));
        layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup().addContainerGap()
                        .addComponent(prog, javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

        pack();
        setLocationRelativeTo(null);
    }// </editor-fold>//GEN-END:initComponents

    private void formWindowOpened(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_formWindowOpened
        new Thread(this::jalan).start();
        try {
            achmad.rifai.admin.util.Work.jejak(id, "Menyimpan backup data");
        } catch (Exception ex) {
            Db.hindar(ex);
        }
    }//GEN-LAST:event_formWindowOpened
     // Variables declaration - do not modify//GEN-BEGIN:variables

    private javax.swing.JProgressBar prog;
    // End of variables declaration//GEN-END:variables

    private void jalan() {
        javax.swing.JFileChooser fc = new javax.swing.JFileChooser();
        fc.setAcceptAllFileFilterUsed(false);
        fc.setFileFilter(new javax.swing.filechooser.FileNameExtensionFilter("Excel File(*.xlsx)", "xlsx"));
        fc.setFileSelectionMode(javax.swing.JFileChooser.FILES_ONLY);
        fc.setFileHidingEnabled(true);
        fc.setMultiSelectionEnabled(false);
        while (javax.swing.JFileChooser.APPROVE_OPTION != fc.showSaveDialog(rootPane)) {
        }
        this.setCursor(new java.awt.Cursor(java.awt.Cursor.WAIT_CURSOR));
        f = fc.getSelectedFile();
        if (f.exists())
            f.delete();
        lanjut();
    }

    private void lanjut() {
        try {
            Db d = achmad.rifai.erp1.util.Work.loadDB();
            barang(d);
            absen(d);
            jabatan(d);
            jurnal(d);
            karyawan(d);
            keluar(d);
            ledger(d);
            pelanggan(d);
            pembelian(d);
            penjualan(d);
            pesan(d);
            rekening(d);
            suplier(d);
            income(d);
            tracks(d);
            tugas(d);
            bonus(d);
            d.close();
        } catch (Exception ex) {
            Db.hindar(ex);
        }
        this.setVisible(false);
    }

    private void barang(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook();
        org.apache.poi.xssf.usermodel.XSSFSheet s = w.createSheet("barang");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Kode");
        title(1, r1, "Nama");
        title(2, r1, "Harga");
        title(3, r1, "Stok");
        title(4, r1, "Satuan");
        title(5, r1, "Hapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Barang b : new achmad.rifai.erp1.entity.dao.DAOBarang(d).all()) {
            XSSFRow r = s.createRow(x);
            konten(0, r, b.getKode());
            konten(1, r, b.getNama());
            konten(2, r, "" + b.getHarga());
            konten(3, r, "" + b.getStok());
            konten(4, r, b.getSatuan());
            konten(5, r, "" + b.isDeleted());
            x++;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((1 * 100) / 17);
    }

    private void jabatan(Db d) throws Exception {
        java.io.FileInputStream i = new java.io.FileInputStream(f);
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(i);
        org.apache.poi.xssf.usermodel.XSSFSheet s = w.createSheet("jabatan");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Nama");
        title(1, r1, "Gaji");
        title(2, r1, "Kapasitas");
        title(3, r1, "Hapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Jabatan j : new achmad.rifai.erp1.entity.dao.DAOJabatan(d).all()) {
            XSSFRow r = s.createRow(x);
            konten(0, r, j.getNama());
            konten(1, r, "" + j.getGaji());
            konten(2, r, "" + j.getKapasitas());
            konten(3, r, "" + j.isDeleted());
            x++;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((3 * 100) / 17);
        i.close();
    }

    private void jurnal(Db d) throws Exception {
        java.io.FileInputStream i = new java.io.FileInputStream(f);
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(i);
        org.apache.poi.xssf.usermodel.XSSFSheet s = w.createSheet("jurnal");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Kode");
        title(1, r1, "Tanggal");
        title(2, r1, "Keterangan");
        title(3, r1, "No");
        title(4, r1, "Hapus");
        title(5, r1, "Kredit");
        title(6, r1, "Debit");
        int x = 1;
        for (achmad.rifai.erp1.entity.Jurnal j : new achmad.rifai.erp1.entity.dao.DAOJurnal(d).all()) {
            XSSFRow r = s.createRow(x);
            konten(0, r, j.getKode());
            konten(1, r, "" + j.getTgl());
            konten(2, r, j.getKet());
            konten(3, r, "" + j.getNo());
            konten(4, r, "" + j.isDeleted());
            konten(5, r, "" + j.getKredit());
            konten(6, r, "" + j.getDebit());
            x++;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((4 * 100) / 17);
        i.close();
    }

    private void keluar(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        org.apache.poi.xssf.usermodel.XSSFSheet s = w.createSheet("expenses");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Kode");
        title(1, r1, "Tanggal");
        title(2, r1, "Jurnal");
        title(3, r1, "Uang");
        title(4, r1, "Hapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Keluar k : new achmad.rifai.erp1.entity.dao.DAOKeluar(d).all()) {
            XSSFRow r = s.createRow(x);
            konten(0, r, k.getKode());
            konten(1, r, "" + k.getTgl());
            konten(2, r, k.getJurnal());
            konten(3, r, "" + k.getUang());
            konten(4, r, "" + k.isDeleted());
            x++;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((6 * 100) / 17);
    }

    private void ledger(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        org.apache.poi.xssf.usermodel.XSSFSheet s = w.createSheet("ledger");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Kode");
        title(1, r1, "Tanggal");
        title(2, r1, "Keterangan");
        title(3, r1, "No");
        title(4, r1, "Debit");
        title(5, r1, "Kredit");
        title(6, r1, "Hapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Ledger l : new achmad.rifai.erp1.entity.dao.DAOLedger(d).all()) {
            XSSFRow r = s.createRow(x);
            konten(0, r, l.getKode());
            konten(1, r, "" + l.getTgl());
            konten(2, r, l.getKet());
            konten(3, r, "" + l.getNo());
            konten(4, r, "" + l.getDebit());
            konten(5, r, "" + l.getKredit());
            konten(6, r, "" + l.isDeleted());
            x++;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((7 * 100) / 17);
    }

    private void title(int i, XSSFRow r1, String s) {
        org.apache.poi.xssf.usermodel.XSSFCell c = r1.createCell(i);
        c.setCellType(CellType.STRING);
        c.setCellValue(s);
        org.apache.poi.xssf.usermodel.XSSFCellStyle cs = c.getCellStyle();
        cs.setFillBackgroundColor(new org.apache.poi.xssf.usermodel.XSSFColor(Color.BLACK));
        cs.setFillForegroundColor(new org.apache.poi.xssf.usermodel.XSSFColor(Color.YELLOW));
        cs.setAlignment(HorizontalAlignment.CENTER);
        cs.setVerticalAlignment(VerticalAlignment.CENTER);
        cs.setBorderBottom(BorderStyle.DASHED);
        cs.setBorderTop(BorderStyle.DASHED);
        cs.setBorderLeft(BorderStyle.DASHED);
        cs.setBorderRight(BorderStyle.DASHED);
    }

    private void konten(int i, XSSFRow r, String s) {
        org.apache.poi.xssf.usermodel.XSSFCell c = r.createCell(i);
        c.setCellType(CellType.STRING);
        c.setCellValue(s);
        org.apache.poi.xssf.usermodel.XSSFCellStyle cs = c.getCellStyle();
        cs.setFillBackgroundColor(new org.apache.poi.xssf.usermodel.XSSFColor(Color.WHITE));
        cs.setFillForegroundColor(new org.apache.poi.xssf.usermodel.XSSFColor(Color.BLACK));
        cs.setAlignment(HorizontalAlignment.JUSTIFY);
        cs.setVerticalAlignment(VerticalAlignment.TOP);
        cs.setBorderBottom(BorderStyle.DASHED);
        cs.setBorderTop(BorderStyle.DASHED);
        cs.setBorderLeft(BorderStyle.DASHED);
        cs.setBorderRight(BorderStyle.DASHED);
    }

    private void absen(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("absen");
        XSSFRow r1 = s.createRow(0), r2 = s.createRow(1);
        title2(0, r1, "Tanggal", s);
        s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(0, 0, 1, 2));
        title(1, r1, "Daftar");
        title2(3, r1, "Hapus", s);
        title(1, r2, "Pegawai");
        title(2, r2, "Keadaan");
        int x = 2;
        for (achmad.rifai.erp1.entity.BukuAbsen b : new achmad.rifai.erp1.entity.dao.DAOBukuAbsen(d).all()) {
            int y = x;
            for (achmad.rifai.erp1.entity.Absen a : b.getL()) {
                XSSFRow r = s.createRow(y);
                konten(1, r, a.getS());
                konten(2, r, "" + a.getL());
                y++;
            }
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 0, 0));
            konten1(0, r, b.getTgl());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 3, 3));
            konten1(3, r, "" + b.isDeleted());
            x = y + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((2 * 100) / 17);
    }

    private void karyawan(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("karyawan");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "ID");
        title(1, r1, "Nama");
        title(2, r1, "Alamat");
        title(3, r1, "Password");
        title(4, r1, "E-Mail");
        title(5, r1, "Jabatan");
        title(6, r1, "Tanggal Diterima");
        title(7, r1, "Telepon / HP");
        title(8, r1, "Sedang Login");
        title(9, r1, "Sedang Dicekal");
        title(10, r1, "Hapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Karyawan k : new achmad.rifai.erp1.entity.dao.DAOKaryawan(d).all()) {
            int y = x;
            for (String st : k.getAlamat()) {
                XSSFRow r = s.createRow(y);
                konten(2, r, st);
                y++;
            }
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 0, 0));
            konten1(0, r, k.getId());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 1, 1));
            konten1(1, r, k.getNama());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 3, 3));
            konten1(3, r, k.getPass());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 4, 4));
            konten1(4, r, k.getEmail());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 5, 5));
            konten1(5, r, k.getJabatan());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 6, 6));
            konten1(6, r, "" + k.getHiredate());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 7, 7));
            konten1(7, r, k.getTelp());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 8, 8));
            konten1(8, r, "" + k.isMasuk());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 9, 9));
            konten1(9, r, "" + k.isBlocked());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 10, 10));
            konten1(10, r, "" + k.isDeleted());
            x = y + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((5 * 100) / 17);
    }

    private void konten1(int i, XSSFRow r, String s) {
        org.apache.poi.xssf.usermodel.XSSFCell c = r.createCell(i);
        c.setCellType(CellType.STRING);
        c.setCellValue(s);
        org.apache.poi.xssf.usermodel.XSSFCellStyle cs = c.getCellStyle();
        cs.setFillBackgroundColor(new org.apache.poi.xssf.usermodel.XSSFColor(Color.WHITE));
        cs.setFillForegroundColor(new org.apache.poi.xssf.usermodel.XSSFColor(Color.BLACK));
        cs.setAlignment(HorizontalAlignment.CENTER);
        cs.setVerticalAlignment(VerticalAlignment.CENTER);
        cs.setBorderBottom(BorderStyle.DASHED);
        cs.setBorderTop(BorderStyle.DASHED);
        cs.setBorderLeft(BorderStyle.DASHED);
        cs.setBorderRight(BorderStyle.DASHED);
    }

    private void title2(int i, XSSFRow r1, String s, XSSFSheet sh) {
        sh.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(0, 1, i, i));
        org.apache.poi.xssf.usermodel.XSSFCell c = r1.createCell(i);
        c.setCellType(CellType.STRING);
        c.setCellValue(s);
        org.apache.poi.xssf.usermodel.XSSFCellStyle cs = c.getCellStyle();
        cs.setFillBackgroundColor(new org.apache.poi.xssf.usermodel.XSSFColor(Color.BLACK));
        cs.setFillForegroundColor(new org.apache.poi.xssf.usermodel.XSSFColor(Color.YELLOW));
        cs.setAlignment(HorizontalAlignment.CENTER);
        cs.setVerticalAlignment(VerticalAlignment.CENTER);
        cs.setBorderBottom(BorderStyle.DASHED);
        cs.setBorderTop(BorderStyle.DASHED);
        cs.setBorderLeft(BorderStyle.DASHED);
        cs.setBorderRight(BorderStyle.DASHED);
    }

    private void pelanggan(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("pelanggan");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Kode");
        title(1, r1, "Nama Pelanggan");
        title(2, r1, "Alamat");
        title(3, r1, "Telepon");
        title(4, r1, "Dicekal");
        title(5, r1, "Dihapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Pelanggan p : new achmad.rifai.erp1.entity.dao.DAOPelanggan(d).all()) {
            int y = x, c, z = x;
            for (String st : p.getAlamat()) {
                XSSFRow r = s.createRow(y);
                konten(2, r, st);
                y++;
            }
            for (String st : p.getTelp()) {
                XSSFRow r = s.createRow(z);
                konten(3, r, st);
                z++;
            }
            if (y > z)
                c = y;
            else
                c = z;
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, c, 0, 0));
            konten1(0, r, p.getKode());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, c, 1, 1));
            konten1(1, r, p.getNama());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, c, 4, 4));
            konten1(4, r, "" + p.isBlocked());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, c, 5, 5));
            konten1(5, r, "" + p.isDeleted());
            x = c + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((8 * 100) / 17);
    }

    private void pembelian(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("pembelian");
        XSSFRow r1 = s.createRow(0), r2 = s.createRow(1);
        title2(0, r1, "Struk", s);
        title2(1, r1, "Pemasok", s);
        title2(2, r1, "Tanggal", s);
        s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(0, 0, 3, 6));
        title(3, r1, "Item");
        title(3, r2, "Barang");
        title(4, r2, "Jumlah");
        title(5, r2, "Satuan");
        title(6, r2, "Sub Total");
        title2(7, r1, "Total", s);
        title2(8, r1, "Hapus", s);
        int x = 2;
        for (achmad.rifai.erp1.entity.Pembelian p : new achmad.rifai.erp1.entity.dao.DAOPembelian(d).all()) {
            int y = x;
            for (achmad.rifai.erp1.entity.ItemBeli i : p.getItems()) {
                XSSFRow r = s.createRow(y);
                konten(3, r, i.getBarang());
                konten(4, r, "" + i.getJumlah());
                konten(5, r, i.getSatuan());
                konten(6, r, "" + i.getHarga());
                y++;
            }
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 0, 0));
            konten1(0, r, p.getStruk());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 1, 1));
            konten1(1, r, p.getSuplier());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 2, 2));
            konten1(2, r, "" + p.getTgl());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 7, 7));
            konten1(7, r, "" + p.getHarga());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 8, 8));
            konten1(8, r, "" + p.isDeleted());
            x = y + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((9 * 100) / 17);
    }

    private void penjualan(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("penjualan");
        XSSFRow r1 = s.createRow(0), r2 = s.createRow(1);
        title2(0, r1, "Nota", s);
        title2(1, r1, "Pelanggan", s);
        title2(2, r1, "Tanggal", s);
        s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(0, 0, 3, 5));
        title(3, r1, "Item");
        title(3, r2, "Barang");
        title(4, r2, "Qty");
        title(5, r2, "Sub Total");
        title2(6, r1, "Total", s);
        title2(7, r1, "Terbayar", s);
        title2(8, r1, "Keterangan", s);
        int x = 2;
        for (achmad.rifai.erp1.entity.Penjualan p : new achmad.rifai.erp1.entity.dao.DAOPenjualan(d).all()) {
            int y = x;
            for (achmad.rifai.erp1.entity.ItemJual i : p.getItems()) {
                XSSFRow r = s.createRow(y);
                konten(3, r, i.getBarang());
                konten(4, r1, "" + i.getJumlah());
                konten(5, r1, "" + i.getUang());
                y++;
            }
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 0, 0));
            konten1(0, r, p.getNota());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 1, 1));
            konten1(1, r, p.getPelanggan());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 2, 2));
            konten1(2, r, "" + p.getTgl());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 6, 6));
            konten1(6, r, "" + p.getTotal());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 7, 7));
            konten1(7, r, "" + p.getTerbayar());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 8, 8));
            konten1(8, r, p.getKet());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 9, 9));
            konten1(9, r, "" + p.isDeleted());
            x = y + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((10 * 100) / 17);
    }

    private void pesan(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("pesan");
        XSSFRow r1 = s.createRow(0), r2 = s.createRow(1);
        title2(0, r1, "Kode Pesan", s);
        title2(1, r1, "Pengirim", s);
        title2(2, r1, "Waktu", s);
        s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(0, 0, 3, 4));
        title(3, r1, "Penerima");
        title(3, r2, "Pembaca");
        title(4, r2, "Sudah Dibaca");
        title2(5, r1, "Isi", s);
        title2(6, r1, "Hapus", s);
        int x = 2;
        for (achmad.rifai.erp1.entity.Pesan p : new achmad.rifai.erp1.entity.dao.DAOPesan(d).all()) {
            int y = x;
            for (achmad.rifai.erp1.entity.Penerima pe : p.getKe()) {
                XSSFRow r = s.createRow(y);
                konten(3, r, pe.getAkun());
                konten(4, r, "" + pe.isTerbaca());
                y++;
            }
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 0, 0));
            konten1(0, r, p.getKode());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 1, 1));
            konten1(1, r, p.getPengirim());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 2, 2));
            konten1(2, r, "" + p.getWaktu());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 5, 5));
            konten1(5, r, p.getPesan());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 6, 6));
            konten1(6, r, "" + p.isDeleted());
            x = y + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((11 * 100) / 17);
    }

    private void rekening(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("Rekening");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Kode");
        title(1, r1, "Golongan");
        title(2, r1, "Posisi");
        title(3, r1, "Keterangan");
        title(4, r1, "Hapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Rekening re : new achmad.rifai.erp1.entity.dao.DAORekening(d).all()) {
            XSSFRow r = s.createRow(x);
            konten(0, r, re.getKode());
            konten(1, r, re.getGolongan());
            konten(2, r, re.getPosisi());
            konten(3, r, re.getKet());
            konten(4, r, "" + re.isDeleted());
            x++;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((12 * 100) / 17);
    }

    private void income(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("Pemasukan");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Kode");
        title(1, r1, "Jurnal");
        title(2, r1, "Tanggal");
        title(3, r1, "Jumlah");
        title(4, r1, "Hapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Terima t : new achmad.rifai.erp1.entity.dao.DAOTerima(d).all()) {
            XSSFRow r = s.createRow(x);
            konten(0, r, t.getKode());
            konten(1, r, t.getJurnal());
            konten(2, r, "" + t.getTgl());
            konten(3, r, "" + t.getUang());
            konten(4, r, "" + t.isDeleted());
            x++;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((14 * 100) / 17);
    }

    private void tracks(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("Buku Perilaku");
        XSSFRow r1 = s.createRow(0), r2 = s.createRow(1);
        title2(0, r1, "Kode", s);
        title2(1, r1, "Pegawai", s);
        title2(4, r1, "Bulan", s);
        s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(0, 0, 2, 3));
        title(2, r1, "Daftar");
        title(2, r2, "Perilaku");
        title(3, r2, "Waktu");
        title2(5, r1, "Tahun", s);
        title2(6, r1, "Hapus", s);
        int x = 2;
        for (achmad.rifai.erp1.entity.Tracks t : new achmad.rifai.erp1.entity.dao.DAOTracks(d).all()) {
            int y = x;
            for (achmad.rifai.erp1.entity.Jejak j : t.getL()) {
                XSSFRow r = s.createRow(y);
                konten(2, r, j.getAksi());
                konten(3, r, "" + j.getWaktu());
                y++;
            }
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 0, 0));
            konten1(0, r, t.getKode());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 1, 1));
            konten1(1, r, t.getId());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 4, 4));
            konten1(4, r, "" + t.getBln());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 5, 5));
            konten1(5, r, "" + t.getTahun());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 6, 6));
            konten1(6, r, "" + t.isDeleted());
            x = y + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((15 * 100) / 17);
    }

    private void tugas(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("Tugas");
        XSSFRow r1 = s.createRow(0), r2 = s.createRow(1);
        title2(0, r1, "Kode", s);
        title2(1, r1, "No", s);
        title2(2, r1, "Tanggal", s);
        s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(0, 0, 3, 6));
        title(3, r1, "Pegawai Dan Status");
        title(3, r2, "Pegawai");
        title(4, r2, "Diambil");
        title(5, r2, "Sedang Dikerjakan");
        title(6, r2, "Sudah Selesai");
        title2(7, r1, "Keterangan", s);
        title2(8, r1, "Batal", s);
        title2(9, r1, "Pending", s);
        title2(10, r1, "Hapus", s);
        int x = 2;
        for (achmad.rifai.erp1.entity.Tugas t : new achmad.rifai.erp1.entity.dao.DAOTugas(d).all()) {
            int y = x;
            for (achmad.rifai.erp1.entity.Petugas p : t.getL()) {
                XSSFRow r = s.createRow(y);
                konten(3, r, p.getKaryawan());
                konten(4, r, "" + p.isDiambil());
                konten(5, r, "" + p.isSedang());
                konten(6, r, "" + p.isTerlaksana());
                y++;
            }
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 0, 0));
            konten1(0, r, t.getKode());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 1, 1));
            konten1(1, r, "" + t.getNo());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 2, 2));
            konten1(2, r, "" + t.getTgl());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 7, 7));
            konten1(7, r, t.getKet());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 8, 8));
            konten1(8, r, "" + t.isBatal());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 9, 9));
            konten1(9, r, "" + t.isPending());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 10, 10));
            konten1(10, r, "" + t.isDeleted());
            x = y + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((16 * 100) / 17);
    }

    private void bonus(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("Bonus Pegawai");
        XSSFRow r1 = s.createRow(0), r2 = s.createRow(1);
        title2(0, r1, "Kode", s);
        title2(1, r1, "Pegawai", s);
        s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(0, 0, 2, 3));
        title(2, r1, "Bonus");
        title(2, r2, "No");
        title(3, r2, "Jumlah");
        title2(4, r1, "Bulan", s);
        title2(5, r1, "Tahun", s);
        title2(6, r1, "Hapus", s);
        int x = 2;
        for (achmad.rifai.erp1.entity.BulanBonus b : new achmad.rifai.erp1.entity.dao.DAOBulanBonus(d).all()) {
            int y = x;
            for (achmad.rifai.erp1.entity.Bonusan bo : b.getL()) {
                XSSFRow r = s.createRow(y);
                konten(2, r, "" + bo.getNomer());
                konten(3, r, "" + bo.getJumlah());
                y++;
            }
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 0, 0));
            konten1(0, r, b.getKode());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 1, 1));
            konten1(1, r, b.getPeg());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 4, 4));
            konten1(4, r, "" + b.getBln());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 5, 5));
            konten1(5, r, "" + b.getThn());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, y, 6, 6));
            konten1(6, r, "" + b.isDeleted());
            x = y + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((17 * 100) / 17);
    }

    private void suplier(Db d) throws Exception {
        org.apache.poi.xssf.usermodel.XSSFWorkbook w = new org.apache.poi.xssf.usermodel.XSSFWorkbook(f);
        XSSFSheet s = w.createSheet("Pemasok");
        XSSFRow r1 = s.createRow(0);
        title(0, r1, "Kode");
        title(1, r1, "Nama Pemasok");
        title(2, r1, "Alamat");
        title(3, r1, "Telepon");
        title(4, r1, "Hapus");
        int x = 1;
        for (achmad.rifai.erp1.entity.Suplier su : new achmad.rifai.erp1.entity.dao.DAOSuplier(d).all()) {
            int y = x, z = x, c;
            for (String st : su.getAlamat()) {
                XSSFRow r = s.createRow(y);
                konten(2, r, st);
                y++;
            }
            for (String st : su.getTelp()) {
                XSSFRow r = s.createRow(z);
                konten(3, r, st);
                z++;
            }
            if (y > z)
                c = y;
            else
                c = z;
            XSSFRow r = s.createRow(x);
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, c, 0, 0));
            konten1(0, r, su.getKode());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, c, 1, 1));
            konten1(1, r, su.getNama());
            s.addMergedRegion(new org.apache.poi.ss.util.CellRangeAddress(x, c, 4, 4));
            konten1(4, r, "" + su.isDeleted());
            x = c + 1;
        }
        java.io.FileOutputStream o = new java.io.FileOutputStream(f);
        w.write(o);
        o.close();
        prog.setValue((13 * 100) / 17);
    }
}