public DtoLib.Resultado Configuracion_SetBusquedaPredeterminada(DtoLibInventario.Configuracion.BusquedaPredeterminada.Editar.Ficha ficha) { var result = new DtoLib.Resultado(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { var ent = cnn.sistema_configuracion.FirstOrDefault(f => f.codigo == "GLOBAL03"); if (ent == null) { result.Mensaje = "[ ID ] CONFIGURACION NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } ent.usuario = ficha.Busqueda; cnn.SaveChanges(); } } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.Resultado Departamento_Editar(DtoLibInventario.Departamento.Editar ficha) { var result = new DtoLib.ResultadoAuto(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = new TransactionScope()) { var ent = cnn.empresa_departamentos.Find(ficha.auto); if (ent == null) { result.Mensaje = "[ ID ] ENTIDAD DEPARTAMENTOS NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } ent.codigo = ficha.codigo; ent.nombre = ficha.nombre; cnn.SaveChanges(); ts.Complete(); } } } catch (DbUpdateException ex) { var dbUpdateEx = ex as DbUpdateException; var sqlEx = dbUpdateEx.InnerException; if (sqlEx != null) { var exx = (MySql.Data.MySqlClient.MySqlException)sqlEx.InnerException; if (exx != null) { if (exx.Number == 1451) { result.Mensaje = "REGISTRO CONTIENE DATA RELACIONADA"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } if (exx.Number == 1062) { result.Mensaje = exx.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } } } result.Mensaje = ex.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.Resultado EmpaqueMedida_Editar(DtoLibInventario.EmpaqueMedida.Editar ficha) { var result = new DtoLib.ResultadoAuto(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = new TransactionScope()) { var ent = cnn.productos_medida.Find(ficha.auto); if (ent == null) { result.Mensaje = "[ ID ] ENTIDAD EMPAQUE/MEDIDA NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } ent.nombre = ficha.nombre; ent.decimales = ficha.decimales; cnn.SaveChanges(); ts.Complete(); } } } catch (DbUpdateException ex) { var dbUpdateEx = ex as DbUpdateException; var sqlEx = dbUpdateEx.InnerException; if (sqlEx != null) { var exx = (MySql.Data.MySqlClient.MySqlException)sqlEx.InnerException; if (exx != null) { if (exx.Number == 1451) { result.Mensaje = "REGISTRO CONTIENE DATA RELACIONADA"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } if (exx.Number == 1062) { result.Mensaje = exx.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } } } result.Mensaje = ex.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.Resultado Departamento_Eliminar(string auto) { var result = new DtoLib.Resultado(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { var ent = cnn.empresa_departamentos.Find(auto); if (ent == null) { result.Mensaje = "[ ID ] DEPARTAMENTO NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } ; cnn.empresa_departamentos.Remove(ent); cnn.SaveChanges(); } } catch (DbUpdateException ex) { var dbUpdateEx = ex as DbUpdateException; var sqlEx = dbUpdateEx.InnerException; if (sqlEx != null) { var exx = (MySql.Data.MySqlClient.MySqlException)sqlEx.InnerException; if (exx != null) { if (exx.Number == 1451) { result.Mensaje = "REGISTRO CONTIENE DATA RELACIONADA"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } } } result.Mensaje = ex.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.ResultadoAuto Departamento_Agregar(DtoLibInventario.Departamento.Agregar ficha) { var result = new DtoLib.ResultadoAuto(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = new TransactionScope()) { var sql = "update sistema_contadores set a_empresa_departamentos=a_empresa_departamentos+1"; var r1 = cnn.Database.ExecuteSqlCommand(sql); if (r1 == 0) { result.Mensaje = "PROBLEMA AL ACTUALIZAR TABLA CONTADORES"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } var aEmpresaDepart = cnn.Database.SqlQuery <int>("select a_empresa_departamentos from sistema_contadores").FirstOrDefault(); var autoEmpresaDepart = aEmpresaDepart.ToString().Trim().PadLeft(10, '0'); var ent = new empresa_departamentos() { auto = autoEmpresaDepart, nombre = ficha.nombre, codigo = ficha.codigo, }; cnn.empresa_departamentos.Add(ent); cnn.SaveChanges(); ts.Complete(); result.Auto = autoEmpresaDepart; } } } catch (DbUpdateException ex) { var dbUpdateEx = ex as DbUpdateException; var sqlEx = dbUpdateEx.InnerException; if (sqlEx != null) { var exx = (MySql.Data.MySqlClient.MySqlException)sqlEx.InnerException; if (exx != null) { if (exx.Number == 1451) { result.Mensaje = "REGISTRO CONTIENE DATA RELACIONADA"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } if (exx.Number == 1062) { result.Mensaje = exx.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } } } result.Mensaje = ex.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.Resultado Usuario_ActualizarSesion(DtoLibInventario.Usuario.ActualizarSesion.Ficha ficha) { var result = new DtoLib.Resultado(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = new TransactionScope()) { var fechaSistema = cnn.Database.SqlQuery <DateTime>("select now()").FirstOrDefault(); var ent = cnn.usuarios.Find(ficha.autoUsu); if (ent == null) { result.Mensaje = "[ ID ] USUARIO NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } ent.fecha_sesion = fechaSistema.Date; cnn.SaveChanges(); ts.Complete(); } } } catch (DbEntityValidationException e) { var msg = ""; foreach (var eve in e.EntityValidationErrors) { foreach (var ve in eve.ValidationErrors) { msg += ve.ErrorMessage; } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (System.Data.Entity.Infrastructure.DbUpdateException e) { var msg = ""; foreach (var eve in e.Entries) { //msg += eve.m; foreach (var ve in eve.CurrentValues.PropertyNames) { msg += ve.ToString(); } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.Resultado Tools_AjusteNivelMinimoMaximo_Ajustar(List <DtoLibInventario.Tool.AjusteNivelMinimoMaximo.Ajustar.Ficha> listaAjuste) { var result = new DtoLib.Resultado(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = new TransactionScope()) { foreach (var it in listaAjuste) { var entPrdDep = cnn.productos_deposito.FirstOrDefault(f => f.auto_producto == it.autoProducto && f.auto_deposito == it.autoDeposito); if (entPrdDep == null) { result.Result = DtoLib.Enumerados.EnumResult.isError; result.Mensaje = "[ ID ] PRODUCTO / DEPOSITO NO ENCONTRADO"; return(result); } entPrdDep.nivel_minimo = it.nivelMinimo; entPrdDep.nivel_optimo = it.nivelOptimo; cnn.SaveChanges(); } ; ts.Complete(); } } } catch (DbEntityValidationException e) { var msg = ""; foreach (var eve in e.EntityValidationErrors) { foreach (var ve in eve.ValidationErrors) { msg += ve.ErrorMessage; } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (System.Data.Entity.Infrastructure.DbUpdateException e) { var msg = ""; foreach (var eve in e.Entries) { //msg += eve.m; foreach (var ve in eve.CurrentValues.PropertyNames) { msg += ve.ToString(); } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.Resultado Configuracion_SetMetodoCalculoUtilidad(DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Ficha ficha) { var result = new DtoLib.Resultado(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = cnn.Database.BeginTransaction()) { var ent = cnn.sistema_configuracion.FirstOrDefault(f => f.codigo == "GLOBAL13"); if (ent == null) { result.Mensaje = "[ ID ] CONFIGURACION NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } ent.usuario = ficha.Metodo; cnn.SaveChanges(); var sql = @"update productos set precio_1=@p1, precio_2=@p2, precio_3=@p3, precio_4=@p4, precio_pto=@p5, pdf_1=@pd1, pdf_2=@pd2, pdf_3=@pd3, pdf_4=@pd4, pdf_pto=@pd5 where auto=@auto"; var p1 = new MySql.Data.MySqlClient.MySqlParameter(); var p2 = new MySql.Data.MySqlClient.MySqlParameter(); var p3 = new MySql.Data.MySqlClient.MySqlParameter(); var p4 = new MySql.Data.MySqlClient.MySqlParameter(); var p5 = new MySql.Data.MySqlClient.MySqlParameter(); var pd1 = new MySql.Data.MySqlClient.MySqlParameter(); var pd2 = new MySql.Data.MySqlClient.MySqlParameter(); var pd3 = new MySql.Data.MySqlClient.MySqlParameter(); var pd4 = new MySql.Data.MySqlClient.MySqlParameter(); var pd5 = new MySql.Data.MySqlClient.MySqlParameter(); var auto = new MySql.Data.MySqlClient.MySqlParameter(); p1.ParameterName = "@p1"; p2.ParameterName = "@p2"; p3.ParameterName = "@p3"; p4.ParameterName = "@p4"; p5.ParameterName = "@p5"; pd1.ParameterName = "@pd1"; pd2.ParameterName = "@pd2"; pd3.ParameterName = "@pd3"; pd4.ParameterName = "@pd4"; pd5.ParameterName = "@pd5"; auto.ParameterName = "@auto"; foreach (var it in ficha.Precio) { p1.Value = it.Precio_1.pneto; p2.Value = it.Precio_2.pneto; p3.Value = it.Precio_3.pneto; p4.Value = it.Precio_4.pneto; p5.Value = it.Precio_5.pneto; pd1.Value = it.Precio_1.pdf; pd2.Value = it.Precio_2.pdf; pd3.Value = it.Precio_3.pdf; pd4.Value = it.Precio_4.pdf; pd5.Value = it.Precio_5.pdf; auto.Value = it.idProducto; var xsql = cnn.Database.ExecuteSqlCommand(sql, p1, p2, p3, p4, p5, pd1, pd2, pd3, pd4, pd5, auto); if (xsql == 0) { result.Mensaje = "[ ID ] PRODUCTO NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } //var entPrd = cnn.productos.Find(it.idProducto); //if (entPrd == null) //{ // result.Mensaje = "[ ID ] PRODUCTO NO ENCONTRADO"; // result.Result = DtoLib.Enumerados.EnumResult.isError; // return result; //} //entPrd.precio_1 = it.Precio_1.pneto; //entPrd.pdf_1 = it.Precio_1.pdf; //entPrd.precio_2 = it.Precio_2.pneto; //entPrd.pdf_2 = it.Precio_2.pdf; //entPrd.precio_3 = it.Precio_3.pneto; //entPrd.pdf_3 = it.Precio_3.pdf; //entPrd.precio_4 = it.Precio_4.pneto; //entPrd.pdf_4 = it.Precio_4.pdf; //entPrd.precio_pto = it.Precio_5.pneto; //entPrd.pdf_pto = it.Precio_5.pdf; //cnn.SaveChanges(); } ts.Commit(); } } } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.Resultado CostoProducto_Actualizar(DtoLibInventario.Costo.Editar.Ficha ficha) { var result = new DtoLib.Resultado(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = new TransactionScope()) { var fechaSistema = cnn.Database.SqlQuery <DateTime>("select now()").FirstOrDefault(); var entPrd = cnn.productos.Find(ficha.autoProducto); if (entPrd == null) { result.Mensaje = "[ ID ] Producto, No Encontrado"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } entPrd.costo_proveedor = ficha.costoProveedor; entPrd.costo_proveedor_und = ficha.costoProveedorUnd; entPrd.costo_importacion = ficha.costoImportacion; entPrd.costo_importacion_und = ficha.costoImportacionUnd; entPrd.costo_varios = ficha.costoVario; entPrd.costo_varios_und = ficha.costoVarioUnd; entPrd.costo = ficha.costoFinal; entPrd.costo_und = ficha.costoFinalUnd; entPrd.costo_promedio = ficha.costoPromedio; entPrd.costo_promedio_und = ficha.costoPromedioUnd; entPrd.divisa = ficha.costoDivisa; entPrd.fecha_ult_costo = fechaSistema.Date; entPrd.fecha_cambio = fechaSistema.Date; if (ficha.precio != null) { entPrd.precio_1 = ficha.precio.pn1; entPrd.precio_2 = ficha.precio.pn2; entPrd.precio_3 = ficha.precio.pn3; entPrd.precio_4 = ficha.precio.pn4; entPrd.precio_pto = ficha.precio.pn5; entPrd.utilidad_1 = ficha.precio.ut1; entPrd.utilidad_2 = ficha.precio.ut2; entPrd.utilidad_3 = ficha.precio.ut3; entPrd.utilidad_4 = ficha.precio.ut4; entPrd.utilidad_pto = ficha.precio.ut5; } cnn.SaveChanges(); var entHist = new productos_costos() { auto_producto = ficha.autoProducto, costo = ficha.historia.costo, costo_divisa = ficha.historia.divisa, divisa = ficha.historia.tasaCambio, documento = ficha.historia.documento, estacion = ficha.estacion, fecha = fechaSistema.Date, hora = fechaSistema.ToShortTimeString(), nota = ficha.historia.nota, serie = ficha.historia.serie, usuario = ficha.nombreUsuario, }; cnn.productos_costos.Add(entHist); cnn.SaveChanges(); ts.Complete(); } } } catch (DbEntityValidationException e) { var msg = ""; foreach (var eve in e.EntityValidationErrors) { foreach (var ve in eve.ValidationErrors) { msg += ve.ErrorMessage; } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (System.Data.Entity.Infrastructure.DbUpdateException e) { var msg = ""; foreach (var eve in e.Entries) { //msg += eve.m; foreach (var ve in eve.CurrentValues.PropertyNames) { msg += ve.ToString(); } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
Transito_Movimiento_Agregar(DtoLibInventario.Transito.Movimiento.Agregar.Ficha ficha) { var result = new DtoLib.ResultadoId(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = new TransactionScope()) { var fechaSistema = cnn.Database.SqlQuery <DateTime>("select now()").FirstOrDefault(); var s = ficha.mov; var entMov = new productos_movimientos_transito() { autoriza = s.autoriza, cntRenglones = s.cntRenglones, codigoMov = s.codigoMov, desConcepto = s.descConcepto, desDepDestino = s.descDepDestino, desDepOrigen = s.descDepOrigen, desMov = s.descMov, desSucDestino = s.descSucDestino, desSucOrigen = s.descSucOrigen, desUsuario = s.descUsuario, estacionEquipo = s.estacionEquipo, factorCambio = s.factorCambio, fecha = fechaSistema.Date, idConcepto = s.idConcepto, idDepDestino = s.idDepDestino, idDepOrigen = s.idDeOrigen, idSucDestino = s.idSucDestino, idSucOrigen = s.idSucOrigen, monto = s.monto, montoDivisa = s.montoDivisa, motivo = s.motivo, tipoMov = s.tipoMov, }; cnn.productos_movimientos_transito.Add(entMov); cnn.SaveChanges(); foreach (var rg in ficha.detalles) { var det = new productos_movimientos_transito_detalle() { idTransito = entMov.id, autoDepart = rg.autoDepart, autoGrupo = rg.autoGrupo, autoProd = rg.autoPrd, autoTasa = rg.autoTasa, categoriaProd = rg.catPrd, codigoProd = rg.codigoPrd, contEmpaque = rg.contEmp, costo = rg.costo, costoUnd = rg.costoUnd, costoDivisa = rg.costoDivisa, costoDivisaUnd = rg.costoDivisaUnd, decimales = rg.decimales, descEmpaque = rg.nombreEmp, descTasa = rg.descTasa, esAdmDivisa = rg.estatusDivisa, exFisica = rg.exFisica, fechaUltActCosto = rg.fechaUltActCosto, nombreProd = rg.nombrePrd, valorTasa = rg.valorTasa, exFisicaDestino = rg.exFisicaDestino, nivelMinimo = rg.nivelMinimo, nivelOptimo = rg.nivelOptimo, // cantSolicitada = rg.cantidadSolicitada, costoSolicitado = rg.costoSolicitada, empaqueIdSolicitado = rg.empaqueIdSolicitada, ajusteIdSolicitado = rg.ajusteIdSolicitada, }; cnn.productos_movimientos_transito_detalle.Add(det); cnn.SaveChanges(); } ts.Complete(); result.Id = entMov.id; } } } catch (DbEntityValidationException e) { var msg = ""; foreach (var eve in e.EntityValidationErrors) { foreach (var ve in eve.ValidationErrors) { msg += ve.ErrorMessage; } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (System.Data.Entity.Infrastructure.DbUpdateException e) { var msg = ""; foreach (var eve in e.Entries) { //msg += eve.m; foreach (var ve in eve.CurrentValues.PropertyNames) { msg += ve.ToString(); } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.Resultado PrecioProducto_Actualizar(DtoLibInventario.Precio.Editar.Ficha ficha) { var result = new DtoLib.Resultado(); try { using (var cnn = new invEntities(_cnInv.ConnectionString)) { using (var ts = new TransactionScope()) { var fechaSistema = cnn.Database.SqlQuery <DateTime>("select now()").FirstOrDefault(); var entPrd = cnn.productos.Find(ficha.autoProducto); if (entPrd == null) { result.Mensaje = "[ ID ] Producto, No Encontrado"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } var entPrdExt = cnn.productos_ext.Find(ficha.autoProducto); if (entPrdExt == null) { result.Mensaje = "[ ID ] Producto Precios Mayor, No Encontrado"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } entPrd.fecha_cambio = fechaSistema.Date; // entPrd.auto_precio_1 = ficha.precio_1.autoEmp; entPrd.precio_1 = ficha.precio_1.precioNeto; entPrd.utilidad_1 = ficha.precio_1.utilidad; entPrd.pdf_1 = ficha.precio_1.precio_divisa_Neto; entPrd.contenido_1 = ficha.precio_1.contenido; // entPrd.auto_precio_2 = ficha.precio_2.autoEmp; entPrd.precio_2 = ficha.precio_2.precioNeto; entPrd.utilidad_2 = ficha.precio_2.utilidad; entPrd.pdf_2 = ficha.precio_2.precio_divisa_Neto; entPrd.contenido_2 = ficha.precio_2.contenido; // entPrd.auto_precio_3 = ficha.precio_3.autoEmp; entPrd.precio_3 = ficha.precio_3.precioNeto; entPrd.utilidad_3 = ficha.precio_3.utilidad; entPrd.pdf_3 = ficha.precio_3.precio_divisa_Neto; entPrd.contenido_3 = ficha.precio_3.contenido; // entPrd.auto_precio_4 = ficha.precio_4.autoEmp; entPrd.precio_4 = ficha.precio_4.precioNeto; entPrd.utilidad_4 = ficha.precio_4.utilidad; entPrd.pdf_4 = ficha.precio_4.precio_divisa_Neto; entPrd.contenido_4 = ficha.precio_4.contenido; // entPrd.auto_precio_pto = ficha.precio_5.autoEmp; entPrd.precio_pto = ficha.precio_5.precioNeto; entPrd.utilidad_pto = ficha.precio_5.utilidad; entPrd.pdf_pto = ficha.precio_5.precio_divisa_Neto; entPrd.contenido_pto = ficha.precio_5.contenido; cnn.SaveChanges(); // entPrdExt.auto_precio_may_1 = ficha.may_1.autoEmp; entPrdExt.precio_may_1 = ficha.may_1.precioNeto; entPrdExt.utilidad_may_1 = ficha.may_1.utilidad; entPrdExt.pdmf_1 = ficha.may_1.precio_divisa_Neto; entPrdExt.contenido_may_1 = ficha.may_1.contenido; // entPrdExt.auto_precio_may_2 = ficha.may_2.autoEmp; entPrdExt.precio_may_2 = ficha.may_2.precioNeto; entPrdExt.utilidad_may_2 = ficha.may_2.utilidad; entPrdExt.pdmf_2 = ficha.may_2.precio_divisa_Neto; entPrdExt.contenido_may_2 = ficha.may_2.contenido; // cnn.SaveChanges(); foreach (var it in ficha.historia) { var entHist = new productos_precios() { auto_producto = ficha.autoProducto, estacion = ficha.estacion, fecha = fechaSistema.Date, hora = fechaSistema.ToShortTimeString(), usuario = ficha.nombreUsuario, nota = it.nota, precio = it.precio, precio_id = it.precio_id, }; cnn.productos_precios.Add(entHist); cnn.SaveChanges(); var entHistExt = new productos_precios_ext() { contenido = it.contenido, empaque = it.empaque, id_producto_precio = entHist.id, }; cnn.productos_precios_ext.Add(entHistExt); cnn.SaveChanges(); } ts.Complete(); } } } catch (DbEntityValidationException e) { var msg = ""; foreach (var eve in e.EntityValidationErrors) { foreach (var ve in eve.ValidationErrors) { msg += ve.ErrorMessage; } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (System.Data.Entity.Infrastructure.DbUpdateException e) { var msg = ""; foreach (var eve in e.Entries) { //msg += eve.m; foreach (var ve in eve.CurrentValues.PropertyNames) { msg += ve.ToString(); } } result.Mensaje = msg; result.Result = DtoLib.Enumerados.EnumResult.isError; } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }