public bool AsignarRangoCodigoBarrasAgencia() { System.Data.SqlClient.SqlConnection conexion = new System.Data.SqlClient.SqlConnection(); System.Data.SqlClient.SqlTransaction transaccion; conexion.ConnectionString = Config.ConnectionString; conexion.Open(); transaccion = conexion.BeginTransaction(); CodigoBarras codigoBarras = new CodigoBarras(); try { //reviso que la agencia a la que se le quiere asignar el rango de codigos de barras, //sea emisora IAgencia agencia = new Agencia(); agencia.AgenciaID = this.AgenciaID; agencia.Consultar(); if (agencia.EsEmisora) { rangoCodigoBarrasID = this.Guardar(transaccion); codigoBarras = new CodigoBarras(); codigoBarras.UnidadVentaID = this.UnidadVentaID; codigoBarras.ServicioID = this.ServicioID; codigoBarras.ModalidadEntregaID = this.ModalidadEntregaID; codigoBarras.AgenciaID = this.AgenciaID; codigoBarras.VendedorID = this.VendedorID; codigoBarras.ClienteID = this.ClienteID; codigoBarras.EstadoCodigoBarrasID = this.EstadoCodigoBarrasID; codigoBarras.FechaAlta = DateTime.Now; codigoBarras.TarifaPreVentaID = this.TarifaPreVentaID; codigoBarras.TarifarioFleteID = TarifarioFleteID; codigoBarras.ConceptoFacturacionID = ConceptoFacturacionID; codigoBarras.ActualizarCodigoBarras(transaccion, this.CodigoBarrasInicial, this.CodigoBarrasFinal); transaccion.Commit(); return(true); } else { throw new Exception("Errores.Invalidos.AgenciaNoVendedora"); } } catch (Exception ex) { transaccion.Rollback(); throw new Exception(ex.Message, ex); } finally { conexion.Close(); } }