void SuaChiTietPhieuChuyenKho_TonKho_dtDBCu(DataTable dtmoi, DataTable dtcu) { string err = ""; foreach (DataRow rMoi in dtmoi.Rows) { if (KiemTraMaHangHoaTonTaiTrongDB(dtcu, rMoi[2].ToString())) { foreach (DataRow rCu in dtcu.Rows) { if (rCu[2].Equals(rMoi[2])) { //cap nhat tonkho TK.MaHangHoa = rCu[2].ToString(); TK.SoLuong = Convert.ToInt32(rCu[3]); int soLuongMoi = Convert.ToInt32(rMoi[3]); if (soLuongMoi != TK.SoLuong) { if (soLuongMoi > TK.SoLuong) { //tru so luong kho chuyen TK.MaKho = lueKhoChuyen.EditValue.ToString(); TK.SoLuong = soLuongMoi - TK.SoLuong; bool f = tonKhoBUS.TruSoLuongTonKho(ref err, TK); if (f == true) { MessageBox.Show("Tru thanh cong kho:" + TK.MaKho + ",MaHangHoa:" + TK.MaHangHoa + ", So luong:" + TK.SoLuong); } //cong so luong kho nhan TK.MaKho = lueKhoNhan.EditValue.ToString(); bool f1 = tonKhoBUS.CongSoLuongTonKhoBUS(ref err, TK); if (f1 == true) { MessageBox.Show("Cong thanh cong kho:" + TK.MaKho + ",MaHangHoa:" + TK.MaHangHoa + ", So luong:" + TK.SoLuong); } } else { //cong so luong kho chuyen TK.MaKho = lueKhoChuyen.EditValue.ToString(); TK.SoLuong = TK.SoLuong - soLuongMoi; bool f = tonKhoBUS.CongSoLuongTonKhoBUS(ref err, TK); if (f == true) { MessageBox.Show("Cong thanh cong kho:" + TK.MaKho + ",MaHangHoa:" + TK.MaHangHoa + ", So luong:" + TK.SoLuong); } bool f1 = tonKhoBUS.TruSoLuongTonKho(ref err, TK); if (f1 == true) { MessageBox.Show("Tru thanh cong kho:" + TK.MaKho + ",MaHangHoa:" + TK.MaHangHoa + ", So luong:" + TK.SoLuong); } } } // cap nhat chi tiet phieuchuyen CTCK.MaChiTietPhieuChuyen = "1"; CTCK.MaPhieuChuyen = txtMaPhieuChuyen.Text; CTCK.MaHangHoa = rMoi[2].ToString(); CTCK.SoLuong = Convert.ToInt32(rMoi[3]); CTCK.DonGia = Convert.ToInt32(rMoi[4]); CTCK.ThanhTien = Convert.ToInt32(rMoi[5]); bool f2 = chiTietChuyenKhoBUS.CapNhatChiTietChuyenKhoByMaPhieuChuyenMaHangHoaBUS(ref err, CTCK); if (f2 == true) { MessageBox.Show("Cap nhat thanh cong chi tiet phieu chuyen,MaPhieuChuyen=" + CTCK.MaPhieuChuyen + ", MaHangHoa:" + CTCK.MaHangHoa); } } } } else { //them ton kho TK.MaHangHoa = rMoi[2].ToString(); TK.MaKho = lueKhoChuyen.EditValue.ToString(); TK.SoLuong = Convert.ToInt32(rMoi[3]); bool f = tonKhoBUS.TruSoLuongTonKho(ref err, TK); if (f == true) { MessageBox.Show("Them thanh cong ton kho, MaHangHoa: " + TK.MaHangHoa + " makho:" + TK.MaKho + "So luong " + TK.SoLuong); } TK.MaKho = lueKhoNhan.EditValue.ToString(); bool f1 = tonKhoBUS.ThemTonKhoBUS(ref err, TK); if (f1 == true) { MessageBox.Show("Them thanh cong ton kho, bo sung moi, MaHangHoa: " + TK.MaHangHoa + " makho:" + TK.MaKho + "So luong " + TK.SoLuong); } // them chi tiet phieu CTCK.MaChiTietPhieuChuyen = "1"; CTCK.MaPhieuChuyen = txtMaPhieuChuyen.Text; CTCK.MaHangHoa = rMoi[2].ToString(); CTCK.SoLuong = Convert.ToInt32(rMoi[3]); CTCK.DonGia = Convert.ToInt32(rMoi[4]); CTCK.ThanhTien = Convert.ToInt32(rMoi[5]); bool f2 = chiTietChuyenKhoBUS.ThemChiTietChuyenKhoBUS(ref err, CTCK); if (f2 == true) { MessageBox.Show("Them thanh cong chuyen kho, bo sung moi, MaPhieuChuyen: " + CTCK.MaPhieuChuyen + " MaHangHoa:" + CTCK.MaHangHoa + "So luong " + CTCK.SoLuong); } } } }
private void btnLuu_Click(object sender, EventArgs e) { string err = ""; //them mua hang MH.MaPhieu = txtMaPhieu.Text; MH.TenPhieu = txtTenPhieu.Text; MH.NgayLapPhieu = Convert.ToDateTime(deNgayLapPhieu.EditValue); MH.SoHoaDonVAT = txtSoHoaDonVAT.Text; MH.SoPhieuVietTay = txtSoPhieuVietTay.Text; MH.MaThanhToan = lueKieuThanhToan.EditValue.ToString(); MH.MaHinhThuc = lueHinhThucThanhToan.EditValue.ToString(); MH.MaNhaCungCap = lueNhaCungCap.EditValue.ToString(); MH.ThoiHanThanhToan = Convert.ToDateTime(deThoiHanThanhToan.EditValue); MH.GhiChu = txtGhiChu.Text; MH.MaNhanVien = lueNhanVien.EditValue.ToString(); MH.MaKho = lueKho.EditValue.ToString(); MH.TongTien = Convert.ToDouble(txtTongTien.EditValue); MH.PTramCK = Convert.ToInt32(txtPhanTramChuyenKhoan.EditValue); MH.Thue = Convert.ToInt32(txtPhanTramThue.EditValue); MH.TuongDuongTien = Convert.ToDouble(txtTuongDuongTien.EditValue); MH.TienThanhToan = Convert.ToDouble(txtTienThanhToan.EditValue); //TK = LayTonKhoTuDataTable(); if (txtMaPhieu.Text == "" || txtTenPhieu.Text == "" || MH.NgayLapPhieu == Convert.ToDateTime("1/1/0001 12:00:00 AM") || MH.ThoiHanThanhToan == Convert.ToDateTime("1/1/0001 12:00:00 AM") || MH.MaThanhToan == "" || MH.MaHinhThuc == "" || MH.MaNhaCungCap == "" || MH.MaNhanVien == "" || MH.MaKho == "" || MH.TongTien == 0 || MH.TienThanhToan == 0) { MessageBox.Show("Bạn chưa nhập đầy đủ thông tin"); } else { if (themOrSua == 1) { try { bool f = muaHangBUS.ThemMuaHangBUS(ref err, MH); int demTonKho = 0, demChiTietPMH = 0; if (f == true) { foreach (DataRow r in dt.Rows) { TK.MaHangHoa = r[2].ToString(); TK.MaKho = lueKho.EditValue.ToString(); TK.SoLuong = Convert.ToInt32(r[3]); bool f1 = tonKhoBUS.ThemTonKhoBUS(ref err, TK); CTPMH.MaChiTietPhieu = "1"; CTPMH.MaPhieu = txtMaPhieu.Text; CTPMH.MaHangHoa = r[2].ToString(); CTPMH.SoLuong = Convert.ToInt32(r[3]); CTPMH.DonGia = Convert.ToInt32(r[4]); CTPMH.ThanhTien = Convert.ToInt32(r[5]); bool f2 = chiTietPhieuMuaHangBUS.ThemChiTietPhieuMuaHangBUS(ref err, CTPMH); if (f1 == true) { demTonKho++; } if (f2 == true) { demChiTietPMH++; } } MessageBox.Show("Them thanh cong"); } else { MessageBox.Show("Khong them duoc, Loi: " + err); } if (demTonKho == dt.Rows.Count) { MessageBox.Show("Them thanh cong Ton kho: " + demTonKho); } if (demChiTietPMH == dt.Rows.Count) { MessageBox.Show("Them thanh cong Chi tiet phieu mua hang: " + demChiTietPMH); } else { MessageBox.Show("Khong them duoc, so luong them: " + demChiTietPMH); } } catch (SqlException) { MessageBox.Show("Không thêm được. Lỗi: " + err); } } else { try { bool f = muaHangBUS.CapNhatMuaHangBUS(ref err, MH); if (f == true) { DataTable dtDBCu = chiTietPhieuMuaHangBUS.GetAllChiTietPhieuMuaHangByMaPhieuBUS(CTPMH); DataTable dtDBMoi = dt; // chay theo dtDBCu SuaChiTietPhieuMuaHang_TonKho_dtDBCu(dtDBMoi, dtDBCu); //ThemChiTietPhieuMuaHang_TonKho_dtDBCu(dtDBMoi,dtDBCu); XoaChiTietPhieuMuaHang_TonKho_dtDBMoi(dtDBMoi, dtDBCu); } } catch (SqlException) { MessageBox.Show("Không thêm được. Lỗi: " + err); } } } }