private void AddInitiativeToTableButton_Click(object sender, EventArgs e) { Random rnd = new Random(); var selectedInitiativeQuery = from ini in mainForm.dbo.INITIATIVE where ini.NAME == InitiativeComboBox.Text select ini; if (selectedInitiativeQuery.Count() == 0) { selectedInitiative = new INITIATIVE(); selectedInitiative.NAME = InitiativeComboBox.Text; selectedInitiative.INITIATIVEID = rnd.Next(); var selectedBusinessObjectiveQuery = from bus in mainForm.dbo.BUSINESSOBJECTIVE where bus.NAME == BusinessObjectiveComboBox.Text select bus; if (selectedBusinessObjectiveQuery.Count() == 0) { selectedBusinessObjective = new BUSINESSOBJECTIVE(); selectedBusinessObjective.NAME = BusinessObjectiveComboBox.Text; selectedBusinessObjective.BUSINESSOBJECTIVEID = rnd.Next(); var selectedCategoryQuery = from cat in mainForm.dbo.CATEGORY where cat.NAME == CategoryComboBox.Text select cat; if (selectedCategoryQuery.Count() == 0) { selectedCategory = new CATEGORY(); selectedCategory.NAME = CategoryComboBox.Text; selectedCategory.CATEGORYID = rnd.Next(); selectedCategory.BUSINESSOBJECTIVE.Add(selectedBusinessObjective); mainForm.dbo.AddToCATEGORY(selectedCategory); } selectedBusinessObjective.CATEGORY = selectedCategory; selectedBusinessObjective.INITIATIVE.Add(selectedInitiative); mainForm.dbo.AddToBUSINESSOBJECTIVE(selectedBusinessObjective); } selectedInitiative.BUSINESSOBJECTIVE = selectedBusinessObjective; mainForm.dbo.AddToINITIATIVE(selectedInitiative); mainForm.dbo.SaveChanges(); } DataGridViewRow row = (DataGridViewRow)mainForm.BOMTable.Rows[0].Clone(); row.Cells[0].Value = selectedCategory.NAME; row.Cells[1].Value = selectedBusinessObjective.NAME; row.Cells[2].Value = selectedInitiative.NAME; mainForm.BOMTable.Rows.Add(row); this.Close(); }
private void BusinessObjectiveComboBox_SelectedIndexChanged(object sender, EventArgs e) { try { var selectedBOQuery = from bus in mainForm.dbo.BUSINESSOBJECTIVE where bus.NAME == BusinessObjectiveComboBox.Text select bus; selectedBusinessObjective = selectedBOQuery.Single(); } catch { } InitiativeComboBox.Items.Clear(); foreach (INITIATIVE initiative in selectedBusinessObjective.INITIATIVE) { InitiativeComboBox.Items.Add(initiative.NAME); } InitiativeComboBox.Text = ""; }
private void initiativeAddButton_Click(object sender, EventArgs e) { string catName; string busName; string iniName = initiativeNames.Text.Trim(); INITIATIVE initiative; if (!db.GetInitiative(iniName, out initiative)) { initiative = new INITIATIVE(); initiative.NAME = iniName; BUSINESSOBJECTIVE objective; busName = objectiveNames.Text.Trim(); if (!db.GetObjective(busName, out objective)) { objective = new BUSINESSOBJECTIVE(); objective.NAME = objectiveNames.Text.Trim(); CATEGORY category; catName = categoryNames.Text.Trim(); if (!db.GetCategory(catName, out category)) { category = new CATEGORY(); category.NAME = catName; if (!db.AddCategory(category)) { MessageBox.Show("Failed to add Category to Database", "Error"); return; } } objective.CATEGORY = category; if (!db.AddObjective(objective)) { MessageBox.Show("Failed to add Objective to Database", "Error"); return; } } initiative.BUSINESSOBJECTIVE = objective; if (!db.AddInitiative(initiative)) { MessageBox.Show("Failed to add Initiative to Database", "Error"); return; } } BOM bom = new BOM(); bom.INITIATIVE = initiative; if (!db.AddBOM(bom, client)) { MessageBox.Show("Failed to add Initiative to BOM", "Error"); return; } if (!db.SaveChanges()) { MessageBox.Show("Failed to save changes to database", "Error"); return; } else { //Successfully added to database, update GUI catName = bom.INITIATIVE.BUSINESSOBJECTIVE.CATEGORY.NAME.TrimEnd(); Category category = categories.Find(delegate(Category cat) { return(cat.Name == catName); }); if (category == null) { category = new Category(this, catName); categories.Add(category); categoryCount++; category.Click += new EventHandler(category_Click); } busName = bom.INITIATIVE.BUSINESSOBJECTIVE.NAME.TrimEnd(); BusinessObjective objective = category.Objectives.Find(delegate(BusinessObjective bus) { return(bus.Name == busName); }); if (objective == null) { objective = category.AddObjective(busName); } iniName = bom.INITIATIVE.NAME.TrimEnd(); Initiative initiativeObj = objective.Initiatives.Find(delegate(Initiative ini) { return(ini.Name == iniName); }); if (initiativeObj == null) { initiativeObj = objective.AddInitiative(iniName); } else { MessageBox.Show("Initiative already exists in BOM", "Error"); } } }
private void AddInitiativeToTableButton_Click(object sender, EventArgs e) { List <int> idList; var selectedInitiativeQuery = from ini in mainForm.dbo.INITIATIVE where ini.NAME == InitiativeComboBox.Text select ini; if (selectedInitiativeQuery.Count() == 0) { selectedInitiative = new INITIATIVE(); selectedInitiative.NAME = InitiativeComboBox.Text; idList = (from ini in mainForm.dbo.INITIATIVE select ini.INITIATIVEID).ToList(); selectedInitiative.INITIATIVEID = mainForm.GetUniqueID(idList); var selectedBusinessObjectiveQuery = from bus in mainForm.dbo.BUSINESSOBJECTIVE where bus.NAME == BusinessObjectiveComboBox.Text select bus; if (selectedBusinessObjectiveQuery.Count() == 0) { selectedBusinessObjective = new BUSINESSOBJECTIVE(); selectedBusinessObjective.NAME = BusinessObjectiveComboBox.Text; idList = (from bus in mainForm.dbo.BUSINESSOBJECTIVE select bus.BUSINESSOBJECTIVEID).ToList(); selectedBusinessObjective.BUSINESSOBJECTIVEID = mainForm.GetUniqueID(idList); var selectedCategoryQuery = from cat in mainForm.dbo.CATEGORY where cat.NAME == CategoryComboBox.Text select cat; if (selectedCategoryQuery.Count() == 0) { selectedCategory = new CATEGORY(); selectedCategory.NAME = CategoryComboBox.Text; idList = (from cat in mainForm.dbo.CATEGORY select cat.CATEGORYID).ToList(); selectedCategory.CATEGORYID = mainForm.GetUniqueID(idList); selectedCategory.BUSINESSOBJECTIVE.Add(selectedBusinessObjective); mainForm.dbo.AddToCATEGORY(selectedCategory); } selectedBusinessObjective.CATEGORY = selectedCategory; selectedBusinessObjective.INITIATIVE.Add(selectedInitiative); mainForm.dbo.AddToBUSINESSOBJECTIVE(selectedBusinessObjective); } selectedInitiative.BUSINESSOBJECTIVE = selectedBusinessObjective; mainForm.dbo.AddToINITIATIVE(selectedInitiative); } BOM newBOM = new BOM(); idList = (from bom in mainForm.dbo.BOM select bom.BOMID).ToList(); newBOM.BOMID = mainForm.GetUniqueID(idList); newBOM.CLIENT = mainForm.currentClient; newBOM.INITIATIVE = selectedInitiative; selectedInitiative.BOM.Add(newBOM); mainForm.dbo.SaveChanges(); DataGridViewRow row = (DataGridViewRow)mainForm.BOMTable.Rows[0].Clone(); row.Cells[0].Value = selectedCategory.NAME; row.Cells[1].Value = selectedBusinessObjective.NAME; row.Cells[2].Value = selectedInitiative.NAME; mainForm.BOMTable.Rows.Add(row); this.Close(); }