private void btnHuyPhieu_Click(object sender, EventArgs e) { string soPhieu = grvPhieuNhap.GetRowCellValue(grvPhieuNhap.FocusedRowHandle, "SoPhieuNhap").ToString(); if (MessageBox.Show("Hủy phiếu nhập " + soPhieu + " ?", "Xác Nhận", MessageBoxButtons.OKCancel) == DialogResult.OK) { if (ChiTietPhieuNhapService.Delete(soPhieu)) { if (PhieuNhapService.Delete(soPhieu)) { grcPhieuNhap.DataSource = PhieuNhapService.LoadDataTable(); MessageBox.Show("Hủy phiếu thành công!"); } else { MessageBox.Show("Không thể hủy phiếu!"); } } else { MessageBox.Show("Không thể hủy chi tiết phiếu!"); } } }
private void btnLuu_Click(object sender, EventArgs e) { if (cbbNoiDungXuat.Text == "") { MessageBox.Show("Vui lòng chọn nội dung xuất!"); cbbNoiDungXuat.Focus(); return; } if (grvHangHoa.RowCount <= 0) { MessageBox.Show("Vui lòng chọn hàng hóa xuất"); } else { PhieuXuat px = new PhieuXuat(); px.MaNhanVien = "NV0001"; px.SoPhieuXuat = tedSoPhieu.Text; px.NgayLap = DateTime.Now; px.TongTien = TongTien; px.NoiDungXuat = cbbNoiDungXuat.SelectedText; if (PhieuXuatService.Insert(px)) { int fail = 0; for (int i = 0; i < grvHangHoa.RowCount; i++) { ChiTietPhieuXuat ctpx = new ChiTietPhieuXuat(); ctpx.SoPhieuXuat = tedSoPhieu.Text; ctpx.MaHangHoa = grvHangHoa.GetRowCellValue(i, "MaHangHoa").ToString(); ctpx.SoLuong = int.Parse(grvHangHoa.GetRowCellValue(i, "SoLuong").ToString()); ctpx.DonGiaXuat = decimal.Parse(grvHangHoa.GetRowCellValue(i, "DonGiaXuat").ToString()); ctpx.ThanhTien = decimal.Parse(grvHangHoa.GetRowCellValue(i, "ThanhTien").ToString()); if (!ChiTietPhieuXuatService.Insert(ctpx)) { fail++; if (i > 0) { ChiTietPhieuNhapService.Delete(tedSoPhieu.Text); } if (PhieuNhapService.Delete(tedSoPhieu.Text)) { MessageBox.Show("Roll back thành công!"); } else { MessageBox.Show("Roll back không thành công!"); } break; } } if (fail > 0) { MessageBox.Show("Lưu không thành công!"); } else { isSaved = true; isDataChanged = true; MessageBox.Show("Lưu thành công!"); } } else { if (MessageBox.Show("Thông báo", "Phiếu xuất này đã được lưu, bạn muốn tạo phiếu mới?", MessageBoxButtons.OKCancel) == DialogResult.OK) { btnNhapLai.PerformClick(); } } } }
private void btnLuu_Click(object sender, EventArgs e) { if (grvHangHoa.RowCount <= 0) { MessageBox.Show("Vui lòng chọn hàng hóa nhập"); } else { PhieuNhap pn = new PhieuNhap(); pn.MaNhanVien = (ProjectUltil.MaNhanVien != "")? ProjectUltil.MaNhanVien : "NV0001"; pn.SoPhieuNhap = tedSoPhieuNhap.Text; pn.NgayLap = DateTime.Now; pn.TongTien = TongTien; if (PhieuNhapService.Insert(pn)) { int success = 0, fail = 0; for (int i = 0; i < grvHangHoa.RowCount; i++) { ChiTietPhieuNhap ctpn = new ChiTietPhieuNhap(); ctpn.SoPhieuNhap = tedSoPhieuNhap.Text; ctpn.MaHangHoa = grvHangHoa.GetRowCellValue(i, "MaHangHoa").ToString(); ctpn.MaNhaCungCap = int.Parse(grvHangHoa.GetRowCellValue(i, "MaNhaCungCap").ToString()); ctpn.HanSuDung = DateTime.ParseExact(grvHangHoa.GetRowCellValue(i, "HanSuDung").ToString(), "d/M/yyyy", CultureInfo.InvariantCulture); ctpn.SoLuong = int.Parse(grvHangHoa.GetRowCellValue(i, "SoLuong").ToString()); ctpn.DonGiaNhap = decimal.Parse(grvHangHoa.GetRowCellValue(i, "DonGiaNhap").ToString()); ctpn.ThanhTien = decimal.Parse(grvHangHoa.GetRowCellValue(i, "ThanhTien").ToString()); if (ChiTietPhieuNhapService.Insert(ctpn)) { if (!HangHoaService.NhapHang(ctpn.MaHangHoa, ctpn.SoLuong)) { MessageBox.Show("Không thể cập nhật số lượng hàng hóa!"); } success++; } else { fail++; if (i > 0) { ChiTietPhieuNhapService.Delete(tedSoPhieuNhap.Text); } if (PhieuNhapService.Delete(tedSoPhieuNhap.Text)) { MessageBox.Show("Roll back thành công!"); } else { MessageBox.Show("Roll back không thành công!"); } break; } } if (fail > 0) { MessageBox.Show("Lưu không thành công!"); } else if (success == grvHangHoa.RowCount) { isDataChanged = true; isSaved = true; MessageBox.Show("Lưu thành công!"); } } else { if (MessageBox.Show("Phiếu nhập này đã được lưu, bạn muốn tạo phiếu nhập mới?", "Thông báo", MessageBoxButtons.OKCancel) == DialogResult.OK) { btnNhapLai.PerformClick(); } } } }
private void grvPhieuNhap_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { string soPhieu = grvPhieuNhap.GetRowCellValue(e.RowHandle, "SoPhieuNhap").ToString(); grcHangHoa.DataSource = ChiTietPhieuNhapService.GetById(soPhieu); }
private void btnLapBaoCao_Click(object sender, EventArgs e) { if (cbbThang.Text == "") { MessageBox.Show("Vui lòng chọn tháng!"); return; } thang = int.Parse(cbbThang.Text); if (cbbNam.Text == "") { MessageBox.Show("Vui lòng chọn năm!"); return; } nam = int.Parse(cbbNam.Text); DateTime dateStart = new DateTime(nam, thang, 1); DateTime dateEnd = new DateTime(nam, thang, ProjectUltil.soNgay(nam, thang)); if (dateStart > DateTime.Now.Date) { MessageBox.Show("Thời gian phải trước ngày hiện tại!"); return; } //if(dateEnd > DateTime.Now.Date) //{ // dateEnd = DateTime.Now.Date; //} dsPhieuNhap = PhieuNhapService.Search(null, dateStart, dateEnd); dsPhieuXuat = PhieuXuatService.Search(null, dateStart, dateEnd); dsBaoCaoTonKho = BaoCaoTonKhoService.GetByMonthYear(thang, nam); dsHangHoa = HangHoaService.LoadDataTable(); if (dsBaoCaoTonKho.Rows.Count > 0) { grcBaoCaoTonKho.DataSource = ChiTietBaoCaoTonKhoService.GetById(dsBaoCaoTonKho.Rows[0].Field <int>("MaBaoCaoTonKho")); btnIn.Enabled = true; } else { bctk = new BaoCaoTonKho(); bctk.MaNhanVien = (ProjectUltil.MaNhanVien != "") ? ProjectUltil.MaNhanVien : "NV0001"; bctk.Nam = nam; bctk.Thang = thang; bctk.NgayLap = DateTime.Now.Date; if ((bctk.MaBaoCaoTonKho = BaoCaoTonKhoService.Insert(bctk)) != -1) { for (int i = 0; i < dsHangHoa.Rows.Count; i++) { ctbctk = new ChiTietBaoCaoTonKho(); ctbctk.MaBaoCaoTonKho = bctk.MaBaoCaoTonKho; ctbctk.MaHangHoa = dsHangHoa.Rows[i].Field <string>("MaHangHoa"); ctbctk.SoLuongDauKy = 0; for (int j = 0; j < dsPhieuNhap.Rows.Count; j++) { dsCTPhieuNhap = ChiTietPhieuNhapService.GetById(dsPhieuNhap.Rows[j].Field <string>("SoPhieuNhap")); for (int k = 0; k < dsCTPhieuNhap.Rows.Count; k++) { if (dsCTPhieuNhap.Rows[k].Field <string>("MaHangHoa") == ctbctk.MaHangHoa) { int soluong = dsCTPhieuNhap.Rows[k].Field <int>("SoLuong"); ctbctk.SoLuongNhap += soluong; } } } for (int j = 0; j < dsPhieuXuat.Rows.Count; j++) { dsCTPhieuXuat = ChiTietPhieuXuatService.GetById(dsPhieuXuat.Rows[j].Field <string>("SoPhieuXuat")); for (int k = 0; k < dsCTPhieuXuat.Rows.Count; k++) { if (dsCTPhieuXuat.Rows[k].Field <string>("MaHangHoa") == ctbctk.MaHangHoa) { int soluong = dsCTPhieuXuat.Rows[k].Field <int>("SoLuong"); ctbctk.SoLuongXuat += soluong; } } } ctbctk.SoLuongCuoiKy = ctbctk.SoLuongDauKy + ctbctk.SoLuongNhap - ctbctk.SoLuongXuat; if (!ChiTietBaoCaoTonKhoService.Insert(ctbctk)) { ChiTietBaoCaoTonKhoService.Delete(ctbctk.MaBaoCaoTonKho.ToString()); BaoCaoTonKhoService.Delete(ctbctk.MaBaoCaoTonKho.ToString()); MessageBox.Show("Không thể thêm chi tiết báo cáo!"); } } } else { MessageBox.Show("Không thể lập báo cáo!"); } grcBaoCaoTonKho.DataSource = ChiTietBaoCaoTonKhoService.GetById(bctk.MaBaoCaoTonKho); btnIn.Enabled = true; } }