analisis efisiensi produksi usaha peternakan ayam ras pedaging ...
Oleh Kelompok 5 · 2013. 5. 26. · TUGAS AKHIR PEMOGRAMAN VISUAL APLIKASI PETERNAKAN AYAM BERBASIS...
Transcript of Oleh Kelompok 5 · 2013. 5. 26. · TUGAS AKHIR PEMOGRAMAN VISUAL APLIKASI PETERNAKAN AYAM BERBASIS...
TUGAS AKHIR PEMOGRAMAN VISUALAPLIKASI PETERNAKAN AYAM BERBASIS JAVA
DI PETERNAKAN AYAM MANDIRI
OlehKelompok 5
Anshar Firman Haryadi / 16745Syafridal / 18760Hesti Fitri Yeni / 1207588
PENDIDIKAN TEKNIK INFORMATIKAJURUSAN ELEKTRONIKA
FAKULTAS TEKNIKUNIVERSITAS NEGERI PADANG
2013
DatabaseAplikasi ini menggunakan 3 entitas.table admin
Table ternak
Table penjualan
Tahap Penggunaan,
Method Koneksipublic void koneksi() {try {Class.forName("com.mysql.jdbc.Driver");System.out.println("Sukses Driver JDBC Ditemukan....!");try {String url = "jdbc:mysql://localhost:3306/db_ayam?user=root&password=";konek = DriverManager.getConnection(url);System.out.println("Sukses Koneksi...");
} catch (SQLException se) {System.out.println(" Gagal Koneksi = " + se);System.exit(0);}} catch (ClassNotFoundException cnfe) {JOptionPane.showMessageDialog(null, "Class Tidak Ditemukan...Error: " + cnfe);System.exit(0);}}User melakukan login terlebih dahulu.
Script untuk Logintry { String sql = "SELECT * FROM admin WHERE username = '" + txtusername.getText() + "' and password = '" +String.valueOf(txtpasswd.getPassword()) + "'";stt = konek.createStatement();rss = stt.executeQuery(sql);if (rss.next()) {String username = rss.getString(1);String password = rss.getString(2);new welcome().show();dispose();} else {JOptionPane.showMessageDialog(null, "Maaf, Login Gagal a. Try again", "Pesan",JOptionPane.ERROR_MESSAGE);}
} catch (Exception e) {}Script Membuka Form Barunew welcome().show();dispose();Kemudian masuk ke halaman home
Terdapat 4 menu bar.
Entry :
- Ternak (form untuk memasukan data ternak)- Penjualan (form untuk memasukan data penjualan ternak)
Analisis :
- Nutrisi (form untuk menghitung nutrisi pakan, dan menganalisis kebutuhan nutrisi pakan)- Keuntungan (form untuk menghitung perkiraan keuntungan yang mungkin di dapatkan)
Setting :
- Admin (form untuk mengatur administrator)- Exit (fungsi untuk keluar dari aplikasi)
Help
- Help Content (form untuk menampilkan ketentuan data dan perhitu yang digunakan- About (form untuk menampilkan informasi tentang Aplikasi)
Form Ternak
Method Cancel
txtdoc.setText("");
txthargadoc.setText("");
txtjual.setText("");
txtpakan.setText("");
txthargapakan.setText("");
txtoperasional.setText("");
txtanalisis.setText("");
Method Add
public void tambah (){
tanggal2();
if (txtdaging.isSelected())
{
status="Pedaging";
} else
if (txttelur.isSelected())
{
status="Petelur";
}
jumlah=txtjumlah.getText();
tipe=String.valueOf(txtjenis.getSelectedItem());
if((txttgl.equals("")) | (txtjumlah.equals("")))
{
JOptionPane.showMessageDialog(null, "Pengisian Data Tidak Boleh Kosong");
txttgl.requestFocus();
} else {
// jika sudah data terpenuhi lakukan proses penyimpanan
try {
String sql = "Insert Into ternak values(?,?,?,?)";
PreparedStatement stat = konek.prepareStatement(sql);
try{
stat.setString(1, tgl1);
stat.setString(2, tipe);
stat.setString(3, status);
stat.setString(4, jumlah);
stat.executeUpdate();
JOptionPane.showMessageDialog(null, "Data Tersimpan.....");
launch();
//bersih();
} catch (SQLException se) {
System.out.println("Gagal Menyimpan.." + se);
JOptionPane.showMessageDialog(null, "Yang Anda Masukkan Telah Ada..\nGagalDisimpan..Coba Lagi \npesan Error :\n" + se);
}
}catch (Exception e) {
//System.out.println("se);
}
}
}
Method Edit
public void edit (){
try{
tanggal2();
koneksi();
if (txtdaging.isSelected())
{
status="Pedaging";
} else
if (txttelur.isSelected())
{
status="Petelur";
}
String sql = "Update ternak set Tanggal='"+tgl1+"',Tipe='"+txtjenis.getSelectedItem().toString()+"', Jenis='"+status+"',Jumlah='"+txtjumlah.getText()+"' where Tanggal='"+tgl1+"'";
Statement theStatement=konek.createStatement();
theStatement.executeUpdate(sql);
konek.close();
JOptionPane.showMessageDialog(null,"Data berhasil di Update");
txtjumlah.setText("");
txttgl.setDate(null);
}catch (Exception e){
JOptionPane.showMessageDialog(null,"Proses hapus gagal/koneksi gagal..");
System.out.println(e.getMessage());
}
launch();
}
Method Delete
public void delete (){
try{
tanggal2();
koneksi();
if (txtdaging.isSelected())
{
status="Pedaging";
} else
if (txttelur.isSelected())
{
status="Petelur";
}
String sql = "delete from ternak where Tanggal='"+tgl1+"'";
Statement theStatement=konek.createStatement();
theStatement.executeUpdate(sql);
konek.close();
JOptionPane.showMessageDialog(null,"Data berhasil di Delete");
txtjumlah.setText("");
txttgl.setDate(null);
}catch (Exception e){
JOptionPane.showMessageDialog(null,"Proses hapus gagal/koneksi gagal..");
System.out.println(e.getMessage());
}
launch();
}
Method Cetak
try {
File file = new File("src/peternakan_ayam/laporan_ternak.jrxml");
jasperDesign = JRXmlLoader.load(file);
param.clear();
jasperReport = JasperCompileManager.compileReport(jasperDesign);
jasperPrint = JasperFillManager.fillReport(jasperReport, param, konek);
JasperViewer.viewReport(jasperPrint, false);
} catch (Exception e) {
e.printStackTrace();
}
Method Menampilkan Data
public void launch (){
DefaultTableModel tabMode;
this.getContentPane().setLayout(null);
tabel.setToolTipText("");
Object[] row={"Tangal","Tipe","Jenis","Jumlah"};
tabMode= new DefaultTableModel(null,row);
tabel.setModel(tabMode);
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
com.mysql.jdbc.Connection cn=(com.mysql.jdbc.Connection)DriverManager.getConnection("jdbc:mysql://localhost:3306/db_ayam?user=root&password=");
com.mysql.jdbc.Statement st=(com.mysql.jdbc.Statement) cn.createStatement();
String sql ="SELECT Tanggal,Tipe,Jenis,Jumlah from ternak ";
ResultSet set=st.executeQuery(sql);
while(set.next()) {
String tanggal2 = set.getString("Tanggal");
String tipe2 = set.getString("tipe");
String jenis2 = set.getString("jenis");
String jumlah2 = set.getString("Jumlah");
String[] data={tanggal2,tipe2,jenis2,jumlah2};
tabMode.addRow(data);
}
}catch(Exception e){System.err.println("Error SQL: " + e.getMessage());}
}
Form Penjualan
Form Analisis Nutrisi
Method penghitungan Analisis
public void kandungan(){
hitungpakan();
DecimalFormat df=new DecimalFormat("#.##");
//--------------DEDAK--------------//
nemdedak=3360;
ncpdedak=(float) 11.1;
nlemakdedak=(float) 5.4;
nseratdedak=(float) 17.9;
ncadedak=(float) 0.08;
npdedak=(float) 1.15;
em1=Float.parseFloat(dedak)/total*nemdedak;
cp1=Float.parseFloat(dedak)/total*(ncpdedak/100);
lemak1=Float.parseFloat(dedak)/total*(nlemakdedak/100);
serat1=Float.parseFloat(dedak)/total*(nseratdedak/100);
ca1=Float.parseFloat(dedak)/total*(ncadedak/100);
p1=Float.parseFloat(dedak)/total*(npdedak/100);
emdedak.setText((String.valueOf(df.format(em1))));
cpdedak.setText((String.valueOf(df.format(cp1))));
lemakdedak.setText((String.valueOf(df.format(lemak1))));
seratdedak.setText((String.valueOf(df.format(serat1))));
cadedak.setText((String.valueOf(df.format(ca1))));
pdedak.setText((String.valueOf(df.format(p1))));
//---------END OF DEDAK------------//
//--------------SUSU BUBUK--------------//
nemsusu=2510;
ncpsusu=33;
nlemaksusu=1;
nseratsusu=0;
ncasusu=(float) 1.3;
npsusu=(float) 0.9;
em2=Float.parseFloat(susu)/total*nemsusu;
cp2=Float.parseFloat(susu)/total*(ncpsusu/100);
lemak2=Float.parseFloat(susu)/total*(nlemaksusu/100);
serat2=Float.parseFloat(susu)/total*(nseratsusu/100);
ca2=Float.parseFloat(susu)/total*(ncasusu/100);
p2=Float.parseFloat(susu)/total*(npsusu/100);
emsusu.setText((String.valueOf(df.format(em2))));
cpsusu.setText((String.valueOf(df.format(cp2))));
lemaksusu.setText((String.valueOf(df.format(lemak2))));
seratsusu.setText((String.valueOf(df.format(serat2))));
casusu.setText((String.valueOf(df.format(ca2))));
psusu.setText((String.valueOf(df.format(p2))));
//---------END OF SUSU BUBUK------------//
//--------------TEPUNG IKAN--------------//
nemikan=2640;
ncpikan=(float) 53.3;
nlemakikan=(float) 6.5;
nseratikan=(float) 1.5;
ncaikan=(float) 10.5;
npikan=5;
em3=Float.parseFloat(tepung)/total*nemikan;
cp3=Float.parseFloat(tepung)/total*(ncpikan/100);
lemak3=Float.parseFloat(tepung)/total*(nlemakikan/100);
serat3=Float.parseFloat(tepung)/total*(nseratikan/100);
ca3=Float.parseFloat(tepung)/total*(ncaikan/100);
p3=Float.parseFloat(tepung)/total*(npikan/100);
emikan.setText((String.valueOf(df.format(em3))));
cpikan.setText((String.valueOf(df.format(cp3))));
lemakikan.setText((String.valueOf(df.format(lemak3))));
seratikan.setText((String.valueOf(df.format(serat3))));
caikan.setText((String.valueOf(df.format(ca3))));
pikan.setText((String.valueOf(df.format(p3))));
//---------END OF TEPUNG IKAN------------//
//--------------sentrat --------------//
nemsentrat=2500;
ncpsentrat=31;
nlemaksentrat=4;
nseratsentrat=7;
ncasentrat=4;
npsentrat=(float) 1.5;
em4=Float.parseFloat(sentrat)/total*nemsentrat;
cp4=Float.parseFloat(sentrat)/total*(ncpsentrat/100);
lemak4=Float.parseFloat(sentrat)/total*(nlemaksentrat/100);
serat4=Float.parseFloat(sentrat)/total*(nseratsentrat/100);
ca4=Float.parseFloat(sentrat)/total*(ncasentrat/100);
p4=Float.parseFloat(sentrat)/total*(npsentrat/100);
emsentrat.setText((String.valueOf(df.format(em4))));
cpsentrat.setText((String.valueOf(df.format(cp4))));
lemaksentrat.setText((String.valueOf(df.format(lemak4))));
seratsentrat.setText((String.valueOf(df.format(serat4))));
casentrat.setText((String.valueOf(df.format(ca4))));
psentrat.setText((String.valueOf(df.format(p4))));
//---------END OF sentrat------------//
//---- HASIL ----//
emtotal=em1+em2+em3+em4;
cptotal=(cp1+cp2+cp3+cp4)*100;
lemaktotal=(lemak1+lemak2+lemak3+lemak4)*100;
serattotal=(serat1+serat2+serat3+serat4)*100;
catotal=(ca1+ca2+ca3+ca4)*100;
ptotal=(p1+p2+p3+p4)*100;
String umur = String.valueOf(txtumur.getSelectedItem());
txtnutrisi.setText("Umur ayam "+umur +
"\n EM : "+((String.valueOf(df.format(emtotal)))) +
" Kcal/Kg" +
"\n CP : "+((String.valueOf(df.format(cptotal)))) +
" %" +
"\n LEMAK : "+((String.valueOf(df.format(lemaktotal)))) +
" %" +
"\n SERAT : "+((String.valueOf(df.format(serattotal)))) +
" %" +
"\n Ca : "+((String.valueOf(df.format(catotal)))) +
" %" +
"\n P : "+((String.valueOf(df.format(ptotal)))) +
" %");
//---- END OF HASIL ----//
}
Form Analisis Keuntungan
Method Penghitungan Keuntungan
public void analisispusat(){
doc=txtdoc.getText();
hargadoc=txthargadoc.getText();
hargajual=txtjual.getText();
pakan=txtpakan.getText();
hargapakan=txthargapakan.getText();
operasional=txtoperasional.getText();
banyakpakan=(int) ((float) 2.1 * Integer.parseInt(doc));
biayadoc=Integer.parseInt(doc)*Integer.parseInt(hargadoc);
biayapakan=Integer.parseInt(hargapakan)*(banyakpakan);
biayaoperasional=Integer.parseInt(operasional)*Integer.parseInt(doc);
banyakayam=(int) (Integer.parseInt(doc) * 0.1);
ayamdijual=Integer.parseInt(doc)-banyakayam;
modal=biayadoc+biayapakan+biayaoperasional;
penjualan=Integer.parseInt(hargajual)*ayamdijual;
keuntungan=penjualan-modal;
txtanalisis.setText("Analisis Keuntungan \n"+
"Pakan Rp."+hargapakan+" x "+banyakpakan+"Kg = Rp."+biayapakan+"\n"+
"DOC Rp."+hargadoc+"/ekor x "+doc+" = Rp."+biayadoc+"\n"+
"Operasional Rp."+operasional+"/ekor x "+doc+"ekor = Rp."+biayaoperasional+"\n"+
"Banyak Ayam = 10% x "+doc+" = "+banyakayam+"\n"+
"Biaya Modal = Rp."+biayapakan+" + "+biayadoc+"+"+biayaoperasional+" =Rp."+modal+"\n"+
"Penjualan = Rp."+hargajual+" x "+ayamdijual+" = Rp."+penjualan+"\n"+
"Keuntungan = Rp."+penjualan+" - "+modal+" = Rp. "+keuntungan);
}
Form Admin
Form Help Content
Form About
Report Data Ternak
Report Penjualan