public static void CierreOrdenado(Estimado estimado, EstimadoVersion estimadoVer, OrdenadoCabDTO ordenadoCab) { using (SqlTransaction tran = dao.IniciarTransaccion()) { try { Create(estimado, tran); Create(estimadoVer, tran); daoOrdenadoCab.Update(ordenadoCab, ordenadoCab.RecId, tran); dao.CommitTransaccion(tran); } catch (Exception) { dao.RollbackTransaccion(tran); throw; } } }
public static void Update(OrdenadoCabDTO ordenado, List <OrdenadoDetDTO> lineas) { OrdenadoSKUDTO sku; using (SqlTransaction tran = dao.IniciarTransaccion()) { try { dao.Update(ordenado, ordenado.RecId, tran); //Elimino toda las lineas del ordenado y las re-creo. daoDetalle.Delete( string.Format("PautaId = '{0}'", ordenado.PautaId), tran); foreach (OrdenadoDetDTO linea in lineas) { linea.RecId = 0; linea.DatareaId = ordenado.DatareaId; linea.PautaId = ordenado.PautaId; daoDetalle.Create(linea, tran); } //Elimino toda las lineas del ordenado y las re-creo. daoSKU.Delete( string.Format("PautaId = '{0}'", ordenado.PautaId), tran); var dtSKU = BuildAllSKU(lineas); foreach (System.Data.DataRow dr in dtSKU.Rows) { sku = new OrdenadoSKUDTO(); sku.RecId = 0; sku.DatareaId = ordenado.DatareaId; sku.PautaId = ordenado.PautaId; if (dr["Duracion"] != DBNull.Value) { sku.Duracion = Convert.ToDecimal(dr["Duracion"]); } else { sku.Duracion = null; } sku.CantSalidas = Convert.ToDecimal(dr["CantSalidas"]); sku.IdentifAviso = Convert.ToString(dr["IdentifAviso"]); sku.IdentifSKU = Convert.ToString(dr["IdentifSKU"]); daoSKU.Create(sku, tran); } dao.CommitTransaccion(tran); } catch (Exception) { dao.RollbackTransaccion(tran); throw; } } }