private void buttonAceptar_Click(object sender, EventArgs e) { using (var context = new VentasDBContext(Common.TenantData.tenant.ConnectionString)) { context.Clientes.Include(x => x.SituacionIVA).Load(); context.TiposComprobantesVenta.Load(); tempComprobanteEncabezadoPie comprobante = new tempComprobanteEncabezadoPie(); Cliente cliente = new Cliente(); cliente = context.Clientes.Where(x => x.Id == ((Cliente)comboBoxClientes.SelectedItem).Id).SingleOrDefault(); TipoComprobanteVenta tipo = new TipoComprobanteVenta(); tipo = context.TiposComprobantesVenta.Where(x => x.Id == ((TipoComprobanteVenta)comboBoxComprobante.SelectedItem).Id).SingleOrDefault(); comprobante.FechaEmision = dateTimePicker1.Value.Date; context.tempComprobantesEncabezadoPie.Add(comprobante); context.Clientes.Attach(cliente); context.TiposComprobantesVenta.Attach(tipo); Tenant empresa = new Tenant(); using (var context2 = new TenantsDBContext()) { empresa = context2.Tenants.Find(Common.TenantData.tenant.Id); } comprobante.Cliente = cliente; comprobante.TiposComprobantesVenta = tipo; comprobante.Tenant = empresa; ComprobanteCargando = comprobante; try { context.SaveChanges(); } catch (Exception ex) { throw ex; } } panel1.Enabled = false; }
private void buttonGuardar_Click(object sender, EventArgs e) { using (var context = new VentasDBContext(Common.TenantData.tenant.ConnectionString)) { ComprobanteEncabezadoPie comprobante = new ComprobanteEncabezadoPie(); Cliente cliente = new Cliente(); cliente = context.Clientes.Where(x => x.Id == ((Cliente)comboBoxClientes.SelectedItem).Id).SingleOrDefault(); TipoComprobanteVenta tipo = new TipoComprobanteVenta(); tipo = context.TiposComprobantesVenta.Where(x => x.Id == ((TipoComprobanteVenta)comboBoxComprobante.SelectedItem).Id).SingleOrDefault(); comprobante.FechaEmision = dateTimePicker1.Value.Date; comprobante.Neto21 = Neto21; comprobante.IVA21 = IVA21; comprobante.Neto27 = Neto27; comprobante.IVA27 = IVA27; comprobante.Exento = Exento; comprobante.Total = Total; comprobante.NumeroComprobante = NumeroComprobanteCargando; context.ComprobantesEncabezadoPie.Add(comprobante); context.Clientes.Attach(cliente); context.TiposComprobantesVenta.Attach(tipo); Tenant empresa = new Tenant(); using (var context2 = new TenantsDBContext()) { empresa = context2.Tenants.Find(Common.TenantData.tenant.Id); } comprobante.Cliente = cliente; comprobante.TiposComprobantesVenta = tipo; comprobante.Tenant = empresa; try { context.SaveChanges(); } catch (Exception ex) { throw ex; } } using (var context = new VentasDBContext(Common.TenantData.tenant.ConnectionString)) { //renglones context.Articulos.Include(x => x.TasaIVA).Load(); foreach (DataGridViewRow row in dataGridView1.Rows) { ComprobanteRenglon renglon = new ComprobanteRenglon(); tempComprobanteRenglon r = (tempComprobanteRenglon)row.DataBoundItem; ComprobanteEncabezadoPie compPadre = new ComprobanteEncabezadoPie(); compPadre = context.ComprobantesEncabezadoPie.Where(x => x.NumeroComprobante == NumeroComprobanteCargando).SingleOrDefault(); Articulo articulo = new Articulo(); articulo = context.Articulos.Where(x => x.Id == r.Articulo.Id).SingleOrDefault(); renglon.Cantidad = r.Cantidad; renglon.Importe = r.Importe; context.ComprobantesRenglones.Add(renglon); context.Articulos.Attach(articulo); renglon.Articulo = articulo; context.ComprobantesEncabezadoPie.Attach(compPadre); renglon.ComprobanteEncabezadoPie = compPadre; try { context.SaveChanges(); } catch (Exception ex) { throw ex; } } } }