/*Metodo que recupera los datos exixtentes de acuerdo al registro seleccionado*/ public JsonResult DatosProduccion(int produccion) { //La variable Productos es enviada desde la clase Editar en el index ListarEmpleados(); ListarProductos(); ListarProveedores(); ProduccionCLS pcls = new ProduccionCLS(); DetalleProduccionCLS dpcls = new DetalleProduccionCLS(); using (var db = new MyonexionEntities()) { Produccion Mprod = db.Produccion.Where(p => p.IdProduccion == produccion).First(); pcls.IdProducto = Mprod.IdProducto; pcls.Unidad = Mprod.Unidad; pcls.Turno = Mprod.Turno; pcls.EstadoFacturacion = Mprod.EstadoFacturacion; pcls.Proveedor = (int)Mprod.Proveedor; pcls.Despachado = (int)Mprod.Despachado; DetalleProduccion dprod = db.DetalleProduccion.Where(p => p.IdDetalleProduccion == produccion).First(); dpcls.Cantidad = dprod.Cantidad; dpcls.PrecioVenta = dprod.PrecioVenta; dpcls.FechaProduccion = dprod.FechaProduccion; } return(Json(pcls, JsonRequestBehavior.AllowGet)); }
public string ProducciondelDia(ProduccionCLS PCLS, DetalleProduccionCLS detprodCLS, int Titulo) { string respuesta = ""; try { if (!ModelState.IsValid) { var query = (from state in ModelState.Values from error in state.Errors select error.ErrorMessage).ToList(); respuesta += "<ul class='list-group'>"; foreach (var item in query) { respuesta += "<li class='list-group-item'>" + item + "</li>"; } respuesta += "</ul>"; /*------------*/ } else { using (var db = new MyonexionEntities()) { using (var transaccion = db.Database.BeginTransaction()) { try { /*Se trta de realizar la transaccion, si todo sale bien se ejecutara un commit*/ if (Titulo == -1) { /*Primera insercion*/ Produccion prod = new Produccion(); prod.IdProducto = PCLS.IdProducto; prod.Unidad = PCLS.Unidad; prod.Turno = PCLS.Turno; prod.EstadoFacturacion = PCLS.EstadoFacturacion; prod.Proveedor = PCLS.Proveedor; prod.Despachado = PCLS.Despachado; db.Produccion.Add(prod); int IdProd = prod.IdProduccion; /*Insercion de los datos de la segunda tabla*/ DetalleProduccion detprod = new DetalleProduccion(); detprod.IdProduccion = IdProd; detprod.Cantidad = detprodCLS.Cantidad; detprod.PrecioVenta = detprodCLS.PrecioVenta; detprod.FechaProduccion = detprodCLS.FechaProduccion; db.DetalleProduccion.Add(detprod); respuesta = db.SaveChanges().ToString(); transaccion.Commit(); } if (Titulo >= 0) { /*Update primera tabla*/ //MisProductos MP = db.MisProductos.Where(p => p.IdProducto == Titulo).First(); Produccion prod = db.Produccion.Where(p => p.IdProduccion == Titulo).First(); prod.IdProducto = PCLS.IdProducto; prod.Unidad = PCLS.Unidad; prod.Turno = PCLS.Turno; prod.EstadoFacturacion = PCLS.EstadoFacturacion; prod.Proveedor = PCLS.Proveedor; prod.Despachado = PCLS.Despachado; respuesta = db.SaveChanges().ToString(); int IdProd = prod.IdProduccion;//Temporal /*Update segunda tabla*/ DetalleProduccion detprod = db.DetalleProduccion.Where(p => p.IdDetalleProduccion == Titulo).First(); detprod.IdProduccion = IdProd; detprod.Cantidad = detprodCLS.Cantidad; detprod.PrecioVenta = detprodCLS.PrecioVenta; detprod.FechaProduccion = detprodCLS.FechaProduccion; respuesta = db.SaveChanges().ToString(); transaccion.Commit(); } } catch { transaccion.Rollback(); /*Si ocurre un error durante la transaccion * todo el proceso se anulara*/ } } } } } catch (Exception) { respuesta = ""; } return(respuesta); }