//deletes the selected cell private void DeleteButton_Click(object sender, EventArgs e) { if (isValid())//checks there is a value selected { //confirmation window DialogResult result = MessageBox.Show("Delete " + supp.SupName + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { try { if (!SuppliersDB.DeleteSupplier(supp))//failed { MessageBox.Show("Another user has updated or deleted that supplier.", "Database Error"); clearContent(); } else//success { MessageBox.Show("Delete Successful."); clearContent(); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } else { MessageBox.Show("Data fields are empty.", "Input Error"); } }
//delete supplier button private void btnSupDelete_Click(object sender, EventArgs e) { bool res = SuppliersDB.DeleteSupplier((int)LBSuppliers.SelectedValue); KeyValuePair <string, int> v = (KeyValuePair <string, int>)LBSuppliers.SelectedItem; SuppliersDB.Suppliers.Remove(v); }
private void btnDelete_Click(object sender, EventArgs e) { string tableName = cboTableNames.SelectedValue.ToString(); if (tableName == "Products") { DialogResult result = MessageBox.Show("Delete " + currentProd.ProdName + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { try { if (!ProductsDB.DeleteProduct(currentProd)) { MessageBox.Show("Another user has updated or deleted " + "that product.", "Database Error"); currentProd = ProductsDB.GetProductById(currentProd.ProductId); if (currentProd != null) { this.DisplayProductData(); } } else { this.DisplayProductData(); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } else if (tableName == "Suppliers") { DialogResult result = MessageBox.Show("Delete " + currentSupplier.SupName + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { try { if (!SuppliersDB.DeleteSupplier(currentSupplier)) { MessageBox.Show("Another user has updated or deleted " + "that supplier.", "Database Error"); currentSupplier = SuppliersDB.GetSupplierById(currentSupplier.SupplierId); if (currentSupplier != null) { this.DisplaySupplierData(); } } else { this.DisplaySupplierData(); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } else if (tableName == "Products_Suppliers") { DialogResult result = MessageBox.Show("Delete Product Supplier " + currentProductSupplier.ProductSupplierId + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { try { if (!Products_SuppliersDB.DeleteProductSupplier(currentProductSupplier)) { MessageBox.Show("Another user has updated or deleted " + "that product_supplier.", "Database Error"); currentProductSupplier = Products_SuppliersDB.GetProductSupplierById(currentProductSupplier.ProductSupplierId); if (currentProductSupplier != null) { this.DisplayCurrentProductSupplierData(); } this.DisplayProductSupplierData(); } else { this.DisplayCurrentProductSupplierData(); } this.DisplayProductSupplierData(); } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } else if (tableName == "Packages") { DialogResult result = MessageBox.Show("Delete Packages " + currentPackage.PkgName + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { try { if (!PackagesDB.DeletePackage(currentPackage)) { MessageBox.Show("Another user has updated or deleted " + "that package.", "Database Error"); currentPackage = PackagesDB.GetPackageById(currentPackage.PackageId); if (currentPackage != null) { //this.DisplayCurrentProductSupplierData(); this.DisplayProductSupplierData(); } } else { //this.DisplayCurrentProductSupplierData(); this.DisplayPackages(); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } }
/// <summary> /// On clicking delete respond based on tab selected /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnDelete_Click(object sender, EventArgs e) { switch (tbMain.SelectedTab.Name) { case "tabPackages": //take the currently selected package Package package = packages[dgPackages.CurrentRow.Index]; DialogResult result = MessageBox.Show("Delete " + package.Name + "? \nThis will delete the entire package and its components", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) //if user confirms delete { try { if (!PackagesDB.DeletePackage(package)) { //Check for optimistic concurrency MessageBox.Show("Another user has updated or deleted " + "that package.", "Database Error"); } else { //Delete successful, refresh the tables dgPackageProductSuppliers.ClearSelection(); this.displayAll(0, 0); } } catch (SqlException ex) { switch (ex.Errors[0].Number) { //if foriegn key error from db case 547: MessageBox.Show("You do not have the priviledge to delete this package", "Priviledge Error"); break; } } catch (Exception ex) { //any other errors MessageBox.Show(ex.Message, ex.GetType().ToString()); } } break; case "tabProducts": int rowIndexProd = dgProducts.CurrentRow.Index; Products product = products[rowIndexProd]; DialogResult resultProduct = MessageBox.Show("Delete " + product.ProdName + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resultProduct == DialogResult.Yes) { try { if (!ProductDB.DeleteProduct(product)) { MessageBox.Show("Another user has updated or deleted " + "that product.", "Database Error"); } else { dgProd.ClearSelection(); } rowIndexProd = rowIndexProd - 1; //leave selection on the last product this.displayAll(0, rowIndexProd); } catch (SqlException ex) { switch (ex.Errors[0].Number) { //if foreign key error from datbase case 547: MessageBox.Show("Please Remove " + product.ProdName + " from all packages before deleting ", "Link Violation"); break; } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } break; case "tabSuppliers": Suppliers supplier = suppliers[dgSuppliers.CurrentRow.Index]; DialogResult resultSupplier = MessageBox.Show("Delete " + supplier.SupName + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resultSupplier == DialogResult.Yes) { try { if (!SuppliersDB.DeleteSupplier(supplier)) { MessageBox.Show("Another user has updated or deleted " + "that supplier.", "Database Error"); } else { this.displayAll(); } } catch (SqlException ex) { switch (ex.Errors[0].Number) { // if foriegn key error from database case 547: MessageBox.Show("You cannot delete this supplier as it is linked to a package", "Link Violation"); break; } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } break; case "tabPackageProductSupplier": int rowIndex = dgPackageProductSuppliers.CurrentRow.Index; Package packageProd = packages[rowIndex]; DialogResult resultProd = MessageBox.Show("Delete " + packageProd.Name + "? \nThis will delete the entire package and its components", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resultProd == DialogResult.Yes) { try { if (!PackagesDB.DeletePackage(packageProd)) { MessageBox.Show("Another user has updated or deleted " + "that package.", "Database Error"); } else { dgPackageProductSuppliers.ClearSelection(); rowIndex -= 1; this.displayAll(rowIndex, 0); } } catch (SqlException ex) { switch (ex.Errors[0].Number) { //if foriegn key error from dataabase case 547: MessageBox.Show("You do not have the priviledge to delete this package", "Priviledge Error"); break; } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } break; } }
// delete item button based on which radio button and item is selected private void btnDelete_Click(object sender, EventArgs e) { if (radPackages.Checked == false && radProducts.Checked == false && radSuppliers.Checked == false) { MessageBox.Show("Please select a database to delete from.", "Select a Database"); } else if (radPackages.Checked) { string i = lstView.SelectedItem.ToString(); string[] s = i.Split('|'); int packageId = Int32.Parse(s[0].Trim()); string nameSelected = s[1].Trim(); currentPackage = PackagesDB.GetPackageById(packageId); DialogResult result = MessageBox.Show("Delete Packages " + nameSelected + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { try { if (!PackagesDB.DeletePackage(currentPackage)) { MessageBox.Show("Another user has updated or deleted " + "that package.", "Database Error"); currentPackage = PackagesDB.GetPackageById(packageId); } else { this.DisplayPackages(); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } else if (radProducts.Checked) { string i = lstView.SelectedItem.ToString(); string[] s = i.Split('|'); int productId = Int32.Parse(s[0].Trim()); string nameSelected = s[1].Trim(); currentProduct = ProductsDB.GetProductById(productId); DialogResult result = MessageBox.Show("Delete Product " + nameSelected + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { try { if (!ProductsDB.DeleteProduct(currentProduct)) { MessageBox.Show("Another user has updated or deleted " + "that package.", "Database Error"); currentProduct = ProductsDB.GetProductById(productId); } else { this.DisplayProducts(); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } else if (radSuppliers.Checked) { string i = lstView.SelectedItem.ToString(); string[] s = i.Split('|'); int supplierId = Int32.Parse(s[0].Trim()); string nameSelected = s[1].Trim(); currentSupplier = SuppliersDB.GetSupplierById(supplierId); DialogResult result = MessageBox.Show("Delete Supplier " + nameSelected + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { try { if (!SuppliersDB.DeleteSupplier(currentSupplier)) { MessageBox.Show("Another user has updated or deleted " + "that package.", "Database Error"); currentSupplier = SuppliersDB.GetSupplierById(supplierId); } else { this.DisplaySuppliers(); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } }