public static string BacaData(string pKriteria, string pNilaiKriteria, List <Jurnal> listJurnal) { string sql1 = ""; if (pKriteria == "") { //tuliskan perintah sql1 = untuk menampilkan semua data ditabel notapenjualan sql1 = "select * from vLaporanDaftarJurnal"; } else { sql1 = " select * from vLaporanDaftarJurnal WHERE " + pKriteria + " LIKE '%" + pNilaiKriteria + "%'"; } try { //data reader 1 = memperoleh semua data di tabel jurnal MySqlDataReader hasilData1 = Koneksi.JalankanPerintahQuery(sql1); listJurnal.Clear();//kosongi isi list terlebih dahulu while (hasilData1.Read() == true) { //buat object jurnal Jurnal j = new Jurnal(); j.IdJurnal = int.Parse(hasilData1.GetValue(0).ToString()); j.Tanggal = DateTime.Parse(hasilData1.GetValue(1).ToString()); j.NomorBukti = hasilData1.GetValue(6).ToString(); //tambahkan nama akun pada jenis (nama akun pada index ke 3) j.Jenis = hasilData1.GetValue(3).ToString(); Transaksi trans = new Transaksi(); trans.Keterangan = hasilData1.GetValue(2).ToString(); //tambahkan debet pada id transaksi (debet di index ke 4 pada vlaporandaftarjural) trans.IdTransaksi = hasilData1.GetValue(4).ToString(); Periode period = new Periode(); //tambahkan kredit pada idperiode ( kredit pada index ke 5) period.IdPeriode = hasilData1.GetValue(5).ToString(); //tambahkan ke list j.Transaksi = trans; j.Periode = period; listJurnal.Add(j); } return("1"); } catch (MySqlException ex) { return(ex.Message); } }
//Langkah-langkah tutup periode akuntansi //1. update saldoakhir di tabel periode akun //check apakah saldoakhir sesuai dengan bukubesar public static string UpdateSaldoAkhir() { string sql = "UPDATE _periodeakun pa set pa.saldoAkhir = (select v.SaldoAkhir from vsaldoakhir v where v.nomor = pa.nomor)"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
//2.2.1 Insert ke tabel _jurnal public static string InsertJurnalPMLR(string pIdJurnal, string pidPeriode) { string sql = "insert into _jurnal (idjurnal, tanggal, nomorbukti, jenis, idperiode, idtransaksi) values " + "('" + pIdJurnal + "',current_date(),'-', 'JT', '" + pidPeriode + "','903')"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
//2.3.2.2 Insert modal public static string InsertModalPMLR(string pIdJurnal, int phasil) { string sql = "INSERT INTO _detiljurnal(idJurnal, nomor, noUrut, debet, kredit)" + "VALUES('" + pIdJurnal + "', '31', 2, 0," + phasil + ")"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
//2.1.2.1 Insert semua pendapatan yg saldo normalnya di sisi debet public static string InsertDJDebetPP(string pIdJurnal) { string sql = "INSERT INTO _detiljurnal(idJurnal, nomor, noUrut, debet, kredit)" + "SELECT '" + pIdJurnal + "', V.nomor, 1, 0, V.SaldoAkhir FROM vsaldoakhir V INNER JOIN _akun A " + "ON V.nomor = A.nomor WHERE V.kelompok = 'P' AND A.saldoNormal = 1"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
//2.2.2 Insert ke tabel _detiljurnal //2.2.2.1 Insert ihtisar laba rugi //check dulu nama akun Ihtisar Laba Rugi di tabel _akun apakah ada, jika tidak ada tambahkan public static string IhtisarLabaRugiPB(string pIdJurnal) { int totalBiaya = Laporan.HitungTotalBiaya(); string sql = "INSERT INTO _detiljurnal(idJurnal, nomor, noUrut, debet, kredit)" + "VALUES('" + pIdJurnal + "', '00', 1, " + totalBiaya + ", 0)"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
//2.1.2.1 Insert ihtisar laba rugi //Tambahkan dulu nama akun Ihtisar Laba Rugi di tabel _akun public static string IhtisarLabaRugiPP(string pIdJurnal, int ptotalpend) { //Tambahkan dulu akun Ihtisar Laba Rugi di tabel _akun string sql = "INSERT INTO _detiljurnal(idJurnal, nomor, noUrut, debet, kredit)" + "VALUES('" + pIdJurnal + "', '00', 2, 0, " + ptotalpend + ")"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
//2.2.2.2 Insert semua akun biaya ke detiljurnal public static string InsertDJBiaya(string pIdJurnal) { int totalBiaya = Laporan.HitungTotalBiaya(); string sql = "INSERT INTO _detiljurnal(idJurnal,nomor,noUrut,debet,kredit) " + "SELECT '" + pIdJurnal + "', V.nomor, 2, 0, V.SaldoAkhir FROM vsaldoakhir V " + "INNER JOIN _akun A ON V.nomor = A.nomor WHERE V.kelompok = 'B'"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
//4. Tambah/insert akun2 di periode baru tsb di tabel _periodeakun public static string InsertAkunBaru() { string periodeterbaru = GetPeriodeTerbaru().IdPeriode; string sql = "INSERT INTO _periodeakun(idperiode,nomor,saldoAwal,saldoAkhir)" + "SELECT '" + periodeterbaru + "', V.nomor, V.SaldoAkhir, 0 " + "FROM vsaldoakhir V"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
public static int tampilHutang() { int hutang = 0; string sql = "SELECT saldoakhir FROM vsaldoakhir WHERE nama = 'hutang'"; try { MySqlDataReader hasilData = Koneksi.JalankanPerintahQuery(sql); while (hasilData.Read() == true) { hutang = int.Parse(hasilData.GetValue(0).ToString()); } return(hutang); }catch (MySqlException ex) { return(int.Parse(ex.Message)); } }
public static int HitungTotalPendapatan() { int totalPendapatan = 0; string sql = " SELECT SUM(SaldoAkhir) AS TotalPendapatan FROM vsaldoakhir WHERE kelompok = 'P' "; try { MySqlDataReader hasilData = Koneksi.JalankanPerintahQuery(sql); while (hasilData.Read() == true) { totalPendapatan = int.Parse(hasilData.GetValue(0).ToString()); } return(totalPendapatan); } catch (MySqlException ex) { return(int.Parse(ex.Message)); } }
public static Periode GetPeriodeTerbaru() { //ambil data dari periode string sql = "select * from _periode where idPeriode = (select max(idPeriode) from _periode)"; MySqlDataReader hasilData = Koneksi.JalankanPerintahQuery(sql); Periode hasilPeriode = null; if (hasilData.Read() == true) //jika ada data { string idPeriode = hasilData.GetValue(0).ToString(); DateTime tglAwal = DateTime.Parse(hasilData.GetValue(1).ToString()); DateTime tglAkhir = DateTime.Parse(hasilData.GetValue(2).ToString()); hasilPeriode = new Periode(idPeriode, tglAwal, tglAkhir); } return(hasilPeriode); }
//2.4 Penutupan modal dan prive // Karena tidak ada akun prive maka step ini tidak perlu dibuat #region Penutupan Modal dan prive #endregion #endregion ////3. Tambah/buat periode baru di tabel _periode public static string BuatPeriodeBaru() { int periodeterbaru = int.Parse(GetPeriodeTerbaru().IdPeriode); string periodebaru = (periodeterbaru + 1).ToString(); //tgl awal dan tgl akhir sesuaikan dengan data yang ada di database //karena periode setiap akhir bulan maka tgl awal = 1 dan tgl akhir = 30/31 (sesuai bulan) string sql = "INSERT INTO _periode(idPeriode,tglAwal,tglAkhir)" + "VALUES('" + periodebaru + "', '2015-03-01', '2015-03-31')"; try { Koneksi.JalankanPerintahDML(sql); return("1"); } catch (MySqlException x) { return(x.Message); } }
public static int HitungTotalPasiva() { int totalPasiva = 0; string sql = " SELECT SUM(SaldoAkhir) + " + HitungLabaRugi() + " AS TotalPasiva FROM vsaldoakhir WHERE kelompok IN('K', 'E') "; try { MySqlDataReader hasilData = Koneksi.JalankanPerintahQuery(sql); while (hasilData.Read() == true) { totalPasiva = int.Parse(hasilData.GetValue(0).ToString()); } return(totalPasiva); } catch (MySqlException ex) { return(int.Parse(ex.Message)); } }
public static int TampilkanModalAwal() { int modalAwal = 0; string sql = " SELECT saldoAwal FROM _periodeakun WHERE nomor = '31'"; try { MySqlDataReader hasilData = Koneksi.JalankanPerintahQuery(sql); while (hasilData.Read() == true) { modalAwal = int.Parse(hasilData.GetValue(0).ToString()); } return(modalAwal); } catch (MySqlException ex) { return(int.Parse(ex.Message)); } }
//Laporan saldo akhir Buku Besar public static string BacaDataBukuBesar(string pKriteria, string pNilaiKriteria, List <Laporan> listLaporan) { string sql = ""; if (pKriteria == "") { //tuliskan perintah sql1 = untuk menampilkan semua data ditabel notapenjualan sql = "select * from vsaldoakhir"; } else { sql = " select * from vsaldoakhir WHERE " + pKriteria + " LIKE '%" + pNilaiKriteria + "%'"; } try { //data reader 1 = memperoleh semua data di tabel jurnal MySqlDataReader hasilData = Koneksi.JalankanPerintahQuery(sql); listLaporan.Clear();//kosongi isi list terlebih dahulu while (hasilData.Read() == true) { //buat object laporan Laporan laporan = new Laporan(); //simpan data kelompok di idlaporan laporan.IdLaporan = hasilData.GetValue(0).ToString(); laporan.Judul = hasilData.GetValue(2).ToString(); Periode period = new Periode(); //tambahkan kredit pada idperiode ( kredit pada index ke 5) period.IdPeriode = hasilData.GetValue(3).ToString(); //tambahkan ke list laporan.Periode = period; listLaporan.Add(laporan); } return("1"); } catch (MySqlException ex) { return(ex.Message); } }
public static string TambahData(Jurnal pJurnal) { //sql1 untuk menambahkan data ke tabel _jurnal string sql = "Insert into _jurnal(idJurnal, tanggal, nomorBukti, jenis, idPeriode, idTransaksi ) values ('" + pJurnal.IdJurnal + "', ' " + pJurnal.Tanggal.ToString("yyyy-MM-dd hh:mm:ss") + "', '" + pJurnal.NomorBukti + "', '" + pJurnal.Jenis + "' , '" + pJurnal.Periode.IdPeriode + "' , '" + pJurnal.Transaksi.IdTransaksi + "')"; try { //jalankan perintah sql untuk menambahkan ke tabel _jurnal Koneksi.JalankanPerintahDML(sql); //menambahkan transaksi yang dilakukan di jurnal ke detiljurnal for (int i = 0; i < pJurnal.ListDetilJurnal.Count; i++) { //sql2 untuk menambahkan ke tabel detiljurnal string sql2 = "insert into _detilJurnal(idJurnal, nomor," + " noUrut,debet,kredit)" + "values ('" + pJurnal.IdJurnal + "', '" + pJurnal.ListDetilJurnal[i].Akun.NomorAkun + "'," + pJurnal.ListDetilJurnal[i].NoUrut + "," + pJurnal.ListDetilJurnal[i].Debit + "," + pJurnal.ListDetilJurnal[i].Kredit + ")"; //jalankan sql2 untuk menambhkan ke detiljurnal Koneksi.JalankanPerintahDML(sql2); } //jika semua perintah sql berhasil dijalankan return("1"); } catch (MySqlException ex) { //jika ada kegagalan perintah return(ex.Message); } }
private void buttonLogin_Click(object sender, EventArgs e) { if (textBoxUsername.Text != "") { //ciptakan object bertipe koneksi dengan memanggil constructor berparameter milik class koneksi ClassLibraryJurnal.Koneksi k = new ClassLibraryJurnal.Koneksi(textBoxServer.Text, textBoxDatabase.Text, textBoxUsername.Text, textBoxPassword.Text); string hasilCon = k.Connect(); if (hasilCon == "1") { FormUtama frmUtama = (FormUtama)this.Owner; frmUtama.Enabled = true; MessageBox.Show("Selamat datang di sistem akuntansi", "Info"); string hasilCariKaryawan = Karyawan.BacaData("nama", textBoxUsername.Text, listHasilData); if (hasilCariKaryawan == "1") { if (listHasilData.Count > 0) { frmUtama.labelKodePgw.Text = " " + listHasilData[0].IdKaryawan; frmUtama.labelNamaPgw.Text = listHasilData[0].Nama; frmUtama.labelJabatan.Text = "Admin"; } this.Close(); } } else { MessageBox.Show("koneksi gagal, pesan kesalahan: " + hasilCon, "Kesalahan"); } } else { MessageBox.Show("Usename tidak boleh dikosongi!", "Kesalahan"); } }