private void CargarMenu() { try { treeListMenu.DataSource = null; chkCheckearTodo.Checked = false; seg_Menu_x_Empresa_bus bus = new seg_Menu_x_Empresa_bus(); string msg = ""; Int32 idEmpresa = Convert.ToInt32(searchLookUpEditEmpresa.EditValue); if (idEmpresa == 0) { return; } this.Cursor = Cursors.WaitCursor; List <seg_Menu_x_Empresa_info> listaMenu_x_Empresa = bus.Get_List_Menu_x_Empresa(idEmpresa, ref msg); if (msg.Equals("")) { listaMenu_x_Empresa.AddRange(bus.Get_No_List_DescripcionMenu_x_Empresa(idEmpresa, ref msg)); if (msg.Equals("")) { listaBinding.Clear(); foreach (seg_Menu_x_Empresa_info item in listaMenu_x_Empresa) { listaBinding.Add(item); } treeListMenu.DataSource = listaBinding; treeListMenu.ExpandAll(); CheckearMenu(treeListMenu.Nodes); ArreglarCheckeo(treeListMenu.Nodes); } else { MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
void UCGe_Menu_event_btnGuardar_Click(object sender, EventArgs e) { try { this.Cursor = Cursors.WaitCursor; if (treeListMenu.Nodes.Count < 1) { MessageBox.Show("No hay datos para grabar, primero filtre el menu", "Advertencia!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } EstablecerCheckeo(treeListMenu.Nodes); var listaModificada = (from c in listaBinding where c.SeModificoValor == true || c.Checkeado != c.Existe select c); if (listaModificada.Count() > 0) { seg_Menu_x_Empresa_bus bus = new seg_Menu_x_Empresa_bus(); string msg = ""; //bool existeRelacion = bus.ExisteRelacion(listaModificada.ToList(), ref msg); //if (existeRelacion) //{ // if (!msg.Equals("")) // { // MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); // } // else // { // string mensajeAdvertencia = "No se pueden guardar los cambios debido a que se quiere eliminar un menu que tiene una relacion en la opcion \"Menu por Empresa por Usuario\", Primero elimine el menu en esta opcion y luego vuelva a intentarlo"; // MessageBox.Show(mensajeAdvertencia, "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); // } // return; //} bool grabo = bus.GrabarDB(listaModificada.ToList(), ref msg); if (grabo) { foreach (var item in listaModificada.ToList()) { item.SeModificoValor = false; } CargarMenu(); } else { MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("No hay cambios por modificar", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { this.Cursor = Cursors.Default; } }