public bool CheckPhieuNo() { int? ID_Check = null; Int32 selectedRowCount = gridDanhSachPhieuNhap.CurrentCell.RowIndex; string maphieu = gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Ma_phieu"].Value.ToString(); try { ID_Check = (int?)gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_loai_phieu_nhap"].Value ?? null; } catch (Exception ex) { } clsLoaiPhieuNhap lpn = new clsLoaiPhieuNhap(); if (ID_Check != null) { string name = lpn.getTenLPN((int)ID_Check); if (name.First().ToString() == "X") { // lay danh sach nhung phieu nhap ngoai,tu to trinh va muon ngoai chua thuc hien tra no bool co_phieu_no = clsPhieuNhapKho.GetAllPhieuNoDaDuyet(maphieu); if (co_phieu_no == true) { DialogResult result2 = MessageBox.Show("Bạn có phiếu đang nợ vui lòng thực hiện trừ nợ trước khi duyệt phiếu ", "Cảnh báo", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question); if (result2 == DialogResult.Yes) { frmBuTruPhieu butru = new frmBuTruPhieu(this, maphieu, ""); butru.Show(); return true; } } } } return false; }
private void XuLyNhap_Phieu() { try { Int32 selectedRowCount = gridDanhSachPhieuNhap.CurrentCell.RowIndex; string maphieu = gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Ma_phieu"].Value.ToString(); int idKho = int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_kho"].Value.ToString()); bool Da_phan_kho = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Da_phan_kho"].Value.ToString()); if (Da_phan_kho == true) { MessageBox.Show("Phiếu này đã duyệt và phân kho "); return; } int idphieu = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_phieu_nhap"].Value.ToString()) ? -1 : int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_phieu_nhap"].Value.ToString()); int idloaiphieu = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["id_loai_phieu_nhap"].Value.ToString()) ? -1 : int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["id_loai_phieu_nhap"].Value.ToString()); bool isgoidau = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isgoidau"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isgoidau"].Value.ToString()); bool isKNMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNMN"].Value.ToString()); bool isToTrinh = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isToTrinh"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isToTrinh"].Value.ToString()); bool isKNTN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNTN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNTN"].Value.ToString()); bool isKCMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCMN"].Value.ToString()); bool isKCTN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCTN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCTN"].Value.ToString()); bool isNVMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isNVMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isNVMN"].Value.ToString()); int ID_Kho = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_kho"].Value.ToString()) ? 0 : int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_kho"].Value.ToString()); bool isKhoNgoai = new clsDM_Kho().GetDataARow(ID_Kho); if (isKhoNgoai == true) { if (idloaiphieu != -1) { clsLoaiPhieuNhap lpn = new clsLoaiPhieuNhap(); if (lpn.getTenLPN(idloaiphieu).Equals("XD")) { KhoNgoai pn = new KhoNgoai(); if (pn.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } } } if (isNVMN == true) { KhoNgoai pn = new KhoNgoai(); if (pn.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isToTrinh == true) { BienBanToTrinh BBTT = new BienBanToTrinh(); if (BBTT.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isgoidau == true) { GoiDau gd = new GoiDau(); if (gd.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (CheckPhieuNo() == true) return; if (isKCMN == true) { DiMuonNo KCMN = new DiMuonNo(); if (KCMN.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isKCTN == true) { DiTraNo KCTN = new DiTraNo(); if (KCTN.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isKNTN == true) { KhoKhacTraNo gd = new KhoKhacTraNo(); if (gd.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isKNMN == true) { PhieuKhoKhacMuon gd = new PhieuKhoKhacMuon(); if (gd.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isgoidau == true) { GoiDau gd = new GoiDau(); if (gd.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (idloaiphieu != -1) { clsLoaiPhieuNhap lpn = new clsLoaiPhieuNhap(); if (lpn.getTenLPN(idloaiphieu).Equals("XD")) { PhieuNhap pn = new PhieuNhap(); if (pn.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (lpn.getTenLPN(idloaiphieu).Equals("TD")) { PhieuHoanNhap phn = new PhieuHoanNhap(); if (phn.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } } } catch (Exception ex) { MessageBox.Show(Utilities.clsThamSoUtilities.COException(ex)); } }
public void XuLy() { try { Int32 selectedRowCount = gridDanhSachPhieuNhap.CurrentCell.RowIndex; string maphieu = gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Ma_phieu"].Value.ToString(); int idKho = int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_kho"].Value.ToString()); //bool Da_phan_kho = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Da_phan_kho"].Value.ToString()); //if (Da_phan_kho == true) //{ // MessageBox.Show("Phiếu này đã duyệt và phân kho "); // return; //} //neu phieu nhap la XD thi co cac truong hop sau // kiem ttra xem danh sach vat tu trong danh sach phieu nhap la nhap ngoai va no la nhap tu to trinh hoac MN ko ? // neu trong to tinh co vat tu trung voi vat tu phieu nhap // thi nguoi dung tien hanh chuyen qua man hinh tra no DatabaseHelper help = new DatabaseHelper(); help.ConnectDatabase(); // lấy tất cả danh sách các vật tư có mã phiếu nhập đó DataTable tb = new clsChi_Tiet_Phieu_Nhap_Vat_Tu().GetAll(maphieu); //nếu phiếu này là cấn trừ //hiển thị form cấn trừ nợ cho vật tư // bool? isCanTru = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isCanTru"].Value.ToString()); try { bool? isCanTru = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isCanTru"].Value.ToString()); if (isCanTru == true) { MessageBox.Show("Phiếu này đang ở trạng thái chưa bù trừ nợ, vui lòng thực hiện chức năng bù trừ nợ trước! "); return; } } catch (Exception ex) { } try { bool? isNhapNgoai = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isNhapNgoai"].Value.ToString()); bool? isChoMuonNo = null; try { isChoMuonNo = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isChoMuonNgoai"].Value.ToString()); } catch (Exception ex) { } if (isNhapNgoai == true && isChoMuonNo == true) { using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { for (int i = 0; i < tb.Rows.Count; i++) { clsXuLyDuLieuChung dc = new clsXuLyDuLieuChung(); string mavattu = tb.Rows[i]["ma_vat_tu"].ToString(); decimal soluong = decimal.Parse(tb.Rows[i]["so_luong_thuc_lanh"].ToString()); int id_chat_luong = int.Parse(tb.Rows[i]["Id_chat_luong"].ToString()); DateTime ngayNhap = DateTime.Now; if (dc.InsertTonKho(help, mavattu, idKho, soluong, maphieu, ngayNhap, id_chat_luong, false) == 0) { dbcxtransaction.Rollback(); } } MessageBox.Show("Bạn đã xác nhận thành công "); dbcxtransaction.Commit(); LoadData(); return; } } else if (isNhapNgoai == true) { using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { for (int i = 0; i < tb.Rows.Count; i++) { clsXuLyDuLieuChung dc = new clsXuLyDuLieuChung(); string mavattu = tb.Rows[i]["ma_vat_tu"].ToString(); decimal soluong = decimal.Parse(tb.Rows[i]["so_luong_thuc_lanh"].ToString()); int id_chat_luong = int.Parse(tb.Rows[i]["Id_chat_luong"].ToString()); DateTime ngayNhap = DateTime.Now; if (dc.InsertTonKho(help, mavattu, idKho, soluong, maphieu, ngayNhap, id_chat_luong, true) == 0) { dbcxtransaction.Rollback(); } } MessageBox.Show("Bạn đã xác nhận thành công "); dbcxtransaction.Commit(); LoadData(); } return; } } catch (Exception ex) { } int? ID_loai_phieu_nhap = int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_loai_phieu_nhap"].Value.ToString()); clsLoaiPhieuNhap LPN = new clsLoaiPhieuNhap(); LPN.ID_LPN = (int)ID_loai_phieu_nhap; string TenLPN = LPN.getTenLPN((int)ID_loai_phieu_nhap); using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { for (int i = 0; i < tb.Rows.Count; i++) { //duyệt qua từng dòng insert chi tiết phiếu nhập vào clsXuLyDuLieuChung dc = new clsXuLyDuLieuChung(); string mavattu = tb.Rows[i]["ma_vat_tu"].ToString(); // số lượng hoàn nhập hay số lượng lãnh vật tư tùy vào ID loai phieu decimal soluong = decimal.Parse(tb.Rows[i]["so_luong_thuc_lanh"].ToString()); int id_chat_luong = int.Parse(tb.Rows[i]["Id_chat_luong"].ToString()); DateTime ngayNhap = DateTime.Now; try { bool isGoiDau = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isGoiDau"].Value.ToString()); if (isGoiDau == true) { clsVatTuGoiDauKy gdk = new clsVatTuGoiDauKy(); gdk.ID_chat_luong = id_chat_luong; gdk.Ma_vat_tu = mavattu; gdk.So_Luong = soluong; gdk.ID_kho = idKho; if (gdk.CheckTonTaiSoDK() == true) { //nếu có cập nhật lại gối đầu DataTable temp = gdk.GetAll(); decimal sl = decimal.Parse(temp.Rows[0]["So_luong"].ToString()); gdk.ID_VT_Goi_Dau = int.Parse(temp.Rows[0]["ID_VT_Goi_Dau"].ToString()); gdk.So_Luong = gdk.So_Luong + sl; gdk.Update(); } //nếu chưa tồn tại tiến hành insert dòng mới else if (gdk.Insert() == 0) { MessageBox.Show("Đã có lỗi xãy ra !"); return; } } // nếu mã phiếu hoàn nhập thì trừ trong gói đầu nếu có phiếu hoàn nhập mà chưa có gói đầu thì vô lý if (TenLPN.Contains("T")) { clsVatTuGoiDauKy gdk = new clsVatTuGoiDauKy(); gdk.ID_chat_luong = id_chat_luong; gdk.Ma_vat_tu = mavattu; gdk.ID_kho = idKho; DataTable temp = gdk.GetAll(); //số lượng gối đầu if (temp.Rows.Count == 0)//chưa có { MessageBox.Show("Vật tư này chưa có trong danh sách vật tư gối đầu, không thể hoàn nhập được"); return; } decimal soluonght = decimal.Parse(temp.Rows[0]["So_luong"].ToString()); soluonght = soluonght - soluong; gdk.So_Luong = soluonght; gdk.ID_VT_Goi_Dau = int.Parse(temp.Rows[0]["ID_VT_Goi_Dau"].ToString()); if (gdk.Update() == 0) { MessageBox.Show("Đã có lỗi xãy ra trong quá trình cập nhật số lượng đầu kỳ!"); return; } //sau đó trừ vào kho, thẻ kho // MessageBox.Show("Hoàn nhập thành công!"); // return; } } catch (Exception ex) { } if (TenLPN.Contains("X") == true) { if (dc.InsertTonKho(help, mavattu, idKho, soluong, maphieu, ngayNhap, id_chat_luong, true) == 0) { dbcxtransaction.Rollback(); } } else { //CO MA PHIEU TD //PHIEU TRU KHO if (dc.InsertTonKho(help, mavattu, idKho, soluong, maphieu, ngayNhap, id_chat_luong, false) == 0) { dbcxtransaction.Rollback(); } } } dbcxtransaction.Commit(); MessageBox.Show("Bạn đã thêm thành công !"); } LoadData(); } catch (Exception ex) { MessageBox.Show(Utilities.clsThamSoUtilities.COException(ex)); } }
private void BoDuyet_Xu_Ly() { try { Int32 selectedRowCount = gridDanhSachPhieuNhap.CurrentCell.RowIndex; string maphieu = gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Ma_phieu"].Value.ToString(); int idKho = int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_kho"].Value.ToString()); bool Da_phan_kho = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Da_phan_kho"].Value.ToString()); if (Da_phan_kho == false) { MessageBox.Show("Phiếu này chưa duyệt "); return; } int idphieu = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_phieu_nhap"].Value.ToString()) ? -1 : int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_phieu_nhap"].Value.ToString()); int idloaiphieu = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["id_loai_phieu_nhap"].Value.ToString()) ? -1 : int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["id_loai_phieu_nhap"].Value.ToString()); bool isgoidau = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isgoidau"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isgoidau"].Value.ToString()); bool isKNMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNMN"].Value.ToString()); bool isToTrinh = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isToTrinh"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isToTrinh"].Value.ToString()); bool isKNTN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNTN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNTN"].Value.ToString()); bool isKCMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCMN"].Value.ToString()); bool isKCTN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCTN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCTN"].Value.ToString()); bool isNVMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isNVMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isNVMN"].Value.ToString()); if (isNVMN == true) { KhoNgoai kn = new KhoNgoai(); if( kn.BoDuyet(idphieu)==1) MessageBox.Show("Bỏ duyệt thành công!"); return; } if (CheckTruNo(maphieu) != -1) { MessageBox.Show("Phiếu này đã thực hiện trừ nợ không thể bỏ duyệt được!"); return; } if (isToTrinh == true) { BienBanToTrinh BBTT = new BienBanToTrinh(); if (BBTT.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } if (isgoidau == true) { GoiDau gd = new GoiDau(); if (gd.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } if (isKCMN == true) { DiMuonNo KCMN = new DiMuonNo(); if (KCMN.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } if (isKCTN == true) { DiTraNo KCTN = new DiTraNo(); if (KCTN.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } if (isKNTN == true) { KhoKhacTraNo gd = new KhoKhacTraNo(); if (gd.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } if (isKNMN == true) { PhieuKhoKhacMuon gd = new PhieuKhoKhacMuon(); if (gd.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } if (isgoidau == true) { GoiDau gd = new GoiDau(); if (gd.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } if (idloaiphieu != -1) { clsLoaiPhieuNhap lpn = new clsLoaiPhieuNhap(); if (lpn.getTenLPN(idloaiphieu).Equals("XD")) { PhieuNhap pn = new PhieuNhap(); if (pn.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } if (lpn.getTenLPN(idloaiphieu).Equals("TD")) { PhieuHoanNhap phn = new PhieuHoanNhap(); if (phn.BoDuyet(idphieu) == 1) { MessageBox.Show("Bỏ duyệt thành công!"); return; } } } } catch (Exception ex) { MessageBox.Show(Utilities.clsThamSoUtilities.COException(ex)); } }
/// <summary> /// hàm này tiến hành cập nhật lại CSDL rất lớn liên quang 5000 dòng /// /// </summary> public void ChuyenDoi() { DatabaseHelper help = new DatabaseHelper(); help.ConnectDatabase(); // insert using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { try { for (int i = 0; i < tb.Rows.Count - 1; i++) { string Ma_phieu_nhap = tb.Rows[i]["column1"].ToString(); DateTime Ngay_lap = DateTime.Parse(tb.Rows[i]["column2"].ToString()); string Kho_nhan = tb.Rows[i]["column3"].ToString(); string Ly_do = tb.Rows[i]["column4"].ToString(); string Ma_vat_tu = tb.Rows[i]["column5"].ToString(); string Ten_vat_tu = tb.Rows[i]["column6"].ToString(); string Chat_luong = tb.Rows[i]["column7"].ToString(); string DVT = tb.Rows[i]["column8"].ToString(); string So_luong_thuc_lanh = tb.Rows[i]["column9"].ToString(); string Don_gia = tb.Rows[i]["column10"].ToString(); string Thanh_tien = tb.Rows[i]["column11"].ToString(); clsPhieuNhapKho pnk = new clsPhieuNhapKho(); if (pnk.CheckTonTaiSoDK(Ma_phieu_nhap, help) == false) { pnk.Ma_phieu_nhap = Ma_phieu_nhap; pnk.isGoiDau = rdoPhieuGoiDau.Checked; pnk.isCanTru = false; pnk.Ngay_lap = Ngay_lap; pnk.Kho_nhan = Kho_nhan; pnk.Ly_do = Ly_do; clsLoaiPhieuNhap LPN = new clsLoaiPhieuNhap(); LPN.Ma_LPN = Loai_PN; pnk.ID_Loai_Phieu_Nhap = LPN.GetFirst(help); pnk.ID_khoNhan = idkho; if ( pnk.Insert(help) == 0) { dbcxtransaction.Rollback(); MessageBox.Show("insert thất bại tại dòng !" + i); return; } } clsChi_Tiet_Phieu_Nhap_Vat_Tu ctpn = new clsChi_Tiet_Phieu_Nhap_Vat_Tu(); ctpn.Ma_vat_tu = Ma_vat_tu; ctpn.Ma_phieu_nhap = Ma_phieu_nhap; ctpn.ID_Chat_luong = Chat_luong.Contains("mới") ? 1 : 2; //kiểm tra xem vật tư đã có trong csdl chưa nếu chưa thêm vào clsDM_DonViTinh DMDVT = new clsDM_DonViTinh(); if (ctpn.CheckTonTaiSoDK(help) == false) { DMDVT.Ten_don_vi_tinh = DVT; if (DMDVT.hasDuplicateRow(help) == false) { //nếu chưa có thì insert dòng mới DMDVT.Insert(help); } //tiến hành insert 5000 dòng dữ liệu từ phiếu nhập } ctpn.ID_Don_vi_tinh = DMDVT.getMATuTen(DVT, help); //kiểm tra mã vật tư đã tồn tại chưa trong CSDL clsDMVatTu vt = new clsDMVatTu(); vt.Ma_vat_tu = Ma_vat_tu; vt.Ten_vat_tu = Ten_vat_tu; vt.ID_Don_vi_tinh = ctpn.ID_Don_vi_tinh; if (vt.KiemTraTrungMa(help) == false) { vt.Insert(help); } ctpn.So_luong_thuc_lanh = decimal.Parse(So_luong_thuc_lanh); ctpn.Insert(help); backgroundWorker1.ReportProgress(i); } dbcxtransaction.Commit(); backgroundWorker1.ReportProgress(0); MessageBox.Show("Thêm thành công!"); } catch (Exception ex) { dbcxtransaction.Rollback(); // Get stack trace for the exception with source file information MessageBox.Show(Utilities.clsThamSoUtilities.COException(ex)); return; } } }