예제 #1
0
        public static string UbahData(Pegawai peg)
        {
            string sql = "UPDATE pegawai SET Nama = '" + peg.Nama.Replace("'", "\\'") + "', TglLahir = '" + peg.TglLahir.ToString("yyyy-MM-dd") + "', Alamat = '" + peg.Alamat.Replace("'", "\\'") + "', Gaji = " + peg.Gaji + ", Username = '******'", "\\'") + "', Password = '******'", "\\'") + "', IdJabatan = '" + peg.Jabatan.IdJabatan + "' WHERE KodePegawai = " + peg.KodePegawai;

            try
            {
                Koneksi.JalankanPerintahDML(sql);
                string namaServer   = Koneksi.GetNamaServer();
                string namaDatabase = Koneksi.GetNamaDatabase();

                //create user baru di mysql dengan menggunakan method buatUserBaru
                string UbahPassUser = Pegawai.UbahPassUser(peg, namaServer);
                if (UbahPassUser != "1")//jika tidak berhasil membuat user baru
                {
                    return("Gagal membuat user baru. Pesan kesalahan : " + UbahPassUser);
                }
                else
                {
                    return("1");
                }
            }
            catch (MySqlException ex)
            {
                return(ex.Message + ". Perintah sql : " + sql);
            }
        }
예제 #2
0
        public static string HapusData(Pegawai peg)
        {
            string sql = "DELETE FROM pegawai WHERE KodePegawai = '" + peg.KodePegawai + "'";

            try
            {
                Koneksi.JalankanPerintahDML(sql);
                string namaServer   = Koneksi.GetNamaServer();
                string namaDatabase = Koneksi.GetNamaDatabase();

                //create user baru di mysql dengan menggunakan method buatUserBaru
                string HapusUser = Pegawai.HapusUser(peg, namaServer);
                if (HapusUser != "1")//jika tidak berhasil membuat user baru
                {
                    return("Gagal membuat user baru. Pesan kesalahan : " + HapusUser);
                }
                else
                {
                    return("1");
                }
            }
            catch (MySqlException ex)
            {
                return(ex.Message + ". Perintah sql : " + sql);
            }
        }
예제 #3
0
        public string UbahData(Pegawai pg)
        {
            Koneksi k = new Koneksi();

            k.Connect();

            //tuliskan perintah SQL yang akan dijalankan
            string sql = "UPDATE pegawai SET Nama='" + pg.NamaPegawai + "',TglLahir='" + pg.TglLahir.ToString("yyyy-MM-dd") + "', Alamat='" +
                         pg.Alamat + "', Gaji='" + pg.Gaji + "',Username='******', Password='******', IdJabatan='" +
                         pg.KategoriJabatan.IdJabatan + "' WHERE KodePegawai = '" + pg.KodePegawai + "'";

            //Buat MySqlCommand
            MySqlCommand c = new MySqlCommand(sql, k.KoneksiDB);

            try
            {
                //Gunakan ExecuteNonQuery untuk menjalankan perintah INSERT/UPDATE/DELETE
                c.ExecuteNonQuery();
                return("sukses");
            }
            catch (Exception e)
            {
                return(e.Message);
            }
        }
예제 #4
0
        public static string CetakNota(string pKriteria, string pNilaiKriteria, string pNamaFile)
        {
            try
            {
                List <Pegawai> listPegawai = new List <Pegawai>();

                //baca data nota tertentu yang akan dicetak
                string hasilBaca = Pegawai.BacaData(pKriteria, pNilaiKriteria, listPegawai);

                //simpan dulu isi nota yang akan ditampilkan ke objek file (streamwriter)
                StreamWriter file = new StreamWriter(pNamaFile);
                for (int i = 0; i < listPegawai.Count; i++)
                {
                    file.WriteLine("{0,5} | {1,5} | {2,5} | {3,5} | {4,5} | {5,5} | {6,5}", listPegawai[i].KodePegawai, listPegawai[i].Nama, listPegawai[i].TglLahir, listPegawai[i].Alamat, listPegawai[i].Gaji, listPegawai[i].Username, listPegawai[i].Jabatan.IdJabatan);
                }
                file.Close();
                //cetak ke printer
                Cetak c = new Cetak(pNamaFile, "Courier New", 9, 10, 10, 10, 10);
                c.CetakKePrinter("tulisan");
                return("1");
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
예제 #5
0
 public NotaJual(string _noNota, DateTime _tanggalNota, Pelanggan _pelanggan, Pegawai pembuat, List <DetilNotaJual> listNotaJualDetil)
 {
     noNota        = _noNota;
     tanggal       = _tanggalNota;
     pelanggan     = _pelanggan;
     pegawai       = pembuat;
     listNotaDetil = listNotaJualDetil;
 }
예제 #6
0
 public NotaBeli(string _noNota, DateTime _tanggalNota, Supplier _supplier, Pegawai pembuat, List <NotaBeliDetil> listNotaJualDetil)
 {
     noNota        = _noNota;
     tanggal       = _tanggalNota;
     supplier      = _supplier;
     pegawai       = pembuat;
     listNotaDetil = listNotaJualDetil;
 }
예제 #7
0
 public NotaBeli(string pNota, DateTime pTanggal, Supplier pSupplier, Pegawai pPegawai)
 {
     NoNotaBeli        = pNota;
     Tanggal           = pTanggal;
     Supplier          = pSupplier;
     Pegawai           = pPegawai;
     ListNotaBeliDetil = new List <NotaBeliDetil>();
 }
예제 #8
0
 public NotaJual()
 {
     noNota    = "";
     tanggal   = new DateTime();
     pelanggan = new Pelanggan();
     pegawai   = new Pegawai();
     List <DetilNotaJual> listnotaDetil = new List <DetilNotaJual>();
 }
예제 #9
0
 public NotaJual(string pNota, DateTime pTanggal, Pelanggan pPelanggan, Pegawai pPegawai)
 {
     NoNotaJual        = pNota;
     Tanggal           = pTanggal;
     Pelanggan         = pPelanggan;
     Pegawai           = pPegawai;
     ListNotaJualDetil = new List <NotaJualDetil>();
 }
예제 #10
0
 public NotaBeli()
 {
     noNota   = "";
     tanggal  = new DateTime();
     supplier = new Supplier();
     pegawai  = new Pegawai();
     List <NotaBeliDetil> listnotaDetil = new List <NotaBeliDetil>();
 }
예제 #11
0
        public static string BeriHakAkses(Pegawai pPegawai, string pNamaServer, string pNamaDatabase)
        {
            String sql = "GRANT ALL PRIVILEGES ON " + pNamaDatabase + ".* TO '" + pPegawai.Username + "'@'" + pNamaServer + "'";

            try {
                Koneksi.JalankanPerintahDML(sql);
                return("1");
            }
            catch (MySqlException ex) {
                return(ex.Message + ". Perintah sql : " + sql);
            }
        }
예제 #12
0
        public string CariData(string kriteria, string nilaiKriteria)
        {
            Koneksi k = new Koneksi();

            k.Connect();
            //tuliskan perintah SQL yang akan dijalankan
            string sql = "SELECT B.KodePegawai, B.Nama,B.TglLahir, B.Alamat,B.Gaji,B.Username,B.Password ,K.IdJabatan, K.Nama AS kategori" +
                         " FROM Pegawai B INNER JOIN Jabatan K ON B.IdJabatan=K.IdJabatan" +
                         " WHERE B." + kriteria + " LIKE '%" + nilaiKriteria + "%'";

            //Buat MySqlCommand
            MySqlCommand c = new MySqlCommand(sql, k.KoneksiDB);

            try
            {
                //Gunakan MySqlDataReader dan ExecuteReader untuk menjalankan perintah SELECT
                MySqlDataReader data = c.ExecuteReader();

                //selama data reader masih bisa terbaca (selama masih ada data)
                while (data.Read() == true)
                {
                    string kode = data.GetValue(0).ToString();

                    string   nama   = data.GetValue(1).ToString();
                    DateTime tgl    = DateTime.Parse(data.GetValue(2).ToString());
                    string   alamat = data.GetValue(3).ToString();
                    int      gaji   = int.Parse(data.GetValue(4).ToString());
                    string   user   = data.GetValue(5).ToString();
                    string   pass   = data.GetValue(6).ToString();


                    string idJ = data.GetValue(7).ToString();

                    string nmJ = data.GetValue(8).ToString();
                    //create objek bertipe Kategori
                    Jabatan jb = new Jabatan(idJ, nmJ);
                    //simpan ke list
                    Pegawai pg = new Pegawai(kode, nama, tgl, alamat, gaji, user, pass, jb);
                    listPegawai.Add(pg);
                }
                //hapus MySqlCommand setelah selesai
                c.Dispose();
                //hapus data reader setelah selesai
                data.Dispose();

                return("sukses");
            }
            catch (Exception e)
            {
                return(e.Message);
            }
        }
예제 #13
0
        public static string BuatUserBaru(Pegawai pPegawai, string pNamaServer)
        {
            string sql = "CREATE USER '" + pPegawai.Username + "'@'" + pNamaServer + "' IDENTIFIED BY '" + pPegawai.Password + "'";

            try
            {
                Koneksi.JalankanPerintahDML(sql);
                return("1");
            }
            catch (MySqlException ex) {
                return(ex.Message + ". perintah sql : " + sql);
            }
        }
예제 #14
0
        public static string HapusUser(Pegawai pPegawai, string pNamaServer)
        {
            string sql = "DROP USER '" + pPegawai.Username + "'@'" + pNamaServer + "'";

            try
            {
                Koneksi.JalankanPerintahDML(sql);
                return("1");
            }
            catch (MySqlException ex)
            {
                return(ex.Message + ". perintah sql : " + sql);
            }
        }
예제 #15
0
        public static string UbahPassUser(Pegawai pPegawai, string pNamaServer)
        {
            string sql = "SET PASSWORD FOR '" + pPegawai.Username + "'@'" + pNamaServer + "'=PASSWORD('" + pPegawai.Password + "')";

            try
            {
                Koneksi.JalankanPerintahDML(sql);
                return("1");
            }
            catch (MySqlException ex)
            {
                return(ex.Message + ". perintah sql : " + sql);
            }
        }
예제 #16
0
        public string TambahData(Pegawai pg)
        {
            Koneksi k = new Koneksi();

            k.Connect();

            //tuliskan perintah SQL yang akan dijalankan
            string sql = "INSERT INTO Pegawai(KodePegawai, Nama,TglLahir,Alamat,Gaji,Username,Password,IdJabatan) VALUES ('" + pg.KodePegawai + "','" + pg.NamaPegawai + "','" + pg.TglLahir.ToString("yyyy-MM-dd") + "','" + pg.Alamat + "','" + pg.Gaji + "','" +
                         pg.Username + "','" + pg.Password + "','" + pg.KategoriJabatan.IdJabatan + "')";

            //Buat MySqlCommand
            MySqlCommand c = new MySqlCommand(sql, k.KoneksiDB);

            try
            {
                //Gunakan ExecuteNonQuery untuk menjalankan perintah INSERT/UPDATE/DELETE
                c.ExecuteNonQuery();

                string hasilBuatUser = BuatUserBaru(pg, "localhost");
                if (hasilBuatUser == "sukses")
                {
                    string hasilberiHak = BeriHakAkses(pg, "localhost");
                    if (hasilberiHak == "sukses")
                    {
                        return("sukses");
                    }
                    else
                    {
                        return("gagal memberikan hak akses. pesan kesalanhan = " + hasilberiHak);
                    }
                }
                else
                {
                    return("Gagal  membuat user. pesan Kesalahan = " + hasilBuatUser);
                }
            }
            catch (Exception e)
            {
                return("pesan gagal " + e.Message);
            }
        }
예제 #17
0
        public string BeriHakAkses(Pegawai pg, string namaServer)
        {
            Koneksi k = new Koneksi();

            k.Connect();

            string sql = "GRANT ALL PRIVILEGES ON si_jual_beli.* TO '" + pg.Username + "'@'" + namaServer + "'";

            MySqlCommand c = new MySqlCommand(sql, k.KoneksiDB);

            try
            {
                c.ExecuteNonQuery();

                return("sukses");
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
예제 #18
0
        public string BuatUserBaru(Pegawai pg, string namaServer)
        {
            Koneksi k = new Koneksi();

            k.Connect();

            string sql = "CREATE USER '" + pg.Username + "'@'" + namaServer + "' IDENTIFIED BY '" + pg.Password + "'";

            MySqlCommand c = new MySqlCommand(sql, k.KoneksiDB);

            try
            {
                c.ExecuteNonQuery();

                return("sukses");
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
예제 #19
0
        public static string BacaData(string kriteria, string nilaiKriteria, List <Pegawai> listHasilData)
        {
            string sql = "";

            //jika tidak ada kriteria yang diisikan
            if (kriteria == "")
            {
                sql = "SELECT P.KodePegawai, P.Nama, P.TglLahir, P.Alamat, P.Gaji, P.Username, P.Password, P.IdJabatan, J.Nama AS NamaJabatan FROM pegawai P INNER JOIN jabatan J ON P.IdJabatan = J.IdJabatan";
            }
            else
            {
                sql = "SELECT P.KodePegawai, P.Nama, P.TglLahir, P.Alamat, P.Gaji, P.Username, P.Password, P.IdJabatan, J.Nama AS NamaJabatan FROM pegawai P INNER JOIN jabatan J ON P.IdJabatan = J.IdJabatan WHERE " + kriteria + " LIKE '%" + nilaiKriteria + "%'";
            }
            try
            {
                MySqlDataReader hasilData = Koneksi.JalankanPerintahQuery(sql);
                listHasilData.Clear();           //kosongi isi list dulu
                while (hasilData.Read() == true) //selama masih ada data
                {
                    Pegawai pgw = new Pegawai();
                    pgw.KodePegawai = int.Parse(hasilData.GetValue(0).ToString());
                    pgw.Nama        = hasilData.GetValue(1).ToString();
                    pgw.TglLahir    = DateTime.Parse(hasilData.GetValue(2).ToString());
                    pgw.Alamat      = hasilData.GetValue(3).ToString();
                    pgw.Gaji        = int.Parse(hasilData.GetValue(4).ToString());
                    pgw.Username    = hasilData.GetValue(5).ToString();
                    pgw.Password    = hasilData.GetValue(6).ToString();
                    //ciptakan objek untuk kategori barang
                    Jabatan namJab = new Jabatan(hasilData.GetValue(7).ToString(), hasilData.GetValue(8).ToString());
                    pgw.Jabatan = namJab;

                    listHasilData.Add(pgw);
                }
                return("1");
            }
            catch (MySqlException ex)
            {
                return(ex.Message + ". Perintah sql : " + sql);
            }
        }
예제 #20
0
        public static string TambahData(Pegawai peg)
        {
            string sql = "INSERT INTO pegawai(KodePegawai, Nama, TglLahir, Alamat, Gaji, Username, Password, IdJabatan) VALUES (" + peg.KodePegawai + ",'" + peg.Nama.Replace("'", "\\'") + "','" + peg.TglLahir.ToString("yyyy-MM-dd") + "','" + peg.Alamat.Replace("'", "\\'") + "'," + peg.Gaji + ",'" + peg.Username.Replace("'", "\\'") + "','" + peg.Password.Replace("'", "\\'") + "','" + peg.Jabatan.IdJabatan + "')";

            try
            {
                //insert ke tabel pegawai
                Koneksi.JalankanPerintahDML(sql);

                //ambil nama server dan nama database dengan method GetNamaServer dan GetNamaDatabase
                string namaServer   = Koneksi.GetNamaServer();
                string namaDatabase = Koneksi.GetNamaDatabase();

                //create user baru di mysql dengan menggunakan method buatUserBaru
                string hasilBuatUSer = Pegawai.BuatUserBaru(peg, namaServer);

                if (hasilBuatUSer != "1")//jika tidak berhasil membuat user baru
                {
                    return("Gagal membuat user baru. Pesan kesalahan : " + hasilBuatUSer);
                }
                else
                {
                    //beri hak akses kepada user tsb dengan menggunakan method berihakakses
                    string hasilHakAkses = Pegawai.BeriHakAkses(peg, namaServer, namaDatabase);
                    if (hasilHakAkses != "1")
                    {
                        return("Gagal memberikan hak akses baru. Pesan kesalahan : " + hasilHakAkses);
                    }
                    else
                    {
                        return("1");
                    }
                }
            }
            catch (MySqlException ex)
            {
                return(ex.Message + ". Perintah SQL : " + sql);
            }
        }
예제 #21
0
        public string HapusData(Pegawai pg)
        {
            Koneksi k = new Koneksi();

            k.Connect();

            //tuliskan perintah SQL yang akan dijalankan
            string sql = "DELETE FROM Pegawai WHERE KodeBarang = '" + pg.KodePegawai + "'";

            //Buat MySqlCommand
            MySqlCommand c = new MySqlCommand(sql, k.KoneksiDB);

            try
            {
                //Gunakan ExecuteNonQuery untuk menjalankan perintah INSERT/UPDATE/DELETE
                c.ExecuteNonQuery();
                return("sukses");
            }
            catch (Exception e)
            {
                return(e.Message);
            }
        }
예제 #22
0
        public static string BacaData(string kriteria, string nilaiKriteria, List <NotaJual> listHasilData)
        {
            string sql = "";

            //jika tidak ada kriteria yang diisikan
            if (kriteria == "")
            {
                sql = "SELECT N.NoNota, N.Tanggal, N.KodePelanggan, P.Nama AS NamaPelanggan, P.Alamat AS AlamatPelanggan, N.KodePegawai, PG.Nama AS NamaPegawai FROM notajual N INNER JOIN pelanggan P ON N.KodePelanggan = P.KodePelanggan INNER JOIN pegawai PG ON N.KodePegawai = PG.KodePegawai ORDER BY N.NoNota DESC";
            }
            else
            {
                sql = "SELECT N.NoNota, N.Tanggal, N.KodePelanggan, P.Nama AS NamaPelanggan, P.Alamat AS AlamatPelanggan, N.KodePegawai, PG.Nama AS NamaPegawai FROM notajual N INNER JOIN pelanggan P ON N.KodePelanggan = P.KodePelanggan INNER JOIN pegawai PG ON N.KodePegawai = PG.KodePegawai WHERE " + kriteria + " LIKE '%" + nilaiKriteria + "%'" + " ORDER BY N.NoNota DESC ";
            }
            try
            {
                MySqlDataReader hasilData = Koneksi.JalankanPerintahQuery(sql);
                listHasilData.Clear();           //kosongi isi list dulu
                while (hasilData.Read() == true) //selama masih ada data
                {
                    string    nomorNota = hasilData.GetValue(0).ToString();
                    DateTime  tglNota   = DateTime.Parse(hasilData.GetValue(1).ToString());
                    int       kodePlg   = int.Parse(hasilData.GetValue(2).ToString());
                    string    namaPlg   = hasilData.GetValue(3).ToString();
                    string    alamatPlg = hasilData.GetValue(4).ToString();
                    Pelanggan plg       = new Pelanggan();
                    plg.KodePelanggan = kodePlg;
                    plg.Nama          = namaPlg;
                    plg.Alamat        = alamatPlg;

                    int     kodePeg = int.Parse(hasilData.GetValue(5).ToString());
                    string  namaPeg = hasilData.GetValue(6).ToString();
                    Pegawai peg     = new Pegawai();
                    peg.KodePegawai = kodePeg;
                    peg.Nama        = namaPeg;


                    NotaJual nota = new NotaJual(nomorNota, tglNota, plg, peg);

                    string sql2 = "SELECT NJD.KodeBarang, B.Nama, NJD.Harga, NJD.Jumlah FROM notajual N INNER JOIN notajualdetil NJD ON N.NoNota = NJD.NoNota INNER JOIN barang B ON NJD.KodeBarang = B.KodeBarang WHERE N.NoNota = '" + nomorNota + "'";

                    MySqlDataReader hasilData2 = Koneksi.JalankanPerintahQuery(sql2);

                    while (hasilData2.Read() == true)
                    {
                        string kodeBrg = hasilData2.GetValue(0).ToString();
                        string namaBrg = hasilData2.GetValue(1).ToString();
                        Barang brg     = new Barang();
                        brg.KodeBarang = kodeBrg;
                        brg.Nama       = namaBrg;

                        int           hrgJual   = int.Parse(hasilData2.GetValue(2).ToString());
                        int           jumJual   = int.Parse(hasilData2.GetValue(3).ToString());
                        NotaJualDetil detilNota = new NotaJualDetil(brg, hrgJual, jumJual);

                        nota.TambahDetilBarang(brg, hrgJual, jumJual);
                    }
                    listHasilData.Add(nota);
                }
                return("1");
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
예제 #23
0
        public string BacaSemuaData()
        {
            Koneksi k1 = new Koneksi();

            k1.Connect();

            string sql1 = "SELECT N.NoNota,N.Tanggal, N.KodePelanggan, Plg.Nama AS NamaPelanggan, Plg.Alamat AS AlamatPelanggan, N.KodePegawai, Peg.Nama AS NamaPegawai " +
                          " FROM NotaJual N INNER JOIN Pelanggan Plg ON N.KodePelanggan=Plg.KodePelanggan " +
                          " INNER JOIN Pegawai Peg ON N.KodePegawai=Peg.KodePegawai " +
                          " ORDER BY N.NoNota DESC ";
            MySqlCommand c1 = new MySqlCommand(sql1, k1.KoneksiDB);

            try
            {
                MySqlDataReader data1 = c1.ExecuteReader();
                while (data1.Read() == true)
                {
                    string   nomorNota       = data1.GetValue(0).ToString();
                    DateTime tglNota         = DateTime.Parse(data1.GetValue(1).ToString());
                    string   kdPelanggan     = data1.GetValue(2).ToString();
                    string   nmPelanggan     = data1.GetValue(3).ToString();
                    string   alamatPelanggan = data1.GetValue(4).ToString();

                    Pelanggan Plg = new Pelanggan();
                    Plg.KodePelanggan   = kdPelanggan;
                    Plg.NamaPelanggan   = nmPelanggan;
                    Plg.AlamatPelanggan = alamatPelanggan;

                    string kdPegawai = data1.GetValue(5).ToString();
                    string nmPegawai = data1.GetValue(6).ToString();

                    Pegawai Peg = new Pegawai();
                    Peg.KodePegawai = kdPegawai;
                    Peg.NamaPegawai = nmPegawai;

                    List <DetilNotaJual> listDetilNota = new List <DetilNotaJual>();

                    Koneksi k2 = new Koneksi();
                    k2.Connect();

                    string sql2 = "SELECT NJD.KodeBarang, B.Nama, NJD.Harga, NJD.Jumlah " +
                                  " FROM notajual N INNER JOIN notajualdetil NJD ON N.NoNota=NJD.NoNota " +
                                  " INNER JOIN Barang B ON NJD.KodeBarang = B.KodeBarang " +
                                  " WHERE N.NoNota = '" + nomorNota + "'";

                    MySqlCommand c2 = new MySqlCommand(sql2, k2.KoneksiDB);

                    MySqlDataReader data2 = c2.ExecuteReader();
                    while (data2.Read() == true)
                    {
                        string kdBarang = data2.GetValue(0).ToString();
                        string nmBarang = data2.GetValue(1).ToString();
                        Barang Brg      = new Barang();
                        Brg.KodeBarang = kdBarang;
                        Brg.NamaBarang = nmBarang;

                        int hrgJual = int.Parse(data2.GetValue(2).ToString());
                        int jmlJual = int.Parse(data2.GetValue(3).ToString());

                        DetilNotaJual detilNota = new DetilNotaJual(Brg, hrgJual, jmlJual);

                        listDetilNota.Add(detilNota);
                    }

                    c2.Dispose();
                    data2.Dispose();

                    NotaJual nota = new NotaJual(nomorNota, tglNota, Plg, Peg, listDetilNota);

                    listNotaJual.Add(nota);
                }
                c1.Dispose();
                data1.Dispose();
                return("sukses");
            }
            catch (Exception e)
            {
                return(e.Message);
            }
        }
예제 #24
0
        public string CariData(string kriteria, string nilaiKriteria)
        {
            Koneksi k1 = new Koneksi();

            k1.Connect();
            //tuliskan perintah SQL yang akan dijalankan
            string sql = "SELECT N.NoNota,N.Tanggal, N.KodePelanggan, Plg.Nama AS NamaPelanggan, Plg.Alamat AS AlamatPelanggan, N.KodePegawai, Peg.Nama AS NamaPegawai " +
                         " FROM NotaJual N INNER JOIN Pelanggan Plg ON N.KodePelanggan=Plg.KodePelanggan " +
                         " INNER JOIN Pegawai Peg ON N.KodePegawai=Peg.KodePegawai " +
                         " WHERE " + kriteria + " LIKE '%" + nilaiKriteria + "%'";

            //Buat MySqlCommand
            MySqlCommand c1 = new MySqlCommand(sql, k1.KoneksiDB);

            try
            {
                //Gunakan MySqlDataReader dan ExecuteReader untuk menjalankan perintah SELECT
                MySqlDataReader data1 = c1.ExecuteReader();

                //selama data reader masih bisa terbaca (selama masih ada data)
                while (data1.Read() == true)
                {
                    //mendapatkan kode kategori dari hasil data reader
                    string nomorNota = data1.GetValue(0).ToString();
                    //mendapatkan nama kategori dari hasil data reader
                    DateTime tglNota = DateTime.Parse(data1.GetValue(1).ToString());
                    string   kdPlg   = data1.GetValue(2).ToString();

                    string nmPlg    = data1.GetValue(3).ToString();
                    string almatPlg = data1.GetValue(4).ToString();

                    Pelanggan Plg = new Pelanggan();
                    Plg.KodePelanggan   = kdPlg;
                    Plg.NamaPelanggan   = nmPlg;
                    Plg.AlamatPelanggan = almatPlg;

                    string  kodePeg = data1.GetValue(5).ToString();
                    string  nmPeg   = data1.GetValue(6).ToString();
                    Pegawai Peg     = new Pegawai();
                    Peg.KodePegawai = kodePeg;
                    Peg.NamaPegawai = nmPeg;

                    List <DetilNotaJual> listDetilNota = new List <DetilNotaJual>();

                    Koneksi k2 = new Koneksi();
                    k2.Connect();

                    string sql2 = "SELECT NJD.KodeBarang, B.Nama, NJD.Harga, NJD.Jumlah " +
                                  " FROM notajual N INNER JOIN notajualdetil NJD ON N.NoNota=NJD.NoNota " +
                                  " INNER JOIN Barang B ON NJD.KodeBarang = B.KodeBarang " +
                                  " WHERE N.NoNota = '" + nomorNota + "'";

                    MySqlCommand c2 = new MySqlCommand(sql2, k2.KoneksiDB);

                    MySqlDataReader data2 = c2.ExecuteReader();
                    while (data2.Read() == true)
                    {
                        string kdBarang = data2.GetValue(0).ToString();
                        string nmBarang = data2.GetValue(1).ToString();
                        Barang Brg      = new Barang();
                        Brg.KodeBarang = kdBarang;
                        Brg.NamaBarang = nmBarang;

                        int hrgJual = int.Parse(data2.GetValue(2).ToString());
                        int jmlJual = int.Parse(data2.GetValue(3).ToString());

                        DetilNotaJual detilNota = new DetilNotaJual(Brg, hrgJual, jmlJual);

                        listDetilNota.Add(detilNota);
                    }

                    c2.Dispose();
                    data2.Dispose();

                    NotaJual nota = new NotaJual(nomorNota, tglNota, Plg, Peg, listDetilNota);

                    listNotaJual.Add(nota);
                }
                c1.Dispose();
                data1.Dispose();
                return("sukses");
            }
            catch (Exception e)
            {
                return(e.Message);
            }
        }