コード例 #1
0
        private void buttonPembelian_Click(object sender, EventArgs e)
        {
            Form form = Application.OpenForms["FormDaftarNotaBeli"];

            if (form == null)
            {
                FormDaftarNotaBeli formNotaBeli = new FormDaftarNotaBeli();
                formNotaBeli.MdiParent = this;
                formNotaBeli.Show();
            }
            else
            {
                form.Show();
                form.BringToFront();
            }
        }
コード例 #2
0
        private void buttonSimpan_Click(object sender, EventArgs e)
        {
            FormUtama          frmUtama = (FormUtama)this.Owner.MdiParent;
            FormDaftarNotaBeli form     = (FormDaftarNotaBeli)this.Owner;
            //buat objek bertipe Supplier
            Supplier supplier = new Supplier();

            //format combo box supplier: X -yyyyyy (kode supplier karakter 0 sebanyak 1, nama kategori mulai karakter  ke-4 s/d akhir
            supplier.IdSupplier = comboBoxSupplier.Text.Substring(0, 1);                                //kode supplier diambil dari  combobox
            supplier.Nama       = comboBoxSupplier.Text.Substring(4, comboBoxSupplier.Text.Length - 4); //nama supplier diambil dari combo box
            supplier.Alamat     = textBoxAlamat.Text;

            //buat object bertipe notabeli
            NotaPembelian nota = new NotaPembelian(textBoxNo.Text, comboBoxStatus.Text, textBoxKeterangan.Text, double.Parse(textBoxDiskon.Text),
                                                   HitungGrandTotal(), dateTimePickerTglLunas.Value, dateTimePickerDiskon.Value, dateTimePickerTanggalBeli.Value, supplier);

            //data barang diperoleh dari data gridview
            for (int i = 0; i < dataGridViewNota.Rows.Count; i++)
            {
                //buat object bertipe barang
                Barang barang = new Barang();
                //tambahkan kode, nama, jenis, satuan
                //hati hati dalam menambahkan
                barang.KodeBarang = dataGridViewNota.Rows[i].Cells["KodeBarang"].Value.ToString();
                barang.Nama       = dataGridViewNota.Rows[i].Cells["NamaBarang"].Value.ToString();
                barang.Jenis      = dataGridViewNota.Rows[i].Cells["jenis"].Value.ToString();
                barang.Satuan     = dataGridViewNota.Rows[i].Cells["satuan"].Value.ToString();
                //simpan  data hargabeli dan jumlah
                int harga  = int.Parse(dataGridViewNota.Rows[i].Cells["HargaBeli"].Value.ToString());
                int jumlah = int.Parse(dataGridViewNota.Rows[i].Cells["Jumlah"].Value.ToString());
                //buat object dan tambahkan
                DetilNotaBeli notaDetil = new DetilNotaBeli(barang, jumlah, harga);
                //simpan detil barang ke nota
                nota.TambahDetilBarang(barang, jumlah, harga);
            }

            string hasilTambahNota = NotaPembelian.TambahData(nota);

            if (hasilTambahNota == "1") //jika berhasil maka insert jurnal dan detil jurnal
            {
                MessageBox.Show("Data nota beli telah tersimpan", "Info");


                //tambah posting ke jurnal
                string idtrans  = "";
                string ket      = "";
                string idJurnal = Jurnal.GenerateIdJurnal();
                if (comboBoxStatus.Text == "L")
                {
                    idtrans = "012";
                    ket     = "Membeli bahan baku secara Tunai";
                }
                else if (comboBoxStatus.Text == "B")
                {
                    idtrans = "001";
                    ket     = "Membeli bahan baku secara kredit";
                }

                Transaksi trans = new Transaksi();
                trans.IdTransaksi = idtrans;
                trans.Keterangan  = ket;

                //buat object bertipe jurnal
                Jurnal jurnal = new Jurnal();
                //tambahkan data
                jurnal.IdJurnal = int.Parse(idJurnal);
                jurnal.Tanggal  = dateTimePickerTanggalBeli.Value;

                jurnal.NomorBukti = textBoxNo.Text;
                jurnal.Jenis      = "JU";
                jurnal.Periode    = pPeriode;
                jurnal.Transaksi  = trans;

                //isi detil jurnalnya
                int totalharga = HitungGrandTotal(); // panggil method hitung total harga untuk mendapatkan totalharga
                if (comboBoxStatus.Text == "L")
                {
                    jurnal.TambahDetilJurnalPembelianBarangTunai(totalharga);
                }
                else
                {
                    jurnal.TambahDetilJurnalPembelianBarangKredit(totalharga);
                }
                //simpan ke tabel _jurnal
                string hasilTambahJurnal = Jurnal.TambahData(jurnal);
                if (hasilTambahJurnal == "1")
                {
                    MessageBox.Show("berhasil posting ke jurnal");
                    DialogResult pesan = MessageBox.Show("Apakah anda ingin mencetak nota ? ", "konformasi", MessageBoxButtons.YesNo);
                    if (pesan == DialogResult.Yes)
                    {
                        string hasilCetak = NotaPembelian.CetakNota("NoNotaPembelian", textBoxNo.Text, "Nota_Beli_Tambah.txt");
                        if (hasilCetak == "1")
                        {
                            MessageBox.Show("Nota telah tercetak");
                            this.Close();
                            form.FormDaftarNotaBeli_Load(sender, e);
                        }
                        else
                        {
                            MessageBox.Show("Nota beli gagal dicetak. Pesan kesalahan : " + hasilCetak);
                        }
                    }
                    else
                    {
                        this.Close();
                        form.FormDaftarNotaBeli_Load(sender, e);
                    }
                }
                else
                {
                    MessageBox.Show("gagal posting ke jurnal" + hasilTambahJurnal);
                }
            }
            else
            {
                MessageBox.Show("Data nota beli gagal tersimpan. Pesan kesalahan : " + hasilTambahNota, "Kesalahan");
            }
        }