/// <summary> /// /// Hàm xoá bản ghi, sẽ xoá các bản ghi liên quan nếu các bảng liên quan là lấy giá trị của bản ghi hiện tại là khoá chính /// Còn không, đổi giá trị thuộc tính của bản ghi liên kết tới bản ghi hiện tại là null /// /// </summary> /// <param name="_NameTable"></param> /// <param name="_Value"></param> private void DeleteRecord(MyStruct.MyTableName _NameTable, object _Value) { string messageError = ""; switch (_NameTable) { case MyStruct.MyTableName.DUAN: MyStruct.DUAN da = _Value as MyStruct.DUAN; if (!GUI.Delete.DUAN.DeleteRecord_Primary(da.MADA)) { if (DialogResult.OK == MessageBox.Show( "Không thể xoá bản ghi!\nBản ghi hiện tại liên kết với các bản ghi trong Table:\n" + "- PHANCONG\n\nBạn có muốn xoá tất cả các bản ghi liên kết với bảng hiện tại không?", "Cảnh báo xoá", MessageBoxButtons.OKCancel)) { if (!GUI.Delete.PHANCONG.DeleteAllRecord_HaveTableX(MyStruct.PHANCONG.enumStruct.MADA, da.MADA.ToString())) { messageError += "\n\n- PHANCONG"; } if (!GUI.Delete.DUAN.DeleteRecord_Primary(da.MADA)) { messageError += "\n\n- DUAN"; } // thông báo lỗi if (!string.IsNullOrEmpty(messageError)) { MessageBox.Show("Không thể sửa hoặc xoá bản ghi trong table:" + messageError); } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- PHANCONG\n- DUAN"); } } } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- DUAN"); } break; case MyStruct.MyTableName.LUONG: MyStruct.LUONG lg = _Value as MyStruct.LUONG; if (!GUI.Delete.LUONG.DeleteRecord_Primary(lg.BACLUONG)) { if (DialogResult.OK == MessageBox.Show( "Không thể xoá bản ghi!\nBản ghi hiện tại liên kết với các bản ghi trong Table:\n" + "- NHANVIEN\n\nBạn có muốn sửa tất cả các bản ghi liên kết với bảng hiện tại không?", "Cảnh báo sửa", MessageBoxButtons.OKCancel)) { if (!GUI.Update.NHANVIEN.UpdateAllRecord_HaveTableX( MyStruct.NHANVIEN.enumStruct.BACLUONG, "null")) { messageError += "\n\n- NHANVIEN"; } if (!GUI.Delete.LUONG.DeleteRecord_Primary(lg.BACLUONG)) { messageError += "\n\n- LUONG"; } // thông báo lỗi if (!string.IsNullOrEmpty(messageError)) { MessageBox.Show("Không thể sửa hoặc xoá bản ghi trong table:" + messageError); } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- NHANVIEN\n- LUONG"); } } } break; case MyStruct.MyTableName.NHANVIEN: MyStruct.NHANVIEN nv = _Value as MyStruct.NHANVIEN; if (!GUI.Delete.NHANVIEN.DeleteRecord_Primary(nv.MANV)) { if (DialogResult.OK == MessageBox.Show( "Không thể xoá bản ghi!\nBản ghi hiện tại liên kết với các bản ghi trong Table:\n" + "- PHANCONG\n\nBạn có muốn xoá tất cả các bản ghi liên kết với bảng hiện tại không?", "Cảnh báo xoá", MessageBoxButtons.OKCancel)) { if (!GUI.Delete.PHANCONG.DeleteAllRecord_HaveTableX(MyStruct.PHANCONG.enumStruct.MANV, nv.MANV.ToString())) { messageError += "\n\n- PHANCONG"; } if (!GUI.Delete.NHANVIEN.DeleteRecord_Primary(nv.MANV)) { messageError += "\n\n- NHANVIEN"; } // thông báo lỗi if (!string.IsNullOrEmpty(messageError)) { MessageBox.Show("Không thể xoá bản ghi trong table:" + messageError); } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- PHANCONG\n- NHANVIEN"); } } } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- NHANVIEN"); } break; case MyStruct.MyTableName.PHANCONG: MyStruct.PHANCONG pc = _Value as MyStruct.PHANCONG; if (!GUI.Delete.PHANCONG.DeleteRecord_Primary(pc.MANV, pc.MADA)) { #region để dành nâng cấp nếu thay đổi database và có table liên kết đến bảng PHANCONG /* * //if (DialogResult.OK == * // MessageBox.Show( * // "Không thể xoá bản ghi!\nBản ghi hiện tại liên kết với các bản ghi trong Table:\n" * // + "- ?? :D ??\n\nBạn có muốn xoá tất cả các bản ghi liên kết với bảng hiện tại không?", * // "Cảnh báo xoá", MessageBoxButtons.OKCancel)) * //{ * // if (!GUI.Delete.PHANCONG.DeleteAllRecord_HaveTableX(MyStruct.PHANCONG.enumStruct.MADA, * // pc.MADA.ToString())) * // { * // messageError += "\n\n- PHANCONG"; * // } * * // if (!GUI.Delete.DUAN.DeleteRecord_Primary(pc.MADA)) * // { * // messageError += "\n\n- DUAN"; * // } * * // // thông báo lỗi * // if (!string.IsNullOrEmpty(messageError)) * // { * // MessageBox.Show("Không thể xoá bản ghi trong table:" + messageError); * // } * // else * // { * // MessageBox.Show("Xoá bản ghi thành công, table:\n\n- PHANCONG\n- DUAN"); * // } * //} */ #endregion MessageBox.Show("Không thể xoá bản ghi!"); } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- PHANCONG"); } break; case MyStruct.MyTableName.PHONGBAN: MyStruct.PHONGBAN pb = _Value as MyStruct.PHONGBAN; if (!GUI.Delete.PHONGBAN.DeleteRecord_Primary(pb.MAPB)) { if (DialogResult.OK == MessageBox.Show( "Không thể xoá bản ghi!\nBản ghi hiện tại liên kết với các bản ghi trong Table:\n" + "- DUAN\n-NHANVIEN\n\nBạn có muốn sửa tất cả các bản ghi liên kết với bảng hiện tại không?", "Cảnh báo sửa", MessageBoxButtons.OKCancel)) { if (!GUI.Update.NHANVIEN.UpdateAllRecord_HaveTableX(MyStruct.NHANVIEN.enumStruct.MAPB, "null")) { messageError += "\n\n- NHANVIEN"; } if (!GUI.Update.DUAN.UpdateAllRecord_HaveTable(MyStruct.DUAN.enumStruct.MAPB, "null")) { messageError += "\n\n- DUAN"; } if (!GUI.Delete.PHONGBAN.DeleteRecord_Primary(pb.MAPB)) { messageError += "\n\n- PHONGBAN"; } // thông báo lỗi if (!string.IsNullOrEmpty(messageError)) { MessageBox.Show("Không thể xoá bản ghi trong table:" + messageError); } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- NHANVIEN\n- DUAN\n- PHONGBAN"); } } } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- PHONGBAN"); } break; case MyStruct.MyTableName.TAIKHOAN: MyStruct.TAIKHOAN tk = _Value as MyStruct.TAIKHOAN; if (!GUI.Delete.TAIKHOAN.DeleteRecord_Primary(tk.ACCOUNT)) { if (DialogResult.OK == MessageBox.Show( "Không thể xoá bản ghi!\nBản ghi hiện tại liên kết với các bản ghi trong Table:\n" + "- PHANCONG\n\nBạn có muốn xoá tất cả các bản ghi liên kết với bảng hiện tại không?", "Cảnh báo xoá", MessageBoxButtons.OKCancel)) { if (!GUI.Update.NHANVIEN.UpdateAllRecord_HaveTableX(MyStruct.NHANVIEN.enumStruct.ACCOUNT, "null")) { messageError += "\n\n- NHANVIEN"; } if (!GUI.Delete.TAIKHOAN.DeleteRecord_Primary(tk.ACCOUNT)) { messageError += "\n\n- TAIKHOAN"; } // thông báo lỗi if (!string.IsNullOrEmpty(messageError)) { MessageBox.Show("Không thể xoá bản ghi trong table:" + messageError); } else { MessageBox.Show("Xoá bản ghi thành công, table:\n\n- NHANVIEN\n- TAIKHOAN"); } } } else { MessageBox.Show("Xoá (sửa) bản ghi thành công, table:\n\n- TAIKHOAN"); } break; default: break; } }
private void button5_LuuThayDoi_Click(object sender, EventArgs e) { try { bool bSuccess = false; switch (eNameTable) { case MyStruct.MyTableName.DUAN: GUI.MyStruct.DUAN da = new MyStruct.DUAN(); // gán giá trị từ textbox vào biến da = AddData_FromListTextbox_ToObject(ref ltextbox, MyStruct.MyTableName.DUAN) as MyStruct.DUAN; bSuccess = GUI.Update.DUAN.UpdateOneRecord(da); break; case MyStruct.MyTableName.LUONG: MyStruct.LUONG lg = new MyStruct.LUONG(); // gán giá trị từ textbox vào biến lg = AddData_FromListTextbox_ToObject(ref ltextbox, MyStruct.MyTableName.LUONG) as MyStruct.LUONG; bSuccess = GUI.Update.LUONG.UpdateOneRecord(lg); break; case MyStruct.MyTableName.NHANVIEN: MyStruct.NHANVIEN nv = new MyStruct.NHANVIEN(); // gán giá trị từ textbox vào biến nv = AddData_FromListTextbox_ToObject(ref ltextbox, MyStruct.MyTableName.NHANVIEN) as MyStruct.NHANVIEN; bSuccess = GUI.Update.NHANVIEN.UpdateOneRecord(nv); break; case MyStruct.MyTableName.PHANCONG: MyStruct.PHANCONG pc = new MyStruct.PHANCONG(); // gán giá trị từ textbox vào biến pc = AddData_FromListTextbox_ToObject(ref ltextbox, MyStruct.MyTableName.PHANCONG) as MyStruct.PHANCONG; bSuccess = GUI.Update.PHANCONG.UpdateOneRecord(pc); break; case MyStruct.MyTableName.PHONGBAN: MyStruct.PHONGBAN pb = new MyStruct.PHONGBAN(); // gán giá trị từ textbox vào biến pb = AddData_FromListTextbox_ToObject(ref ltextbox, MyStruct.MyTableName.PHONGBAN) as MyStruct.PHONGBAN; bSuccess = GUI.Update.PHONGBAN.UpdateOneRecord(pb); break; case MyStruct.MyTableName.TAIKHOAN: MyStruct.TAIKHOAN tk = new MyStruct.TAIKHOAN(); // gán giá trị từ textbox vào biến tk = AddData_FromListTextbox_ToObject(ref ltextbox, MyStruct.MyTableName.TAIKHOAN) as MyStruct.TAIKHOAN; bSuccess = GUI.Update.TAIKHOAN.UpdateOneRecord(tk); break; default: break; } if (bSuccess) { MessageBox.Show("Update thành công !"); } } catch { MessageBox.Show("Không thể lưu bản ghi\n\nMột thuộc tính bị trống, xin hãy kiểm tra lại!"); } this.button7_HuyBo_Click(sender, e); return; }
private void button3_Them_Click(object sender, EventArgs e) { if (!bClickButtonThemYet) { // Đổi trạng thái chặn cái nút bấm khác + thay đổi thông tin button3_Them.Text = "Lưu mới"; bClickButtonThemYet = true; button4_ThayDoi.Enabled = button5_LuuThayDoi.Enabled = button6_Xoa.Enabled = false; button7_HuyBo.Enabled = true; bIgnoreRowEnter = true; // làm rỗng input để điền thông tin mới vào nè this.InitInput_Textbox(ref ltextbox); StateAll_ListTextBox(ref ltextbox, true); StateAll_ListDateTimePicker(ref ldatetimepicker, true); // Chỉnh những dòng nào ko được phép sửa (VD: Khoá chính) + tự động cấp mã cho bản ghi mới switch (eNameTable) { case MyStruct.MyTableName.DUAN: ltextbox[0].Text = GUI.Insert.DUAN.GetNextIndex().ToString(); ltextbox[0].Enabled = false; break; case MyStruct.MyTableName.LUONG: ltextbox[0].Text = GUI.Insert.LUONG.GetNextIndex().ToString(); ltextbox[0].Enabled = false; break; case MyStruct.MyTableName.NHANVIEN: ltextbox[0].Text = GUI.Insert.NHANVIEN.GetNextIndex().ToString(); ltextbox[0].Enabled = false; break; case MyStruct.MyTableName.PHONGBAN: ltextbox[0].Text = GUI.Insert.PHONGBAN.GetNextIndex().ToString(); ltextbox[0].Enabled = false; break; case MyStruct.MyTableName.TAIKHOAN: case MyStruct.MyTableName.PHANCONG: default: break; } } else { // Đổi trạng thái chặn cái nút bấm khác + thay đổi thông tin bClickButtonThemYet = false; button3_Them.Text = "Thêm"; EditMode(true); bIgnoreRowEnter = false; // cái này để lưu bản ghi đã nhập vào trong Database nè bool bSuccess = false; switch (eNameTable) { case MyStruct.MyTableName.DUAN: MyStruct.DUAN da = AddData_FromListTextbox_ToObject(ref ltextbox, MyStruct.MyTableName.DUAN) as MyStruct.DUAN; bSuccess = GUI.Insert.DUAN.CreateNewRecord(da); break; case MyStruct.MyTableName.LUONG: MyStruct.LUONG lg = AddData_FromListTextbox_ToObject (ref ltextbox, MyStruct.MyTableName.LUONG) as MyStruct.LUONG; bSuccess = GUI.Insert.LUONG.CreateNewRecord(lg); break; case MyStruct.MyTableName.NHANVIEN: MyStruct.NHANVIEN nv = AddData_FromListTextbox_ToObject (ref ltextbox, MyStruct.MyTableName.NHANVIEN) as MyStruct.NHANVIEN; bSuccess = GUI.Insert.NHANVIEN.CreateNewRecord(nv); break; case MyStruct.MyTableName.PHANCONG: MyStruct.PHANCONG pc = AddData_FromListTextbox_ToObject (ref ltextbox, MyStruct.MyTableName.PHANCONG) as MyStruct.PHANCONG; bSuccess = GUI.Insert.PHANCONG.CreateNewRecord(pc); break; case MyStruct.MyTableName.PHONGBAN: MyStruct.PHONGBAN pb = AddData_FromListTextbox_ToObject (ref ltextbox, MyStruct.MyTableName.PHONGBAN) as MyStruct.PHONGBAN; bSuccess = GUI.Insert.PHONGBAN.CreateNewRecord(pb); break; case MyStruct.MyTableName.TAIKHOAN: MyStruct.TAIKHOAN tk = AddData_FromListTextbox_ToObject (ref ltextbox, MyStruct.MyTableName.TAIKHOAN) as MyStruct.TAIKHOAN; bSuccess = GUI.Insert.TAIKHOAN.CreateNewRecord(tk); break; default: break; } /// cái này chỉ là thông báo kết quả if (bSuccess) { MessageBox.Show("Tạo bản ghi mới thành công!"); } else { MessageBox.Show("Không thể tạo bản ghi!\n\nMã lỗi 100x000012"); } } }