private void CancelarPagosCredito()
        {
            FinancieraPago pcredito =
                _entidades.FinancieraPagos.First(
                    cre => cre.Clave == Convert.ToInt32(grvDatos.GetFocusedRowCellDisplayText("Clave")));

            pcredito.Estado = false;
            //_entidades.SubmitChanges();
            FinancieraCredito credito =
                _entidades.FinancieraCreditos.First(
                    cre => cre.Clave == pcredito.CveCredito);

            credito.SaldoActual = credito.SaldoActual + pcredito.Pago;
            credito.Estado      = "Activo";
            FinancieraGrupo grupo = _entidades.FinancieraGrupos.Single(fg => fg.Clave == credito.CveGrupo);

            grupo.Estado = "ACTIVO";
            _entidades.SubmitChanges();
            Insertarcancelacion("Pagos Credito", grvDatos.GetFocusedRowCellDisplayText("Clave"));
        }
        private void botonGuardar_Click(object sender, EventArgs e)
        {
            if ((decimal)txtTotalAPagar.EditValue <= 0)
            {
                return;
            }
            if (!ClsVerificarCaja.CajaEstado())
            {
                MessageBox.Show("La Caja del Dia de hoy ya se ha cerrado\n SISTEMA BLOQUEADO", "Caja Cerrada",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                Application.Exit();
            }
            if (!_guardado)
            {
                if ((int)txtCveCredito.EditValue == 0)
                {
                    MessageBox.Show("Busque Primero el financiamiento para poder cobrar", Application.ProductName);
                    return;
                }
                decimal totalcantidad = 0;
                if (_dTpagos.Rows.Count > 0)
                {
                    //if para saber si va a cobrar pagos de interes y moratorios
                    for (int i = 0; i < _dTpagos.Rows.Count; i++)
                    {
                        if ((bool)_dTpagos.Rows[i]["Pagar"] == false)
                        {
                            continue;
                        }
                        FinancieraPago pagFin = new FinancieraPago()
                        {
                            FechaPago  = dtpFechaPago.DateTime.Date,
                            CveCredito = Convert.ToInt32(txtCveCredito.EditValue),
                            Pago       = (decimal)_dTpagos.Rows[i]["Pago"],
                            Recargo    = (decimal)_dTpagos.Rows[i]["Recargo"],
                            TotalPago  = Convert.ToDecimal(_dTpagos.Rows[i]["TotalAPagar"]),
                            CveUsuario =
                                Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IdUsuarioApp")),
                            Estado = true
                        };


                        totalcantidad += (decimal)_dTpagos.Rows[i]["Pago"];
                        _entidades.FinancieraPagos.InsertOnSubmit(pagFin);
                        _entidades.SubmitChanges();
                        ActualizarCredito(pagFin.Pago);

                        _folios  += pagFin.Clave + "; ";
                        _guardado = true;
                    }
                    FinancieraCredito credito =
                        _entidades.FinancieraCreditos.Single(c => c.Clave == Convert.ToInt32(txtCveCredito.EditValue));
                    txtLetrasRestantes.EditValue = credito.NumeroPlazos - credito.FinancieraPagos.Count(c => c.Estado);
                }

                new ManejadorControles().DesectivarTextBox(gpoContenedor, true);
                MessageBox.Show("Pagos Registrado", Application.ProductName);
                // ModificarSaldoFinanciamiento(_cveFinanciamiento, (totalcantidad + Convert.ToDecimal(txtAbonoCapital.EditValue)));
                ImprimirTicketPago();
            }
            else
            {
                ImprimirTicketPago();
            }
            SendKeys.Send("{TAB}");
        }