/// <summary> /// Verificar si existe un cierre para un cajero y un digitador dados. /// </summary> /// <param name="c">Objeto CierreCEF con los datos del cierre a verificar</param> /// <returns>Valor que indica si el cierre existe</returns> public bool verificarCierre(ref CierreCEF c) { bool existe = false; SqlCommand comando = _manejador.obtenerProcedimiento("SelectExisteCierre"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@cajero", c.Cajero, SqlDbType.Int); _manejador.agregarParametro(comando, "@digitador", c.Digitador, SqlDbType.Int); _manejador.agregarParametro(comando, "@fecha", c.Fecha, SqlDbType.Date); try { datareader = _manejador.ejecutarConsultaDatos(comando); if (datareader.Read()) { int id = (int)datareader["pk_ID"]; existe = id != c.ID; c.ID = id; } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorVerificarCierreDuplicado"); } return(existe); }
/// <summary> /// Obtener una lista de los cierres registrados en determinada fecha. /// </summary> /// <param name="f">Fecha para la cual se genera la lista</param> /// <returns>Lista de cierres registrados en la fecha dada</returns> public BindingList <CierreCEF> listarCierres(DateTime f) { BindingList <CierreCEF> cierres = new BindingList <CierreCEF>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectCierres"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@fecha", f, SqlDbType.Date); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_cajero = (int)datareader["ID_Cajero"]; string nombre_cajero = (string)datareader["Nombre_Cajero"]; string primer_apellido_cajero = (string)datareader["Primer_Apellido_Cajero"]; string segundo_apellido_cajero = (string)datareader["Segundo_Apellido_Cajero"]; int id_digitador = (int)datareader["ID_Digitador"]; string nombre_digitador = (string)datareader["Nombre_Digitador"]; string primer_apellido_digitador = (string)datareader["Primer_Apellido_Digitador"]; string segundo_apellido_digitador = (string)datareader["Segundo_Apellido_Digitador"]; Colaborador cajero = new Colaborador(id_cajero, nombre_cajero, primer_apellido_cajero, segundo_apellido_cajero); Colaborador digitador = new Colaborador(id_digitador, nombre_digitador, primer_apellido_digitador, segundo_apellido_digitador); CierreCEF cierre = new CierreCEF(fecha: f, cajero: cajero, digitador: digitador); cierres.Add(cierre); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } return(cierres); }
/// <summary> /// Obtener las inconsistencias ligadas al cierre de un cajero y un digitador del CEF. /// </summary> /// <param name="c">Objeto CierreCEF con los datos del cierre para el cual se obtienen las inconsistencias</param> public BindingList <InconsistenciaDeposito> obtenerInconsistenciasCierre(CierreCEF c) { BindingList <InconsistenciaDeposito> inconsistencias = new BindingList <InconsistenciaDeposito>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectCierreCEFInconsistencias"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@cajero", c.Cajero, SqlDbType.Int); _manejador.agregarParametro(comando, "@digitador", c.Digitador, SqlDbType.Int); _manejador.agregarParametro(comando, "@fecha", c.Fecha, SqlDbType.Date); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id = (int)datareader["pk_ID"]; decimal diferencia_colones = (decimal)datareader["Diferencia_Colones"]; decimal diferencia_dolares = (decimal)datareader["Diferencia_Dolares"]; decimal diferencia_euros = 0; if (datareader["Diferencia_Euros"] != DBNull.Value) { diferencia_euros = (decimal)datareader["Diferencia_Euros"]; } InconsistenciaDeposito inconsistencia = new InconsistenciaDeposito(id, diferencia_colones, diferencia_dolares, diferencia_euros); inconsistencias.Add(inconsistencia); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } return(inconsistencias); }
/// <summary> /// Escribir un cierre en el reporte de cierres. /// </summary> private void escribirCierre(CierreCEF cierre, Documento documento, int posicion, string colaborador) { decimal compra_dolares_colones = cierre.Compra_dolares * _tipo_cambio.Compra; decimal venta_dolares_dolares = Math.Round(cierre.Venta_dolares / _tipo_cambio.Venta, 2); // Calculo de los montos en colones decimal diferencia_colones = cierre.Ingreso_clientes_colones - cierre.Reporte_cajero_colones; decimal saldo_cierre_colones = cierre.Ingreso_clientes_colones + cierre.Saldo_dia_anterior_colones + cierre.Otros_ingresos_colones - cierre.Otros_egresos_colones - cierre.Cheques_locales_colones - cierre.Cheques_exterior_colones - cierre.Cheques_bac_colones - cierre.Salidas_niquel_colones - cierre.Niquel_pendiente_colones - cierre.Entregas_boveda_colones - cierre.Entregas_pendientes_colones - compra_dolares_colones + cierre.Venta_dolares - cierre.Faltante_clientes_colones + cierre.Sobrante_clientes_colones - cierre.Faltante_quinientos_colones + cierre.Sobrante_quinientos_colones; decimal faltante_sobrante_colones = saldo_cierre_colones - cierre.Efectivo_cajero_colones; // Calculo de los montos en dolares decimal diferencia_dolares = cierre.Ingreso_clientes_dolares - cierre.Reporte_cajero_dolares; decimal saldo_cierre_dolares = cierre.Ingreso_clientes_dolares + cierre.Saldo_dia_anterior_dolares + cierre.Otros_ingresos_dolares - cierre.Otros_egresos_dolares - cierre.Cheques_locales_dolares - cierre.Cheques_exterior_dolares - cierre.Cheques_bac_dolares - cierre.Salidas_niquel_dolares - cierre.Niquel_pendiente_dolares - cierre.Entregas_boveda_dolares - cierre.Entregas_pendientes_dolares + cierre.Compra_dolares - venta_dolares_dolares - cierre.Faltante_clientes_dolares + cierre.Sobrante_clientes_dolares - cierre.Faltante_quinientos_dolares + cierre.Sobrante_quinientos_dolares; decimal faltante_sobrante_dolares = saldo_cierre_dolares - cierre.Efectivo_cajero_dolares; // Dar formato a la hoja documento.seleccionarCelda(5, posicion); documento.actualizarValorCelda(colaborador); documento.formatoCelda(negrita: true, color_fuente: Color.Red, color_fondo: Color.LightGray); documento.seleccionarSegundaCelda(5, posicion + 1); documento.ajustarCeldas(AlineacionHorizontal.Centro); documento.formatoTabla(false); documento.seleccionarCelda(6, posicion); documento.seleccionarSegundaCelda(34, posicion + 1); documento.formatoTabla(false); documento.seleccionarCelda(6, posicion); documento.actualizarValorCelda("Colones"); documento.formatoCelda(negrita: true, color_fondo: Color.LightGray); documento.cambiarTamanoColumna(20); documento.seleccionarCelda(6, posicion + 1); documento.actualizarValorCelda("Dolares"); documento.formatoCelda(negrita: true, color_fondo: Color.LightGray); documento.cambiarTamanoColumna(20); // Escribir los valores en el excel documento.seleccionarCelda(7, posicion); documento.actualizarValorCelda(cierre.Manifiestos.ToString("N0")); documento.seleccionarCelda(8, posicion); documento.actualizarValorCelda(cierre.Tulas.ToString("N0")); documento.seleccionarCelda(9, posicion); documento.actualizarValorCelda(cierre.Depositos.ToString("N0")); documento.seleccionarCelda(10, posicion); documento.actualizarValorCelda(cierre.Cheques.ToString("N0")); documento.seleccionarCelda(11, posicion); documento.actualizarValorCelda(cierre.Sobres.ToString("N0")); documento.seleccionarCelda(12, posicion); documento.actualizarValorCelda(cierre.Disconformidades.ToString("N0")); // Colones documento.seleccionarCelda(13, posicion); documento.actualizarValorCelda(cierre.Ingreso_clientes_colones.ToString("N2")); documento.seleccionarCelda(14, posicion); documento.actualizarValorCelda(cierre.Reporte_cajero_colones.ToString("N2")); documento.seleccionarCelda(15, posicion); documento.actualizarValorCelda(diferencia_colones.ToString("N2")); documento.seleccionarCelda(16, posicion); documento.actualizarValorCelda(cierre.Saldo_dia_anterior_colones.ToString("N2")); documento.seleccionarCelda(17, posicion); documento.actualizarValorCelda(cierre.Otros_ingresos_colones.ToString("N2")); documento.seleccionarCelda(18, posicion); documento.actualizarValorCelda(cierre.Otros_egresos_colones.ToString("N2")); documento.seleccionarCelda(19, posicion); documento.actualizarValorCelda(cierre.Cheques_locales_colones.ToString("N2")); documento.seleccionarCelda(20, posicion); documento.actualizarValorCelda(cierre.Cheques_exterior_colones.ToString("N2")); documento.seleccionarCelda(21, posicion); documento.actualizarValorCelda(cierre.Cheques_bac_colones.ToString("N2")); documento.seleccionarCelda(22, posicion); documento.actualizarValorCelda(cierre.Salidas_niquel_colones.ToString("N2")); documento.seleccionarCelda(23, posicion); documento.actualizarValorCelda(cierre.Niquel_pendiente_colones.ToString("N2")); documento.seleccionarCelda(24, posicion); documento.actualizarValorCelda(cierre.Entregas_boveda_colones.ToString("N2")); documento.seleccionarCelda(25, posicion); documento.actualizarValorCelda(cierre.Entregas_pendientes_colones.ToString("N2")); documento.seleccionarCelda(26, posicion); documento.actualizarValorCelda(cierre.Faltante_clientes_colones.ToString("N2")); documento.seleccionarCelda(27, posicion); documento.actualizarValorCelda(cierre.Sobrante_clientes_colones.ToString("N2")); documento.seleccionarCelda(28, posicion); documento.actualizarValorCelda(cierre.Faltante_quinientos_colones.ToString("N2")); documento.seleccionarCelda(29, posicion); documento.actualizarValorCelda(cierre.Sobrante_quinientos_colones.ToString("N2")); documento.seleccionarCelda(30, posicion); documento.actualizarValorCelda(cierre.Efectivo_cajero_colones.ToString("N2")); documento.seleccionarCelda(31, posicion); documento.actualizarValorCelda(compra_dolares_colones.ToString("N2")); documento.seleccionarCelda(32, posicion); documento.actualizarValorCelda(cierre.Venta_dolares.ToString("N2")); documento.seleccionarCelda(33, posicion); documento.actualizarValorCelda(saldo_cierre_colones.ToString("N2")); documento.seleccionarCelda(34, posicion); documento.actualizarValorCelda(faltante_sobrante_colones.ToString("N2")); // Dolares documento.seleccionarCelda(13, posicion + 1); documento.actualizarValorCelda(cierre.Ingreso_clientes_dolares.ToString("N2")); documento.seleccionarCelda(14, posicion + 1); documento.actualizarValorCelda(cierre.Reporte_cajero_dolares.ToString("N2")); documento.seleccionarCelda(15, posicion + 1); documento.actualizarValorCelda(diferencia_dolares.ToString("N2")); documento.seleccionarCelda(16, posicion + 1); documento.actualizarValorCelda(cierre.Saldo_dia_anterior_dolares.ToString("N2")); documento.seleccionarCelda(17, posicion + 1); documento.actualizarValorCelda(cierre.Otros_ingresos_dolares.ToString("N2")); documento.seleccionarCelda(18, posicion + 1); documento.actualizarValorCelda(cierre.Otros_egresos_dolares.ToString("N2")); documento.seleccionarCelda(19, posicion + 1); documento.actualizarValorCelda(cierre.Cheques_locales_dolares.ToString("N2")); documento.seleccionarCelda(20, posicion + 1); documento.actualizarValorCelda(cierre.Cheques_exterior_dolares.ToString("N2")); documento.seleccionarCelda(21, posicion + 1); documento.actualizarValorCelda(cierre.Cheques_bac_dolares.ToString("N2")); documento.seleccionarCelda(22, posicion + 1); documento.actualizarValorCelda(cierre.Salidas_niquel_dolares.ToString("N2")); documento.seleccionarCelda(23, posicion + 1); documento.actualizarValorCelda(cierre.Niquel_pendiente_dolares.ToString("N2")); documento.seleccionarCelda(24, posicion + 1); documento.actualizarValorCelda(cierre.Entregas_boveda_dolares.ToString("N2")); documento.seleccionarCelda(25, posicion + 1); documento.actualizarValorCelda(cierre.Entregas_pendientes_dolares.ToString("N2")); documento.seleccionarCelda(26, posicion + 1); documento.actualizarValorCelda(cierre.Faltante_clientes_dolares.ToString("N2")); documento.seleccionarCelda(27, posicion + 1); documento.actualizarValorCelda(cierre.Sobrante_clientes_dolares.ToString("N2")); documento.seleccionarCelda(28, posicion + 1); documento.actualizarValorCelda(cierre.Faltante_quinientos_dolares.ToString("N2")); documento.seleccionarCelda(29, posicion + 1); documento.actualizarValorCelda(cierre.Sobrante_quinientos_dolares.ToString("N2")); documento.seleccionarCelda(30, posicion + 1); documento.actualizarValorCelda(cierre.Efectivo_cajero_dolares.ToString("N2")); documento.seleccionarCelda(31, posicion + 1); documento.actualizarValorCelda(cierre.Compra_dolares.ToString("N2")); documento.seleccionarCelda(32, posicion + 1); documento.actualizarValorCelda(venta_dolares_dolares.ToString("N2")); documento.seleccionarCelda(33, posicion + 1); documento.actualizarValorCelda(saldo_cierre_dolares.ToString("N2")); documento.seleccionarCelda(34, posicion + 1); documento.actualizarValorCelda(faltante_sobrante_dolares.ToString("N2")); }
/// <summary> /// Exportar los datos. /// </summary> private void exportar() { try { DocumentoExcel documento = new DocumentoExcel(); Colaborador coordinador = (Colaborador)cboCoordinador.SelectedItem; documento.seleccionarHoja(1); BindingList <CierreCEF> cierres = rbImpresionCajero.Checked ? cierres = _coordinacion.listarCierresCajerosCoordinador(_fecha, coordinador) : cierres = _coordinacion.listarCierresDigitadoresCoordinador(_fecha, coordinador); if (cierres.Count == 0) { return; } CierreCEF consolidado = new CierreCEF(); // Escribir los encabezados documento.seleccionarCelda("B7"); documento.actualizarValorCelda("Manifiestos"); documento.seleccionarCelda("B8"); documento.actualizarValorCelda("Tulas"); documento.seleccionarCelda("B9"); documento.actualizarValorCelda("Depositos"); documento.seleccionarCelda("B10"); documento.actualizarValorCelda("Cheques"); documento.seleccionarCelda("B11"); documento.actualizarValorCelda("Sobres"); documento.seleccionarCelda("B12"); documento.actualizarValorCelda("Disconformidades"); documento.seleccionarCelda("B13"); documento.actualizarValorCelda("Ingreso Clientes"); documento.seleccionarCelda("B14"); documento.actualizarValorCelda("Reporte Cajero"); documento.seleccionarCelda("B15"); documento.actualizarValorCelda("Diferencia"); documento.seleccionarCelda("B16"); documento.actualizarValorCelda("Saldo Día Anterior"); documento.seleccionarCelda("B17"); documento.actualizarValorCelda("Otros Ingresos"); documento.seleccionarCelda("B18"); documento.actualizarValorCelda("Otros Egresos"); documento.seleccionarCelda("B19"); documento.actualizarValorCelda("Cheques Locales"); documento.seleccionarCelda("B20"); documento.actualizarValorCelda("Cheques del Exterior"); documento.seleccionarCelda("B21"); documento.actualizarValorCelda("Cheques del BAC"); documento.seleccionarCelda("B22"); documento.actualizarValorCelda("Salidas de Niquel"); documento.seleccionarCelda("B23"); documento.actualizarValorCelda("Niquel Pendiente"); documento.seleccionarCelda("B24"); documento.actualizarValorCelda("Entregas de Boveda"); documento.seleccionarCelda("B25"); documento.actualizarValorCelda("Entregas Pendiente"); documento.seleccionarCelda("B26"); documento.actualizarValorCelda("Faltante Clientes"); documento.seleccionarCelda("B27"); documento.actualizarValorCelda("Sobrante Clientes"); documento.seleccionarCelda("B28"); documento.actualizarValorCelda("Faltante Menores 500"); documento.seleccionarCelda("B29"); documento.actualizarValorCelda("Sobrante Menores 500"); documento.seleccionarCelda("B30"); documento.actualizarValorCelda("Efectivo Cajero"); documento.seleccionarCelda("B31"); documento.actualizarValorCelda("Compra de Dolares"); documento.seleccionarCelda("B32"); documento.actualizarValorCelda("Venta de Dolares"); documento.seleccionarCelda("B33"); documento.actualizarValorCelda("Saldo Cierre"); documento.seleccionarCelda("B34"); documento.actualizarValorCelda("Faltante Sobrante"); int posicion = 3; foreach (CierreCEF cierre in cierres) { CierreCEF copia = cierre; if (rbImpresionCajero.Checked) { _coordinacion.obtenerDatosCierreCajero(ref copia); this.escribirCierre(cierre, documento, posicion, cierre.Cajero.ToString()); } else { _coordinacion.obtenerDatosCierreDigitador(ref copia); this.escribirCierre(cierre, documento, posicion, cierre.Digitador.ToString()); } posicion += 2; consolidado.Manifiestos += cierre.Manifiestos; consolidado.Tulas += cierre.Tulas; consolidado.Depositos += cierre.Depositos; consolidado.Cheques += cierre.Cheques; consolidado.Sobres += cierre.Sobres; consolidado.Disconformidades += cierre.Cheques; consolidado.Ingreso_clientes_colones += cierre.Ingreso_clientes_colones; consolidado.Reporte_cajero_colones += cierre.Reporte_cajero_colones; consolidado.Saldo_dia_anterior_colones += cierre.Saldo_dia_anterior_colones; consolidado.Otros_ingresos_colones += cierre.Otros_ingresos_colones; consolidado.Otros_egresos_colones += cierre.Otros_egresos_colones; consolidado.Cheques_locales_colones += cierre.Cheques_locales_colones; consolidado.Cheques_exterior_colones += cierre.Cheques_exterior_colones; consolidado.Cheques_bac_colones += cierre.Cheques_bac_colones; consolidado.Salidas_niquel_colones += cierre.Salidas_niquel_colones; consolidado.Niquel_pendiente_colones += cierre.Niquel_pendiente_colones; consolidado.Entregas_boveda_colones += cierre.Entregas_boveda_colones; consolidado.Entregas_pendientes_colones += cierre.Entregas_pendientes_colones; consolidado.Faltante_clientes_colones += cierre.Faltante_clientes_colones; consolidado.Sobrante_clientes_colones += cierre.Sobrante_clientes_colones; consolidado.Faltante_quinientos_colones += cierre.Faltante_quinientos_colones; consolidado.Sobrante_quinientos_colones += cierre.Sobrante_quinientos_colones; consolidado.Efectivo_cajero_colones += cierre.Efectivo_cajero_colones; consolidado.Ingreso_clientes_dolares += cierre.Ingreso_clientes_dolares; consolidado.Reporte_cajero_dolares += cierre.Reporte_cajero_dolares; consolidado.Saldo_dia_anterior_dolares += cierre.Saldo_dia_anterior_dolares; consolidado.Otros_ingresos_dolares += cierre.Otros_ingresos_dolares; consolidado.Otros_egresos_dolares += cierre.Otros_egresos_dolares; consolidado.Cheques_locales_dolares += cierre.Cheques_locales_dolares; consolidado.Cheques_exterior_dolares += cierre.Cheques_exterior_dolares; consolidado.Cheques_bac_dolares += cierre.Cheques_bac_dolares; consolidado.Salidas_niquel_dolares += cierre.Salidas_niquel_dolares; consolidado.Niquel_pendiente_dolares += cierre.Niquel_pendiente_dolares; consolidado.Entregas_boveda_dolares += cierre.Entregas_boveda_dolares; consolidado.Entregas_pendientes_dolares += cierre.Entregas_pendientes_dolares; consolidado.Faltante_clientes_dolares += cierre.Faltante_clientes_dolares; consolidado.Sobrante_clientes_dolares += cierre.Sobrante_clientes_dolares; consolidado.Faltante_quinientos_dolares += cierre.Faltante_quinientos_dolares; consolidado.Sobrante_quinientos_dolares += cierre.Sobrante_quinientos_dolares; consolidado.Efectivo_cajero_dolares += cierre.Efectivo_cajero_dolares; consolidado.Compra_dolares += cierre.Compra_dolares; consolidado.Venta_dolares += cierre.Venta_dolares; } // Escribir el consolidado y dar formato a la tabla this.escribirCierre(consolidado, documento, posicion, "Consolidado"); posicion++; documento.seleccionarCelda("B2"); documento.actualizarValorCelda("Coordinador: " + coordinador.ToString()); documento.seleccionarSegundaCelda("D2"); documento.ajustarCeldas(AlineacionHorizontal.Centro); documento.seleccionarCelda("B3"); documento.actualizarValorCelda("Fecha: " + _fecha.ToShortDateString()); documento.seleccionarSegundaCelda("D3"); documento.ajustarCeldas(AlineacionHorizontal.Centro); documento.seleccionarCelda("B2"); documento.seleccionarSegundaCelda("D3"); documento.formatoCelda(color_fondo: Color.LightGray); documento.formatoTabla(false); documento.seleccionarCelda("B1"); documento.cambiarTamanoColumna(20); documento.seleccionarCelda("B7"); documento.seleccionarSegundaCelda("B34"); documento.formatoCelda(negrita: true, color_fondo: Color.LightGray); documento.formatoTabla(false); documento.seleccionarCelda("B7"); documento.seleccionarSegundaCelda(12, posicion); documento.formatoTabla(false); documento.seleccionarCelda("B13"); documento.seleccionarSegundaCelda(15, posicion); documento.formatoTabla(false); documento.seleccionarCelda("B16"); documento.seleccionarSegundaCelda(30, posicion); documento.formatoTabla(false); documento.seleccionarCelda("B31"); documento.seleccionarSegundaCelda(32, posicion); documento.formatoTabla(false); documento.mostrar(); documento.cerrar(); } catch (Exception ex) { throw ex; } }
/// <summary> /// Actualizar los datos del cierre. /// </summary> private void actualizarCierre() { try { DateTime fecha = dtpFecha.Value; TipoCambio tipo_cambio = _mantenimiento.obtenerTipoCambio(fecha); CierreCEF cierre = new CierreCEF(); if (tipo_cambio != null && cboCoordinador.SelectedItem != null && (!chkCajero.Checked || cboCajero.SelectedItem != null)) { Colaborador coordinador = (Colaborador)cboCoordinador.SelectedItem; Colaborador cajero = chkCajero.Checked ? (Colaborador)cboCajero.SelectedItem : null; cierre = new CierreCEF(fecha: fecha, cajero: cajero, digitador: _digitador, coordinador: coordinador); if (chkCajero.Checked) { _coordinacion.obtenerDatosCierre(ref cierre); } else { _coordinacion.obtenerDatosCierreDigitador(ref cierre); } // Mostrar los manifiestos y los montos por clientes dgvManifiestos.DataSource = _coordinacion.listarManifiestosDigitador(_digitador, fecha); dgvMontosClientes.DataSource = _coordinacion.listarMontosClientesDigitadorCierre(_digitador, fecha); dgvCierre[MontoColones.Index, 0].Value = cierre.Manifiestos; dgvCierre[MontoColones.Index, 1].Value = cierre.Tulas; dgvCierre[MontoColones.Index, 2].Value = cierre.Depositos; dgvCierre[MontoColones.Index, 3].Value = cierre.Cheques; dgvCierre[MontoColones.Index, 4].Value = cierre.Sobres; dgvCierre[MontoColones.Index, 5].Value = cierre.Disconformidades; dgvCierre[MontoColones.Index, 7].Value = cierre.Ingreso_clientes_colones; dgvCierre[MontoColones.Index, 8].Value = cierre.Reporte_cajero_colones; dgvCierre[MontoColones.Index, 11].Value = cierre.Saldo_dia_anterior_colones; dgvCierre[MontoColones.Index, 12].Value = cierre.Otros_ingresos_colones; dgvCierre[MontoColones.Index, 13].Value = cierre.Otros_egresos_colones; dgvCierre[MontoColones.Index, 14].Value = cierre.Cheques_locales_colones; dgvCierre[MontoColones.Index, 15].Value = cierre.Cheques_exterior_colones; dgvCierre[MontoColones.Index, 16].Value = cierre.Cheques_bac_colones; dgvCierre[MontoColones.Index, 17].Value = cierre.Salidas_niquel_colones; dgvCierre[MontoColones.Index, 18].Value = cierre.Niquel_pendiente_colones; dgvCierre[MontoColones.Index, 19].Value = cierre.Entregas_boveda_colones; dgvCierre[MontoColones.Index, 20].Value = cierre.Entregas_pendientes_colones; dgvCierre[MontoColones.Index, 21].Value = cierre.Faltante_clientes_colones; dgvCierre[MontoColones.Index, 22].Value = cierre.Sobrante_clientes_colones; dgvCierre[MontoColones.Index, 23].Value = cierre.Faltante_quinientos_colones; dgvCierre[MontoColones.Index, 24].Value = cierre.Sobrante_quinientos_colones; dgvCierre[MontoColones.Index, 25].Value = cierre.Efectivo_cajero_colones; dgvCierre[MontoDolares.Index, 7].Value = cierre.Ingreso_clientes_dolares; dgvCierre[MontoDolares.Index, 8].Value = cierre.Reporte_cajero_dolares; dgvCierre[MontoDolares.Index, 11].Value = cierre.Saldo_dia_anterior_dolares; dgvCierre[MontoDolares.Index, 12].Value = cierre.Otros_ingresos_dolares; dgvCierre[MontoDolares.Index, 13].Value = cierre.Otros_egresos_dolares; dgvCierre[MontoDolares.Index, 14].Value = cierre.Cheques_locales_dolares; dgvCierre[MontoDolares.Index, 15].Value = cierre.Cheques_exterior_dolares; dgvCierre[MontoDolares.Index, 16].Value = cierre.Cheques_bac_dolares; dgvCierre[MontoDolares.Index, 17].Value = cierre.Salidas_niquel_dolares; dgvCierre[MontoDolares.Index, 18].Value = cierre.Niquel_pendiente_dolares; dgvCierre[MontoDolares.Index, 19].Value = cierre.Entregas_boveda_dolares; dgvCierre[MontoDolares.Index, 20].Value = cierre.Entregas_pendientes_dolares; dgvCierre[MontoDolares.Index, 21].Value = cierre.Faltante_clientes_dolares; dgvCierre[MontoDolares.Index, 22].Value = cierre.Sobrante_clientes_dolares; dgvCierre[MontoDolares.Index, 23].Value = cierre.Faltante_quinientos_dolares; dgvCierre[MontoDolares.Index, 24].Value = cierre.Sobrante_quinientos_dolares; dgvCierre[MontoDolares.Index, 25].Value = cierre.Efectivo_cajero_dolares; dgvCierre[clmMontoEuros.Index, 7].Value = cierre.Ingreso_clientes_euros; dgvCierre[clmMontoEuros.Index, 8].Value = cierre.Reporte_cajero_euros; dgvCierre[clmMontoEuros.Index, 11].Value = cierre.Saldo_dia_anterior_euros; dgvCierre[clmMontoEuros.Index, 12].Value = cierre.Otros_ingresos_euros; dgvCierre[clmMontoEuros.Index, 13].Value = cierre.Otros_egresos_euros; dgvCierre[clmMontoEuros.Index, 14].Value = cierre.Cheques_locales_euros; dgvCierre[clmMontoEuros.Index, 15].Value = cierre.Cheques_exterior_euros; dgvCierre[clmMontoEuros.Index, 16].Value = cierre.Cheques_bac_euros; dgvCierre[clmMontoEuros.Index, 17].Value = cierre.Salidas_niquel_euros; dgvCierre[clmMontoEuros.Index, 18].Value = cierre.Niquel_pendiente_euros; dgvCierre[clmMontoEuros.Index, 19].Value = cierre.Entregas_boveda_euros; dgvCierre[clmMontoEuros.Index, 20].Value = cierre.Entregas_pendientes_euros; dgvCierre[clmMontoEuros.Index, 21].Value = cierre.Faltante_clientes_euros; dgvCierre[clmMontoEuros.Index, 22].Value = cierre.Sobrante_clientes_euros; dgvCierre[clmMontoEuros.Index, 23].Value = cierre.Faltante_quinientos_euros; dgvCierre[clmMontoEuros.Index, 24].Value = cierre.Sobrante_quinientos_euros; dgvCierre[clmMontoEuros.Index, 25].Value = cierre.Efectivo_cajero_euros; dgvCierre[MontoDolares.Index, 27].Value = cierre.Compra_dolares; dgvCierre[MontoColones.Index, 28].Value = cierre.Venta_dolares; dgvCierre[clmMontoEuros.Index, 27].Value = cierre.Compra_euros; dgvCierre[clmMontoEuros.Index, 28].Value = cierre.Venta_euros; decimal compra_dolares_colones = cierre.Compra_dolares * tipo_cambio.CompraEuros; decimal venta_dolares_dolares = Math.Round(cierre.Venta_dolares / tipo_cambio.VentaEuros, 2); // Calculo de los montos en colones decimal diferencia_colones = cierre.Ingreso_clientes_colones - cierre.Reporte_cajero_colones; decimal saldo_cierre_colones = cierre.Ingreso_clientes_colones + cierre.Saldo_dia_anterior_colones + cierre.Otros_ingresos_colones - cierre.Otros_egresos_colones - cierre.Cheques_locales_colones - cierre.Cheques_exterior_colones - cierre.Cheques_bac_colones - cierre.Salidas_niquel_colones - cierre.Niquel_pendiente_colones - cierre.Entregas_boveda_colones - cierre.Entregas_pendientes_colones - compra_dolares_colones + cierre.Venta_dolares - cierre.Faltante_clientes_colones + cierre.Sobrante_clientes_colones - cierre.Faltante_quinientos_colones + cierre.Sobrante_quinientos_colones; decimal faltante_sobrante_colones = saldo_cierre_colones - cierre.Efectivo_cajero_colones; dgvCierre[MontoColones.Index, 9].Value = diferencia_colones; dgvCierre[MontoColones.Index, 27].Value = compra_dolares_colones; dgvCierre[MontoColones.Index, 30].Value = saldo_cierre_colones; dgvCierre[MontoColones.Index, 31].Value = faltante_sobrante_colones; // Calculo de los montos en dolares decimal diferencia_dolares = cierre.Ingreso_clientes_dolares - cierre.Reporte_cajero_dolares; decimal saldo_cierre_dolares = cierre.Ingreso_clientes_dolares + cierre.Saldo_dia_anterior_dolares + cierre.Otros_ingresos_dolares - cierre.Otros_egresos_dolares - cierre.Cheques_locales_dolares - cierre.Cheques_exterior_dolares - cierre.Cheques_bac_dolares - cierre.Salidas_niquel_dolares - cierre.Niquel_pendiente_dolares - cierre.Entregas_boveda_dolares - cierre.Entregas_pendientes_dolares + cierre.Compra_dolares - venta_dolares_dolares - cierre.Faltante_clientes_dolares + cierre.Sobrante_clientes_dolares - cierre.Faltante_quinientos_dolares + cierre.Sobrante_quinientos_dolares; decimal faltante_sobrante_dolares = saldo_cierre_dolares - cierre.Efectivo_cajero_dolares; dgvCierre[MontoDolares.Index, 9].Value = diferencia_dolares; dgvCierre[MontoDolares.Index, 28].Value = venta_dolares_dolares; dgvCierre[MontoDolares.Index, 30].Value = saldo_cierre_dolares; dgvCierre[MontoDolares.Index, 31].Value = faltante_sobrante_dolares; // Calculo de los montos en euros decimal diferencia_euros = cierre.Ingreso_clientes_euros - cierre.Reporte_cajero_euros; decimal saldo_cierre_euros = cierre.Ingreso_clientes_euros + cierre.Saldo_dia_anterior_euros + cierre.Otros_ingresos_euros - cierre.Otros_egresos_euros - cierre.Cheques_locales_euros - cierre.Cheques_exterior_euros - cierre.Cheques_bac_euros - cierre.Salidas_niquel_euros - cierre.Niquel_pendiente_euros - cierre.Entregas_boveda_euros - cierre.Entregas_pendientes_euros + cierre.Compra_euros - cierre.Venta_euros - cierre.Faltante_clientes_euros + cierre.Sobrante_clientes_euros - cierre.Faltante_quinientos_euros + cierre.Sobrante_quinientos_euros; decimal faltante_sobrante_euros = saldo_cierre_euros - cierre.Efectivo_cajero_euros; dgvCierre[clmMontoEuros.Index, 9].Value = diferencia_euros; //dgvCierre[clmMontoEuros.Index, 28].Value = venta_euros_euros; dgvCierre[clmMontoEuros.Index, 30].Value = saldo_cierre_euros; dgvCierre[clmMontoEuros.Index, 31].Value = faltante_sobrante_euros; } } catch (Excepcion ex) { ex.mostrarMensaje(); } }