private void Guardar() { if (Basicas.parametros().SolicitarMesonero.GetValueOrDefault(false) == true) { FrmSolicitarMesonero f = new FrmSolicitarMesonero(); f.ShowDialog(); if (f.DialogResult != System.Windows.Forms.DialogResult.OK) { return; } mesaAbierta.IdMesonero = f.mesonero.IdMesonero; mesaAbierta.Mesonero = f.mesonero.Nombre; } try { esNuevo = false; this.Validar(); if (mesaAbierta.Numero == null) { mesaAbierta.Numero = FactoryContadores.GetMaxDiario("CuentaAbierta"); } Basicas.ImprimirComanda(mesaAbierta, mesaAbiertaPlatos); if (mesaAbierta.IdMesaAbierta == null) { esNuevo = true; mesaAbierta.IdMesaAbierta = FactoryContadores.GetMax("IdMesaAbierta"); } foreach (MesasAbiertasPlato p in mesaAbiertaPlatos) { if (p.IdMesaAbiertaPlato == null) { p.IdMesaAbiertaPlato = FactoryContadores.GetMax("IdMesaAbiertaPlato"); p.IdMesaAbierta = mesaAbierta.IdMesaAbierta; db.MesasAbiertasPlatos.AddObject(p); } } if (esNuevo) { db.MesasAbiertas.AddObject(mesaAbierta); } db.SaveChanges(); this.Close(); } catch (Exception x) { Basicas.ManejarError(x); } }