public static SAB_UACI_ENTREGACONTRATO ObtenerEntrega(SAB_UACI_ENTREGACONTRATO entrega, SinabEntities db) { return(db.SAB_UACI_ENTREGACONTRATO.FirstOrDefault(ec => ec.IDCONTRATO == entrega.IDCONTRATO && ec.IDESTABLECIMIENTO == entrega.IDESTABLECIMIENTO && ec.IDPROVEEDOR == entrega.IDPROVEEDOR && ec.RENGLON == entrega.RENGLON && ec.IDDETALLE == entrega.IDDETALLE)); }
public static void GuardarEntrega(SAB_UACI_ENTREGACONTRATO entrega) { using (var db = new SinabEntities()) { if (entrega.IDDETALLE == 0) { long maxentrega; try { maxentrega = db.SAB_UACI_ENTREGACONTRATO.Where(ec => ec.IDCONTRATO == entrega.IDCONTRATO && ec.IDESTABLECIMIENTO == entrega.IDESTABLECIMIENTO && ec.IDPROVEEDOR == entrega.IDPROVEEDOR && ec.RENGLON == entrega.RENGLON).Max(ec => ec.IDDETALLE); } catch (Exception) { maxentrega = 0; } entrega.IDDETALLE = maxentrega + 1; db.SAB_UACI_ENTREGACONTRATO.AddObject(entrega); } else { var rec = ObtenerEntrega(entrega, db); if (rec != null) { rec.ENTREGA = entrega.ENTREGA; rec.PLAZOENTREGA = entrega.PLAZOENTREGA; rec.PORCENTAJEENTREGA = entrega.PORCENTAJEENTREGA; rec.FECHACONTEO = entrega.FECHACONTEO; rec.IDMODIFICATIVA = entrega.IDMODIFICATIVA; rec.ESTAHABILITADA = entrega.ESTAHABILITADA; rec.AUUSUARIOMODIFICACION = entrega.AUUSUARIOMODIFICACION; rec.AUFECHAMODIFICACION = entrega.AUFECHAMODIFICACION; rec.ESTASINCRONIZADA = entrega.ESTASINCRONIZADA; } } db.SaveChanges(); } }