public BindingList <BilleteFalso> selectBilletesFalsos(int codigoDeposito) { BindingList <BilleteFalso> bf = new BindingList <BilleteFalso>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectBilleteFalsoDeposito"); _manejador.agregarParametro(comando, "@IDDEPOSITO", codigoDeposito, SqlDbType.Int); SqlDataReader datareader = null; try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int ID = (int)datareader["pk_ID"]; string serie = (string)datareader["Serie"]; Monedas moneda = (Monedas)datareader["Moneda"]; Decimal valorDen = (Decimal)datareader["Denominacion"]; Denominacion denominacion = new Denominacion(valor: valorDen, moneda: moneda); BilleteFalso billete = new BilleteFalso(id: ID, serie_billete: serie, denominacion: denominacion, moneda: moneda); bf.Add(billete); } comando.Connection.Close(); } catch { comando.Connection.Close(); throw new Excepcion("Error al obtener datos de la tabla billetes falsos"); } return(bf); }
/// <summary> /// Actualizar los datos de una Denominacion en el sistema. /// </summary> /// <param name="a">Objeto Denominacion con los datos de la Denominacion</param> public void actualizarDenominacion(Denominacion a) { SqlCommand comando = _manejador.obtenerProcedimiento("UpdateDenominacion"); _manejador.agregarParametro(comando, "@valor", a.Valor, SqlDbType.Money); _manejador.agregarParametro(comando, "@moneda", a.Moneda, SqlDbType.TinyInt); _manejador.agregarParametro(comando, "@carga_atm", a.Carga_atm, SqlDbType.Bit); _manejador.agregarParametro(comando, "@codigo", a.Codigo, SqlDbType.VarChar); _manejador.agregarParametro(comando, "@id_imagen", a.Id_imagen, SqlDbType.TinyInt); _manejador.agregarParametro(comando, "@configuracion_diebold", a.Configuracion_diebold, SqlDbType.VarChar); _manejador.agregarParametro(comando, "@configuracion_opteva", a.Configuracion_opteva, SqlDbType.VarChar); _manejador.agregarParametro(comando, "@formulas_maximas", a.Formulas_maximas, SqlDbType.SmallInt); _manejador.agregarParametro(comando, "@formulas_minimas", a.Formulas_minimas, SqlDbType.SmallInt); _manejador.agregarParametro(comando, "@esmoneda", a.EsMoneda, SqlDbType.Bit); _manejador.agregarParametro(comando, "@denominacion", a, SqlDbType.TinyInt); try { _manejador.ejecutarConsultaActualizacion(comando); comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorATMActualizacion"); } }
/// <summary> /// Verificar si una denominación esta registrada en el sistema con base en su código. /// </summary> /// <returns>valor que indica si la denominación existe</returns> public bool verificarDenominacionCodigo(ref Denominacion d) { bool existe = false; SqlCommand comando = _manejador.obtenerProcedimiento("SelectExisteDenominacionCodigo"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@codigo", d.Codigo, SqlDbType.VarChar); try { datareader = _manejador.ejecutarConsultaDatos(comando); if (datareader.Read()) { byte id_encontrado = (byte)datareader["pk_ID"]; existe = id_encontrado != d.Id; d.Id = id_encontrado; } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorVerificarDenominacion"); } return(existe); }
private void asignarDenominaciones(double p_monto, ref Arqueo arqueo, Dictionary <double, decimal> denominaciones, Monedas moneda) { decimal monto = 0; monto = denominaciones[p_monto]; Denominacion denominacion = new Denominacion(valor: Convert.ToDecimal(p_monto), moneda: moneda); _mantenimiento.verificarDenominacion(ref denominacion); double cantidad_total = (double)Math.Ceiling(monto / denominacion.Valor); double cantidad_cartucho = (double)(monto / denominacion.Valor); DenominacionArqueo denominacionArqueo = new DenominacionArqueo(monto_total: (decimal)monto, denominacion: denominacion); arqueo.agregarDenominacion(denominacionArqueo); //switch (denominacion.Moneda) //{ // case Monedas.Colones: carga.Monto_pedido_colones += monto; break; // case Monedas.Dolares: carga.Monto_pedido_dolares += monto; break; // case Monedas.Euros: carga.Monto_pedido_euros += monto; break; //} }
/// <summary> /// Asignar los cartuchos de una carga y determinar si el monto erra correcto. /// </summary> private void asignarCartuchos(double p_monto, ref CargaSucursal mutilado, Dictionary <double, decimal> denominaciones, Monedas moneda) { decimal monto = 0; monto = denominaciones[p_monto]; Denominacion denominacion = new Denominacion(valor: Convert.ToDecimal(p_monto), moneda: moneda); _mantenimiento.verificarDenominacion(ref denominacion); double cantidad_total = (double)Math.Ceiling(monto / denominacion.Valor); double cantidad_cartucho = (double)(monto / denominacion.Valor); //CartuchoCargaSucursal cartucho = new CartuchoCargaSucursal(mutilado, cantidad_asignada: cantidad_cartucho, // denominacion: denominacion); CartuchoCargaSucursal cartucho = new CartuchoCargaSucursal(movimiento: mutilado, cantidad_asignada: cantidad_cartucho, denominacion: denominacion); mutilado.agregarCartucho(cartucho); switch (denominacion.Moneda) { case Monedas.Colones: mutilado.Monto_pedido_colones += monto; break; case Monedas.Dolares: mutilado.Monto_pedido_dolares += monto; break; case Monedas.Euros: mutilado.Monto_pedido_euros += monto; break; } }
/// <summary> /// Asignar los cartuchos de una carga y determinar si el monto erra correcto. /// </summary> private void asignarCartuchos(Celda celda_monto, ref PedidoNiquel carga) { decimal monto = 0; if ((decimal.TryParse(celda_monto.Valor, out monto) && monto > 0)) { Denominacion denominacion = _denominaciones[celda_monto.Columna]; double cantidad_total = (double)Math.Ceiling(monto / denominacion.Valor); double cantidad_cartucho = (double)(monto / denominacion.Valor); //cantidad_cartucho = (short)(100 * (int)Math.Ceiling((decimal)(cantidad_cartucho / 100))); CartuchosNiquel cartucho = new CartuchosNiquel(movimiento: carga, cantidad_asignada: cantidad_cartucho, denominacion: denominacion); carga.agregarCartucho(cartucho); switch (denominacion.Moneda) { case Monedas.Colones: carga.Monto_pedido_colones += monto; break; case Monedas.Dolares: carga.Monto_pedido_dolares += monto; break; } } }
/// <summary> /// Valida si una tarifa de un punto existe /// </summary> /// <param name="t">Objeto TarifaPuntoVentaTransportadora con los datos de la tarifa</param> /// <returns></returns> public bool verificarDenominacionPuntoVenta(ref PuntoVenta p, Denominacion d, int tipo) { bool existe = false; SqlCommand comando = _manejador.obtenerProcedimiento("SelectExisteDenominacionPuntoVenta"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@denominacion", d, SqlDbType.TinyInt); _manejador.agregarParametro(comando, "@punto", p.Id, SqlDbType.SmallInt); _manejador.agregarParametro(comando, "@tipo", tipo, SqlDbType.Int); try { datareader = _manejador.ejecutarConsultaDatos(comando); if (datareader.Read()) { int id = (int)datareader["pk_ID"]; existe = id != 0; } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorVerificarATMDuplicado"); } return(existe); }
/// <summary> /// Clic en el botón de aceptar. /// </summary> private void btnAceptar_Click(object sender, EventArgs e) { try { if (ValidarCampos()) { _cargas.Clear(); Denominacion nueva = (Denominacion)cboDenominacion.SelectedItem; double monto = Convert.ToDouble(txtNombre.Text); this.asignarCartuchos(monto, ref _carga, nueva); //_coordinacion.importarCargasSucursales(_cargas); Mensaje.mostrarMensaje("MensajeCargasSucursalesConfirmacionGeneracion"); //btnAceptar.Enabled = false; } } catch (Excepcion ex) { ex.mostrarMensaje(); } }
/// <summary> /// Asignar los cartuchos de una carga y determinar si el monto erra correcto. /// </summary> private void asignarCartuchos(Celda celda_monto, ref CargaATM carga) { decimal monto = 0; if ((decimal.TryParse(celda_monto.Valor, out monto) && monto > 0)) { Denominacion denominacion = _denominaciones[celda_monto.Columna]; short cantidad_total = (short)Math.Ceiling(monto / denominacion.Valor); double numero_cartuchos = (double)cantidad_total / (double)denominacion.Formulas_maximas; int cantidad_cartuchos = (int)Math.Ceiling(numero_cartuchos); short cantidad_cartucho = (short)(cantidad_total / cantidad_cartuchos); cantidad_cartucho = (short)(100 * (int)Math.Ceiling((decimal)(cantidad_cartucho / 100))); for (int contador = 0; contador < cantidad_cartuchos; contador++) { CartuchoCargaATM cartucho = new CartuchoCargaATM(movimiento: carga, cantidad_asignada: cantidad_cartucho, denominacion: denominacion); carga.agregarCartucho(cartucho); } switch (denominacion.Moneda) { case Monedas.Colones: carga.Monto_pedido_colones += monto; break; case Monedas.Dolares: carga.Monto_pedido_dolares += monto; break; } } }
public CartuchoMutilado(MovimientoMutilado movimiento, double cantidad_asignada, CommonObjects.Denominacion denominacion) { // TODO: Complete member initialization this.movimiento = movimiento; this.cantidad_asignada = cantidad_asignada; this.Denominacion = denominacion; }
/// <summary> /// Obtener los cartuchos de una carga de un ATM. /// </summary> /// <param name="a">Parámetro que indica si se mostrarán los cartuchos anulados</param> /// <param name="c">Objeto CargaATM con los datos de la carga</param> public void obtenerCartuchosCargaATM(ref CargaATM c, bool a) { SqlCommand comando = _manejador.obtenerProcedimiento("SelectCartuchosCargaATM"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@anulado", a, SqlDbType.Bit); _manejador.agregarParametro(comando, "@carga", c, SqlDbType.Int); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_cartucho_carga = (int)datareader["ID_Cartucho_Carga"]; short cantidad_asignada = (short)datareader["Cantidad_Asignada"]; short cantidad_carga = (short)datareader["Cantidad_Carga"]; short cantidad_descarga = (short)datareader["Cantidad_Descarga"]; string marchamo = datareader["Marchamo"] as string; bool anulado = (bool)datareader["Anulado"]; byte id_denominacion = (byte)datareader["ID_Denominacion"]; decimal valor = (decimal)datareader["Valor"]; Monedas moneda = (Monedas)datareader["Moneda"]; string codigo = (string)datareader["Codigo"]; string configuracion_diebold = (string)datareader["Configuracion_Diebold"]; string configuracion_opteva = (string)datareader["Configuracion_Opteva"]; byte? id_imagen = datareader["ID_Imagen"] as byte?; Denominacion denominacion = new Denominacion(id: id_denominacion, valor: valor, moneda: moneda, codigo: codigo, id_imagen: id_imagen, configuracion_diebold: configuracion_diebold, configuracion_opteva: configuracion_opteva); Cartucho cartucho = null; if (datareader["ID_Cartucho"] != DBNull.Value) { int id_cartucho = (int)datareader["ID_Cartucho"]; string numero = (string)datareader["Numero"]; TiposCartucho tipo = (TiposCartucho)datareader["Tipo"]; cartucho = new Cartucho(numero, id: id_cartucho, denominacion: denominacion, tipo: tipo); } CartuchoCargaATM cartucho_carga = new CartuchoCargaATM(denominacion, id: id_cartucho_carga, marchamo: marchamo, movimiento: c, cantidad_descarga: cantidad_descarga, cantidad_carga: cantidad_carga, cantidad_asignada: cantidad_asignada, cartucho: cartucho, anulado: anulado); c.agregarCartucho(cartucho_carga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } }
public frmMontosDenominacionDescargas(BindingList <DescargaATMFull> descargas) { InitializeComponent(); Dictionary <Denominacion, decimal> montos = new Dictionary <Denominacion, decimal>(); Dictionary <Denominacion, int> cantidades = new Dictionary <Denominacion, int>(); foreach (DescargaATMFull descarga in descargas) { foreach (DetalleDescargaATMFull detalle in descarga.Detalles) { Denominacion denominacion = detalle.Denominacion; decimal monto_cartucho = detalle.Cantidad_descargada * denominacion.Valor; if (montos.ContainsKey(denominacion)) { montos[denominacion] += monto_cartucho; cantidades[denominacion] += detalle.Cantidad_descargada; } else { montos.Add(denominacion, monto_cartucho); cantidades.Add(denominacion, detalle.Cantidad_descargada); } } } foreach (Denominacion denominacion in montos.Keys) { decimal monto = montos[denominacion]; int cantidad = cantidades[denominacion]; dgvMontos.Rows.Add(denominacion, monto, cantidad); } }
public BilleteFalso(int id = 0, string serie_billete = "", decimal monto = 0, Monedas moneda = Monedas.Colones, Denominacion denominacion = null) { this.DB_ID = id; this._serie_billete = serie_billete; this._monto = monto; this._moneda = moneda; this._denominacion = denominacion; }
public TulaNiquel(int id = 0, Denominacion den = null, int cantidad = 0) { this.DB_ID = id; _denominacion = den; _cantidad_bolsa = cantidad; }
/// <summary> /// Se agregan cartuchos a la lista de cartuchos. /// </summary> private void dgvCartuchos_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) { for (int contador = 0; contador < e.RowCount; contador++) { DataGridViewRow fila = dgvCartuchos.Rows[e.RowIndex + contador]; BolsaCargaBanco cartucho = (BolsaCargaBanco)fila.DataBoundItem; Denominacion denominacion = cartucho.Denominacion; } }
/// <summary> /// Obtener una lista de las denominaciones de monedas definidas en el sistema que se utilizan en las cargas de ATM's. /// </summary> /// <returns>Lista de las denominaciones definidas en el sistema</returns> public BindingList <Denominacion> listarDenominacionesMonedas() { BindingList <Denominacion> denominaciones = new BindingList <Denominacion>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectDenominacionesMoneda"); SqlDataReader datareader = null; try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { byte id = (byte)datareader["pk_ID"]; decimal valor = (decimal)datareader["Valor"]; Monedas moneda = (Monedas)datareader["Moneda"]; string codigo = ""; if (datareader["Codigo"] != DBNull.Value) { codigo = (string)datareader["Codigo"]; } string configuracion_diebold = ""; if (datareader["Configuracion_Diebold"] != DBNull.Value) { configuracion_diebold = (string)datareader["Configuracion_Diebold"]; } string configuracion_opteva = ""; if (datareader["Configuracion_Opteva"] != DBNull.Value) { configuracion_opteva = (string)datareader["Configuracion_Opteva"]; } byte id_imagen = 0; if (datareader["ID_Imagen"] != DBNull.Value) { id_imagen = (byte)datareader["ID_Imagen"]; } Denominacion denominacion = new Denominacion(id: id, valor: valor, moneda: moneda, codigo: codigo, configuracion_diebold: configuracion_diebold, configuracion_opteva: configuracion_opteva, id_imagen: id_imagen); denominaciones.Add(denominacion); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } return(denominaciones); }
/// <summary> /// Obtener los cartuchos de una carga de una Sucursal. /// </summary> /// <param name="a">Parámetro que indica si se mostrarán los cartuchos anulados</param> /// <param name="c">Objeto CargaSucursal con los datos de la carga</param> public void obtenerBolsaPedidoBanco(ref PedidoBancos c, bool a) { SqlCommand comando = _manejador.obtenerProcedimiento("SelectBolsasPedidoBanco"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@anulado", a, SqlDbType.Bit); _manejador.agregarParametro(comando, "@carga", c, SqlDbType.Int); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_cartucho_carga = (int)datareader["ID_Cartucho_Carga"]; double cantidad_asignada = (double)datareader["Cantidad_Asignada"]; // short cantidad_descarga = (short)datareader["Cantidad_Descarga"]; string marchamo = datareader["Marchamo"] as string; bool anulado = (bool)datareader["Anulado"]; byte id_denominacion = (byte)datareader["ID_Denominacion"]; decimal valor = (decimal)datareader["Valor"]; Monedas moneda = (Monedas)datareader["Moneda"]; CalidadBilletes calidad = new CalidadBilletes(); if (datareader["Calidad"] != DBNull.Value) { calidad.DB_ID = (int)datareader["Calidad"]; calidad.Nombre = (string)datareader["CalidadNombre"]; } //string codigo = (string)datareader["Codigo"]; //string configuracion_diebold = (string)datareader["Configuracion_Diebold"]; //string configuracion_opteva = (string)datareader["Configuracion_Opteva"]; //byte? id_imagen = datareader["ID_Imagen"] as byte?; Denominacion denominacion = new Denominacion(id: id_denominacion, valor: valor, moneda: moneda); BolsaCargaBanco bolsa_carga = new BolsaCargaBanco(denominacion, id: id_cartucho_carga, marchamo: marchamo, movimiento: c, cantidad_asignada: cantidad_asignada, anulado: anulado, calidad: calidad); c.agregarCartucho(bolsa_carga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } }
/// <summary> /// Validar una carga. /// </summary> private void validarCarga(DataGridViewRow fila) { CargaATM carga = (CargaATM)fila.DataBoundItem; ATM atm = carga.ATM; _filas_incorrectas.Remove(fila.Index); fila.Cells[CantidadColones.Index].Style.BackColor = SystemColors.Window; foreach (CartuchoCargaATM cartucho in carga.Cartuchos_Colones) { Denominacion denominacion = cartucho.Denominacion; if (denominacion.ID_Invalido || !denominacion.Carga_atm) { this.mostrarError(MontoColones, fila, pbErrorDenominacion.BackColor); } else if (cartucho.Cantidad_asignada < denominacion.Formulas_minimas) { this.mostrarError(CantidadColones, fila, pbErrorMínimoFormulas.BackColor); } } fila.Cells[CantidadDolares.Index].Style.BackColor = SystemColors.Window; foreach (CartuchoCargaATM cartucho in carga.Cartuchos_Dolares) { Denominacion denominacion = cartucho.Denominacion; if (denominacion.ID_Invalido || !denominacion.Carga_atm) { this.mostrarError(MontoDolares, fila, pbErrorDenominacion.BackColor); } else if (cartucho.Cantidad_asignada < denominacion.Formulas_minimas) { this.mostrarError(CantidadDolares, fila, pbErrorMínimoFormulas.BackColor); } } if (atm.ID_Invalido) { this.mostrarError(ATM, fila, pbATMDesconocido.BackColor); } else if (carga.Cartuchos.Count > atm.Cartuchos) { this.mostrarError(CantidadCartuchos, fila, pbErrorCantidadCartuchos.BackColor); } if (carga.Cantidad_denominaciones > 4) { this.mostrarError(Denominaciones, fila, pbErrorCantidadDenominaciones.BackColor); } fila.Cells[Tipo.Index].Value = carga.Tipo; fila.Cells[CantidadCartuchos.Index].Value = carga.Cartuchos.Count; }
public MontoCierreSucursal(Denominacion denominacion, int id = 0, int cantidad = 0) { this.DB_ID = id; _denominacion = denominacion; _cantidad = cantidad; }
/// <summary> /// Se selecciona otro cartucho de la lista de cartuchos. /// </summary private void dgvMontosCarga_SelectionChanged(object sender, EventArgs e) { if (dgvMontosCarga.SelectedCells.Count > 0) { DataGridViewCell celda = dgvMontosCarga.SelectedCells[0]; CartuchosNiquel cartucho = (CartuchosNiquel)celda.OwningRow.DataBoundItem; PedidoNiquel carga = (PedidoNiquel)dgvCargas.SelectedRows[0].DataBoundItem; Denominacion denominacion = cartucho.Denominacion; celda.Style.SelectionBackColor = _colores[(byte)denominacion.Id_imagen]; } }
public BolsaMontosSucursales(Denominacion denominacion = null, int id = 0, Decimal cantidad_asignada = 0) { this.DB_ID = id; _cantidad_asignada = cantidad_asignada; _denominacion = denominacion; }
public BolsaMontoPedidoBanco(Denominacion denominacion = null, int id = 0, Decimal cantidad_asignada = 0) { this.DB_ID = id; _cantidad_asignada = cantidad_asignada; _denominacion = denominacion; }
public async Task <ResponseD> eliminar(Denominacion param) { try { // localhost:8080/admeli/xcore2/xcore/services.php/denominacion/eliminar return(await webService.POST <Denominacion, ResponseD>("denominacion", "eliminar", param)); } catch (Exception ex) { throw ex; } }
public MontosRecaptFinal(Denominacion denominacion = null, int id = 0, Decimal cantidad_asignada = 0) { this.DB_ID = id; _cantidad_asignada = cantidad_asignada; _denominacion = denominacion; }
public BolsaMontosTransportadora(Denominacion denominacion = null, int id = 0, Decimal cantidad_asignada = 0) { this.DB_ID = id; _cantidad_asignada = cantidad_asignada; _denominacion = denominacion; }
private void generarCargasMoneda(Monedas moneda, DateTime fecha, Dictionary <double, decimal> denominaciones, ArrayList numeros, Arqueo arqueo) { foreach (Decimal d in numeros) { Denominacion denominacion = new Denominacion(valor: Convert.ToDecimal(d), moneda: moneda); _mantenimiento.verificarDenominacion(ref denominacion); this.asignarDenominaciones(Convert.ToDouble(denominacion.Valor), ref arqueo, denominaciones, moneda); } }
/// <summary> /// Leer el monto solicitado para un cartucho. /// </summary> private void leerMonto(Celda celda_monto, ref CargaATM carga) { decimal total = 0; if ((decimal.TryParse(celda_monto.Valor, out total) && total > 0)) { Denominacion denominacion = _denominaciones[celda_monto.Columna]; short cantidad = (short)(total / denominacion.Valor); CartuchoCargaATM cartucho = new CartuchoCargaATM(movimiento: carga, cantidad_asignada: cantidad, denominacion: denominacion); carga.agregarCartucho(cartucho); } }
/// <summary> /// Leer los montos remanentes por denominación de un ATM. /// </summary> private void leerCantidadRemanenteCartucho(string codigo, decimal remanente, RegistroRemanentesATM registro, byte posicion) { Denominacion denominacion = new Denominacion(codigo: codigo.ToUpper()); _mantenimiento.verificarDenominacionCodigo(ref denominacion); if (denominacion.ID_Valido) { short cantidad_remanente = (short)remanente; MontoRemanenteATM monto = new MontoRemanenteATM(denominacion, cantidad_remanente, posicion); registro.agregarMonto(monto); } }
public BolsaCompletaNiquel(Denominacion denominacion = null, int id = 0, Decimal cantidad_asignada = 0, int cantidad_piezas = 0, int tipo_bolsa = 0, int cantidad_bolsas = 0) { this.DB_ID = id; _cantidad_asignada = cantidad_asignada; _cantidad_piezas_bolsa = cantidad_piezas; _tipo_bolsa = tipo_bolsa; _denominacion = denominacion; _cantidad_bolsas = cantidad_bolsas; }
/// <summary> /// Listar a los RecaptFinal del sistema. /// </summary> /// <param name="n">Parte del nombre de los RecaptFinal a listar</param> /// <returns>Lista de los RecaptFinal registrados en el sistema</returns> public BindingList <MontosRecaptFinal> listarRecaptFinal(DateTime n) { BindingList <MontosRecaptFinal> recapts = new BindingList <MontosRecaptFinal>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectRecaptAdicional"); SqlDataReader datareader = null; comando.CommandTimeout = 100000; _manejador.agregarParametro(comando, "@fecha", n, SqlDbType.Date); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { Decimal monto = 0; if (datareader["Monto"] != DBNull.Value) { monto = (decimal)datareader["Monto"]; } short id_denominacion = (short)datareader["ID_Denominacion"]; byte id_denominacion2 = Convert.ToByte(id_denominacion); Monedas moneda = (Monedas)datareader["Moneda"]; decimal valor_denominacion = (decimal)datareader["Valor"]; Denominacion d = new Denominacion(id: id_denominacion2, valor: valor_denominacion, moneda: moneda); MontosRecaptFinal montorecapt = new MontosRecaptFinal(denominacion: d, cantidad_asignada: monto); recapts.Add(montorecapt); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } return(recapts); }