private void LoadInfoHoaDon() { string str; str = "SELECT NgayBan FROM tblHoaDon WHERE idHoaDon = N'" + txtMaHoaDon.Text + "'"; dtpNgayBan.Text = DAO_Bill.ConvertDateTime(DAO_Bill.SimpleRead(str)); str = "SELECT nv.TenNV FROM tblHoaDon hd JOIN dbo.tblNhanVien nv ON nv.iDNhanVien = hd.iDNhanVien WHERE idHoaDon = '" + txtMaHoaDon.Text + "'"; cbbMaNhanVien.Text = DAO_Bill.SimpleRead(str); str = " SELECT kh.DienThoai FROM dbo.tblHoaDon hd JOIN dbo.tblKhachHang kh ON kh.iDKhachHang = hd.iDKhachHang WHERE hd.idHoaDon = '" + txtMaHoaDon.Text + "'"; cbbSDTKH.Text = DAO_Bill.SimpleRead(str); str = "SELECT TongTien FROM tblHoaDon WHERE idHoaDon = N'" + txtMaHoaDon.Text + "'"; txtTongTien.Text = DAO_Bill.SimpleRead(str); txtthanhtoan.Text = DAO_Bill.SimpleRead(str); lblBangChu.Text = "Bằng chữ: " + DAO_Bill.ChuyenSoSangChu(double.Parse(txtTongTien.Text)); }
private void dgvHoaDon_DoubleClick(object sender, EventArgs e) { string MaHangxoa, sql; Double ThanhTienxoa, SoLuongxoa, sl, slcon, tong, tongmoi; if (tblCTHDB.Rows.Count == 0) { MessageBox.Show("Không có dữ liệu!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } try { if ((MessageBox.Show("Bạn có chắc chắn muốn xóa không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)) { //Xóa hàng và cập nhật lại số lượng hàng MaHangxoa = dgvHoaDon.CurrentRow.Cells["idCTHang"].Value.ToString(); SoLuongxoa = Convert.ToDouble(dgvHoaDon.CurrentRow.Cells["SoLuong"].Value.ToString()); ThanhTienxoa = Convert.ToDouble(dgvHoaDon.CurrentRow.Cells["ThanhTien"].Value.ToString()); sql = "DELETE tblCT_Hoadon WHERE idHoaDon=N'" + txtMaHoaDon.Text + "' AND idCTHang = N'" + MaHangxoa + "'"; DataProvider.Instance.ExecuteQuery(sql); LoadDataGridView(); // Cập nhật lại số lượng cho các mặt hàng sl = Convert.ToDouble(DAO_Bill.SimpleRead("SELECT SoLuong FROM tblCT_Hang WHERE idCTHang = N'" + MaHangxoa + "'")); slcon = sl + SoLuongxoa; sql = "UPDATE tblCT_Hang SET SoLuong =" + slcon + " WHERE idCTHang= N'" + MaHangxoa + "'"; DataProvider.Instance.ExecuteQuery(sql); // Cập nhật lại tổng tiền cho hóa đơn bán tong = Convert.ToDouble(DAO_Bill.SimpleRead("SELECT TongTien FROM tblHoadon WHERE idhoadon = N'" + txtMaHoaDon.Text + "'")); tongmoi = tong - ThanhTienxoa; sql = "UPDATE tblHoadon SET TongTien =" + tongmoi + " WHERE idhoadon = N'" + txtMaHoaDon.Text + "'"; DataProvider.Instance.ExecuteQuery(sql); txtTongTien.Text = tongmoi.ToString(); txtthanhtoan.Text = tongmoi.ToString(); lblBangChu.Text = "Bằng chữ: " + DAO_Bill.ChuyenSoSangChu(tongmoi); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void btnthem_Click(object sender, EventArgs e) { string sql; double sl, SLcon, tong, Tongmoi; sql = "SELECT idHoaDon FROM tblHoaDon WHERE idHoaDon=N'" + txtMaHoaDon.Text + "'"; if (!DAO_Bill.CheckKey(sql)) { // Mã hóa đơn chưa có, tiến hành lưu các thông tin chung // Mã HDBan được sinh tự động do đó không có trường hợp trùng khóa if (dtpNgayBan.Text.Length == 0) { MessageBox.Show("Bạn phải nhập ngày bán", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); dtpNgayBan.Focus(); return; } if (cbbMaNhanVien.Text.Length == 0) { MessageBox.Show("Bạn phải nhập nhân viên", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); cbbMaNhanVien.Focus(); return; } if (cbbSDTKH.Text.Length == 0) { MessageBox.Show("Bạn phải nhập khách hàng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); cbbSDTKH.Focus(); return; } try { sql = "INSERT INTO tblHoaDon(idHoadon, NgayBan, TongTien,idNhanVien, idKhachHang) VALUES (N'" + txtMaHoaDon.Text.Trim() + "','" + dtpNgayBan.Value.ToString() + "',N'" + txtTongTien.Text + "',N'" + cbbMaNhanVien.SelectedValue + "','" + cbbSDTKH.SelectedValue + "')"; DataProvider.Instance.ExecuteQuery(sql); } catch (Exception ex) { MessageBox.Show("Lỗi: " + ex.Message); } cbbMaNhanVien.Enabled = false; cbbSDTKH.Enabled = false; } // Lưu thông tin của các mặt hàng if (cbbMaSP.Text.Trim().Length == 0) { MessageBox.Show("Bạn phải nhập mã hàng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); cbbMaSP.Focus(); return; } if ((txtsoluongsp.Text.Trim().Length == 0) || (txtsoluongsp.Text == "0")) { MessageBox.Show("Bạn phải nhập số lượng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); txtsoluongsp.Text = ""; txtsoluongsp.Focus(); return; } if (txtgiamphantramsp.Text.Trim().Length == 0) { MessageBox.Show("Bạn phải nhập giảm giá", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); txtgiamphantramsp.Focus(); return; } sql = "SELECT idCTHang FROM tblCT_HoaDon WHERE idCTHang=N'" + cbbMaSP.SelectedValue + "' AND idHoaDon = N'" + txtMaHoaDon.Text.Trim() + "'"; if (DAO_Bill.CheckKey(sql)) { MessageBox.Show("Mã hàng này đã có, bạn phải nhập mã khác", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); clearsp(); cbbMaSP.Focus(); return; } // Kiểm tra xem số lượng hàng trong kho còn đủ để cung cấp không? sl = Convert.ToDouble(DAO_Bill.SimpleRead("SELECT SoLuong FROM tblCT_Hang WHERE idCTHang = N'" + cbbMaSP.SelectedValue + "'")); if (Convert.ToDouble(txtsoluongsp.Text) > sl) { MessageBox.Show("Số lượng mặt hàng này chỉ còn " + sl, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); txtsoluongsp.Text = ""; txtsoluongsp.Focus(); return; } try { sql = "INSERT INTO tblCT_HoaDon(SoLuong,DonGia,GiamGia,ThanhTien, idCTHang,idHoaDon) VALUES( " + txtsoluongsp.Text + "," + txtDonGiaSP.Text + "," + txtgiamphantramsp.Text + "," + txtThanhTien.Text + ", N'" + cbbMaSP.SelectedValue + "',N'" + txtMaHoaDon.Text.Trim() + "')"; DataProvider.Instance.ExecuteQuery(sql); LoadDataGridView(); // Cập nhật lại số lượng của mặt hàng vào bảng tblHang SLcon = sl - Convert.ToDouble(txtsoluongsp.Text); sql = "UPDATE tblCT_Hang SET SoLuong =" + SLcon + " WHERE idCTHang= N'" + cbbMaSP.SelectedValue + "'"; DataProvider.Instance.ExecuteQuery(sql); // Cập nhật lại tổng tiền cho hóa đơn bán tong = Convert.ToDouble(DAO_Bill.SimpleRead("SELECT TongTien FROM tblHoaDon WHERE idHoaDon = N'" + txtMaHoaDon.Text + "'")); Tongmoi = tong + Convert.ToDouble(txtThanhTien.Text); sql = "UPDATE tblHoadon SET TongTien =" + Tongmoi + " WHERE idHoaDon = N'" + txtMaHoaDon.Text + "'"; DataProvider.Instance.ExecuteQuery(sql); txtTongTien.Text = Tongmoi.ToString(); txtthanhtoan.Text = Tongmoi.ToString(); lblBangChu.Text = "Bằng chữ: " + DAO_Bill.ChuyenSoSangChu(Tongmoi); clearsp(); } catch (Exception ex) { MessageBox.Show("Lỗi: " + ex.Message); } //btnXoa.Enabled = true; //btnThem.Enabled = true; //btnInHoaDon.Enabled = true; //bool found = false; //if (dgvHoaDon.Rows.Count > 0) //{ // foreach (DataGridViewRow row in dgvHoaDon.Rows) // { // if (Convert.ToString(row.Cells[0].Value) == cbbMaSP.Text) // { // //neu them san pham giong nhau se cộng dồn số lượng và tiền vào ô // row.Cells[2].Value = (int.Parse(txtsoluongsp.Text) + Convert.ToInt16(row.Cells[2].Value.ToString())); // row.Cells[4].Value = (double.Parse(txtThanhTien.Text) + Convert.ToDouble(row.Cells[4].Value.ToString())); // found = true; // ///////////////////// // } // } // if (!found) // { // dgvHoaDon.Rows.Add(cbbMaSP.Text, txtTenSP.Text, txtsoluongsp.Text, txtDonGiaSP.Text, txtThanhTien.Text, txtChatLieu.Text, txtSize.Text, txtgiamphantramsp.Text); // } //} //else //{ // dgvHoaDon.Rows.Add(cbbMaSP.Text, txtTenSP.Text, txtsoluongsp.Text, txtDonGiaSP.Text, txtThanhTien.Text, txtChatLieu.Text, txtSize.Text, txtgiamphantramsp.Text); //} //double sum = 0; //for (int i = 0; i < dgvHoaDon.Rows.Count; ++i) //{ // sum += Convert.ToDouble(dgvHoaDon.Rows[i].Cells[4].Value); //} //txtTongTien.Text = sum.ToString("###,###"); ////------------------- update sql -----------------// //string sql = "update tblCT_Hang set soluong=soluong - '" + txtsoluongsp.Text + "' where idCTHang ='" + cbbMaSP.Text + "' "; //DataProvider.Instance.ExecuteQuery(sql); //clearsp(); }
private void btnthanhtoan_Click(object sender, EventArgs e) { COMExcel.Application exApp = new COMExcel.Application(); COMExcel.Workbook exBook; //Trong 1 chương trình Excel có nhiều Workbook COMExcel.Worksheet exSheet; //Trong 1 Workbook có nhiều Worksheet COMExcel.Range exRange; string sql; int hang = 0, cot = 0; DataTable tblThongtinHD, tblThongtinHang; exBook = exApp.Workbooks.Add(COMExcel.XlWBATemplate.xlWBATWorksheet); exSheet = exBook.Worksheets[1]; // Định dạng chung exRange = exSheet.Cells[1, 1]; exRange.Range["A1:Z300"].Font.Name = "Times new roman"; //Font chữ exRange.Range["A1:B3"].Font.Size = 10; exRange.Range["A1:B3"].Font.Bold = true; exRange.Range["A1:B3"].Font.ColorIndex = 5; //Màu xanh da trời exRange.Range["A1:A1"].ColumnWidth = 7; exRange.Range["B1:B1"].ColumnWidth = 15; exRange.Range["A1:B1"].MergeCells = true; exRange.Range["A1:B1"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignCenter; exRange.Range["A1:B1"].Value = "THE MR.SIMPLE SYTLE."; exRange.Range["A2:B2"].MergeCells = true; exRange.Range["A2:B2"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignCenter; exRange.Range["A2:B2"].Value = "27 - LÝ TỰ TRONG - QUẬN 1 - TPHCM"; exRange.Range["A3:B3"].MergeCells = true; exRange.Range["A3:B3"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignCenter; exRange.Range["A3:B3"].Value = "Điện thoại: (+84)987644753"; exRange.Range["C2:E2"].Font.Size = 16; exRange.Range["C2:E2"].Font.Bold = true; exRange.Range["C2:E2"].Font.ColorIndex = 3; //Màu đỏ exRange.Range["C2:E2"].MergeCells = true; exRange.Range["C2:E2"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignCenter; exRange.Range["C2:E2"].Value = "HÓA ĐƠN BÁN"; // Biểu diễn thông tin chung của hóa đơn bán sql = "SELECT a.idHoadon, a.NgayBan, a.TongTien, b.TenKhach, b.DiaChi, b.DienThoai, c.TenNV FROM tblHoadon AS a, tblKhachHang AS b, tblNhanVien AS c WHERE a.idHoaDon = N'" + txtMaHoaDon.Text + "' AND a.idKhachHang = b.idKhachHang AND a.idNhanVien = c.idNhanVien"; tblThongtinHD = DAO_Bill.GetDataToTable(sql); exRange.Range["B6:C9"].Font.Size = 12; exRange.Range["B6:B6"].Value = "Mã hóa đơn:"; exRange.Range["C6:E6"].MergeCells = true; exRange.Range["C6:E6"].Value = tblThongtinHD.Rows[0][1].ToString(); exRange.Range["B7:B7"].Value = "Khách hàng:"; exRange.Range["C7:E7"].MergeCells = true; exRange.Range["C7:E7"].Value = tblThongtinHD.Rows[0][3].ToString(); exRange.Range["B8:B8"].Value = "Địa chỉ:"; exRange.Range["C8:E8"].MergeCells = true; exRange.Range["C8:E8"].Value = tblThongtinHD.Rows[0][4].ToString(); exRange.Range["B9:B9"].Value = "Điện thoại:"; exRange.Range["C9:E9"].MergeCells = true; exRange.Range["C9:E9"].Value = tblThongtinHD.Rows[0][5].ToString(); //Lấy thông tin các mặt hàng sql = "SELECT b.Ten, a.SoLuong, b.DonGiaBan, a.GiamGia, a.ThanhTien " + "FROM tblCT_HoaDon AS a , tblCT_Hang AS b WHERE a.idHoaDon = N'" + txtMaHoaDon.Text + "' AND a.idCTHang = b.idCTHang"; tblThongtinHang = DAO_Bill.GetDataToTable(sql); //Tạo dòng tiêu đề bảng exRange.Range["A11:F11"].Font.Bold = true; exRange.Range["A11:F11"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignCenter; exRange.Range["C11:F11"].ColumnWidth = 12; exRange.Range["A11:A11"].Value = "STT"; exRange.Range["B11:B11"].Value = "Tên hàng"; exRange.Range["C11:C11"].Value = "Số lượng"; exRange.Range["D11:D11"].Value = "Đơn giá"; exRange.Range["E11:E11"].Value = "Giảm giá"; exRange.Range["F11:F11"].Value = "Thành tiền"; for (hang = 0; hang < tblThongtinHang.Rows.Count; hang++) { //Điền số thứ tự vào cột 1 từ dòng 12 exSheet.Cells[1][hang + 12] = hang + 1; for (cot = 0; cot < tblThongtinHang.Columns.Count; cot++) //Điền thông tin hàng từ cột thứ 2, dòng 12 { exSheet.Cells[cot + 2][hang + 12] = tblThongtinHang.Rows[hang][cot].ToString(); if (cot == 3) { exSheet.Cells[cot + 2][hang + 12] = tblThongtinHang.Rows[hang][cot].ToString() + "%"; } } } exRange = exSheet.Cells[cot][hang + 14]; exRange.Font.Bold = true; exRange.Value2 = "Tổng tiền:"; exRange = exSheet.Cells[cot + 1][hang + 14]; exRange.Font.Bold = true; exRange.Value2 = tblThongtinHD.Rows[0][2].ToString(); exRange = exSheet.Cells[1][hang + 15]; //Ô A1 exRange.Range["A1:F1"].MergeCells = true; exRange.Range["A1:F1"].Font.Bold = true; exRange.Range["A1:F1"].Font.Italic = true; exRange.Range["A1:F1"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignRight; exRange.Range["A1:F1"].Value = "Bằng chữ: " + DAO_Bill.ChuyenSoSangChu(double.Parse(tblThongtinHD.Rows[0][2].ToString())); exRange = exSheet.Cells[4][hang + 17]; //Ô A1 exRange.Range["A1:C1"].MergeCells = true; exRange.Range["A1:C1"].Font.Italic = true; exRange.Range["A1:C1"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignCenter; DateTime d = Convert.ToDateTime(tblThongtinHD.Rows[0][1]); exRange.Range["A1:C1"].Value = "TPHCM, ngày " + d.Day + " tháng " + d.Month + " năm " + d.Year; exRange.Range["A2:C2"].MergeCells = true; exRange.Range["A2:C2"].Font.Italic = true; exRange.Range["A2:C2"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignCenter; exRange.Range["A2:C2"].Value = "Nhân viên bán hàng"; exRange.Range["A6:C6"].MergeCells = true; exRange.Range["A6:C6"].Font.Italic = true; exRange.Range["A6:C6"].HorizontalAlignment = COMExcel.XlHAlign.xlHAlignCenter; exRange.Range["A6:C6"].Value = tblThongtinHD.Rows[0][6]; exSheet.Name = "Hóa đơn nhập"; exApp.Visible = true; }