コード例 #1
0
        private void FormBuscarCreditoPorCliente_Load(object sender, EventArgs e)
        {
            if (tipo_de_busqueda == 1) //si es 1 solo muestra creditos vigentes
            {
                txtBuscarCliente.Text = cliente;
                gridControlClietnesConCredito.DataSource = ControllerPagoCredito.MostrarClienteConCredito(texto_inciail, 0);
                gridControlClietnesConCredito.ForceInitialize();
                gridViewClientesConCredito.BestFitColumns();

                gridControlCreditosPorCliente.DataSource = ControllerPagoCredito.MostrarCreditoPorCliente(id_cliente, 0);
                gridControlCreditosPorCliente.ForceInitialize();
                gridViewCreditosPorCliente.BestFitColumns();

                //gridViewCreditosPorCliente.Columns[5].Visible = false;
                //gridViewCreditosPorCliente.Columns[6].Visible = false;
                layoutControlItemRecargos.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
            }
            else // de lo contrario o si es 2 muestra vigentes y cancelados creditos
            {
                this.Text = "Otros movimientos";
                gridViewCreditosPorCliente.Columns[4].Visible = true;
                gridViewCreditosPorCliente.Columns[5].Visible = false;
                gridViewCreditosPorCliente.Columns[6].Visible = true;
                layoutControlItemRecargos.Visibility          = DevExpress.XtraLayout.Utils.LayoutVisibility.Always;
                pagar = false;
            }
        }
コード例 #2
0
 private void FormModalObservaciones_Load(object sender, EventArgs e)
 {
     txtDescripcion.Focus();
     txtNumeroCuota.Text = numero_cuota;
     gridControlObservacionesCuota.DataSource = ControllerPagoCredito.MostrarDetalleObservacionesPorCuota(id_promesas_pago_det);
     gridControlObservacionesCuota.ForceInitialize();
     gridViewObservacionesCuota.BestFitColumns();
 }
コード例 #3
0
 private void FormRecargos_Load(object sender, EventArgs e)
 {
     spinEditMonto.Focus();
     dateEdit1.EditValue            = DateTime.Now;
     txtEnvio.Text                  = envio.ToString();
     txtSerie.Text                  = serie;
     gridControlRecargos.DataSource = ControllerPagoCredito.MostrarDetalleDeRecargos(id_promesa_pago_enc);
     gridControlRecargos.ForceInitialize();
     gridViewRecargos.BestFitColumns();
 }
コード例 #4
0
        private void btnOperar_Click(object sender, EventArgs e)
        {
            bool   grabar = true;
            string rpta   = "";

            if (operacion.Equals("RECHAZAR"))
            {
                if (string.IsNullOrWhiteSpace(txtRazon.Text))
                {
                    grabar = false;
                }
            }
            if (grabar)
            {
                MPagoCreditoEncabezado pago = new MPagoCreditoEncabezado();
                pago.IdTienda          = Configuraciones.Configuraciones.idtienda;
                pago.IdPagoCreditoEnc  = id_pago_recibo_enc;
                pago.IdTipoPagoCredito = 4;
                pago.IdEstadoRecibo    = id_estado_recibo;
                pago.Opcion            = opcion;

                List <MPagoCreditoDetalle> detalleInsercion = new List <MPagoCreditoDetalle>();
                for (int i = 0; i < gridViewDetallePago.DataRowCount; i++)
                {
                    if (Convert.ToDecimal(gridViewDetallePago.GetRowCellValue(i, "monto_pagar")) > 0)
                    {
                        MPagoCreditoDetalle detalle = new MPagoCreditoDetalle();
                        detalle.IdTienda         = Configuraciones.Configuraciones.idtienda;
                        detalle.IdPromesaPagoDet = Convert.ToInt32(gridViewDetallePago.GetRowCellValue(i, "id_promesa_pago_det"));
                        detalle.MontoCuota       = Convert.ToDecimal(gridViewDetallePago.GetRowCellValue(i, "monto"));
                        detalle.Opcion           = 0;
                        detalleInsercion.Add(detalle);
                    }
                }

                rpta = ControllerPagoCredito.ActualizarEstadoDelPago(pago, detalleInsercion);
                if (rpta == "OK")
                {
                    XtraMessageBox.Show("LA OPERACION SE REALIZO CORRECTAMENTE", Configuraciones.Configuraciones.NombreDelSistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    FormPagosTransito form = FormPagosTransito.GetInstancia();
                    form.MostrarPagosEnTransitoPendientesDeAplicar();
                    this.Close();
                }
                else
                {
                    XtraMessageBox.Show("Ocurrio un error al realizar la operación, por favor consulte a su administrador de datos " + rpta, "Erro del sistema", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
コード例 #5
0
 private void txtBuscarCliente_EditValueChanged(object sender, EventArgs e)
 {
     if (tipo_de_busqueda == 1)
     {
         gridControlClietnesConCredito.DataSource = ControllerPagoCredito.MostrarClienteConCredito(txtBuscarCliente.Text, 0);
         gridControlClietnesConCredito.ForceInitialize();
         gridViewClientesConCredito.BestFitColumns();
     }
     else
     {
         gridControlClietnesConCredito.DataSource = ControllerPagoCredito.MostrarClienteConCredito(txtBuscarCliente.Text, 1);
         gridControlClietnesConCredito.ForceInitialize();
         gridViewClientesConCredito.BestFitColumns();
     }
 }
コード例 #6
0
        public void MostrarPromesasPago(int id_promesa_pago_enc, int id_cliente, string cliente, string envio)
        {
            decimal saldo = 0;

            this.id_cliente          = id_cliente;
            this.id_promesa_pago_enc = id_promesa_pago_enc;
            txtNumeroDeEnvio.Text    = envio;
            txtCliente.Text          = cliente;
            gridControlDetallePromesasPago.DataSource = ControllerPagoCredito.MostrarDetallePromesasDePagoParaCobros(id_promesa_pago_enc);
            gridControlDetallePromesasPago.ForceInitialize();
            gridViewDetallePromesasPago.BestFitColumns();
            for (int i = 0; i < gridViewDetallePromesasPago.DataRowCount; i++)
            {
                saldo = saldo + (Convert.ToDecimal(gridViewDetallePromesasPago.GetRowCellValue(i, "saldo")));
            }
            spinEditSaldoAcutal.Value = saldo;
        }
コード例 #7
0
 private void gridViewClientesConCredito_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
 {
     if (tipo_de_busqueda == 1)
     {
         gridControlCreditosPorCliente.DataSource = ControllerPagoCredito.MostrarCreditoPorCliente(Convert.ToInt32(gridViewClientesConCredito.GetRowCellValue(e.RowHandle, "id_cliente")), 0);
         gridControlCreditosPorCliente.ForceInitialize();
         gridViewCreditosPorCliente.BestFitColumns();
         id_cliente = Convert.ToInt32(gridViewClientesConCredito.GetRowCellValue(e.RowHandle, "id_cliente"));
     }
     if (tipo_de_busqueda == 2)
     {
         gridControlCreditosPorCliente.DataSource = ControllerPagoCredito.MostrarCreditoPorCliente(Convert.ToInt32(gridViewClientesConCredito.GetRowCellValue(e.RowHandle, "id_cliente")), 1);
         gridControlCreditosPorCliente.ForceInitialize();
         gridViewCreditosPorCliente.BestFitColumns();
         id_cliente = Convert.ToInt32(gridViewClientesConCredito.GetRowCellValue(e.RowHandle, "id_cliente"));
     }
 }
コード例 #8
0
        private void btnRecargos_Click(object sender, EventArgs e)
        {
            if (gridViewCreditosPorCliente.DataRowCount > 0)
            {
                FormRecargos recargosModal = new FormRecargos();
                recargosModal.id_promesa_pago_enc = Convert.ToInt32(gridViewCreditosPorCliente.GetRowCellValue(gridViewCreditosPorCliente.FocusedRowHandle, "id_promesa_pago"));
                recargosModal.correlativo         = Convert.ToInt32(gridViewCreditosPorCliente.GetRowCellValue(gridViewCreditosPorCliente.FocusedRowHandle, "cuotas"));
                recargosModal.envio = Convert.ToInt32(gridViewCreditosPorCliente.GetRowCellValue(gridViewCreditosPorCliente.FocusedRowHandle, "correlativo"));
                recargosModal.serie = Convert.ToString(gridViewCreditosPorCliente.GetRowCellValue(gridViewCreditosPorCliente.FocusedRowHandle, "serie"));
                recargosModal.ShowDialog();

                gridControlCreditosPorCliente.DataSource = ControllerPagoCredito.MostrarCreditoPorCliente(Convert.ToInt32(gridViewClientesConCredito.GetRowCellValue(gridViewClientesConCredito.FocusedRowHandle, "id_cliente")), 1);
                gridControlCreditosPorCliente.ForceInitialize();
                gridViewCreditosPorCliente.BestFitColumns();
                id_cliente = Convert.ToInt32(gridViewClientesConCredito.GetRowCellValue(gridViewClientesConCredito.FocusedRowHandle, "id_cliente"));
            }
        }
コード例 #9
0
        private void btnProceder_Click(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();

            dt = ControllerPagoCredito.MostrarPagosNotas(Configuraciones.Configuraciones.idtienda, Convert.ToDateTime(dateEditInicial.EditValue), Convert.ToDateTime(dateEditFinal.EditValue), Convert.ToInt32(radioGroup1.EditValue), 0);
            gridControl1.DataSource = dt;
            gridControl1.ForceInitialize();
            gridView1.BestFitColumns();
            if (dt.Rows.Count > 0)
            {
                gridView1.Columns["id_recibos_anticipo"].Visible = false;
                gridView1.Columns["id_tipo_pago"].Visible        = false;
                gridView1.Columns["id_cliente"].Visible          = false;
                gridView1.Columns["id_promesa_pago"].Visible     = false;
                gridView1.Columns["BOLETA"].Visible = false;
                gridView1.Columns["BANCO"].Visible  = false;
            }
        }
コード例 #10
0
        private void btnbuscar_Click(object sender, EventArgs e)
        {
            if (tbserieenvio.Text != null && tbcorrelativo.Text != "")
            {
                DataTable dt          = new DataTable();
                string    serie       = lueserie.Text;
                int       correlativo = int.Parse(tbcorrelativo.Text);
                var       info_recibo = (from a in db.tbl_recibos_anticipos
                                         where a.activo == true &&
                                         a.serie == serie &&
                                         a.correlativo == correlativo &&
                                         a.id_tienda == Configuraciones.Configuraciones.idtienda
                                         select a).FirstOrDefault();


                if (info_recibo == null)
                {
                    MessageBox.Show("No existen resultados!");
                    tbenvio.Text            = null;
                    tbserieenvio.Text       = null;
                    tbcorrelativoenvio.Text = null;
                    tbcliente.Text          = null;
                    tbmontofactura.Text     = null;
                }
                else
                {
                    tbenvio.Text            = info_recibo.id_recibos_anticipo.ToString();
                    tbserieenvio.Text       = info_recibo.serie;
                    tbcorrelativoenvio.Text = info_recibo.correlativo.ToString();
                    tbcliente.Text          = info_recibo.nombre_cliente;
                    tbmontofactura.Text     = info_recibo.monto_recibo.ToString();

                    dt = ControllerPagoCredito.MostrarDetalleDePago(Configuraciones.Configuraciones.idtienda, info_recibo.id_recibos_anticipo);
                    if (dt.Rows.Count > 0)
                    {
                        gridControlDetalleDePago.Visible    = true;
                        gridControlDetalleDePago.DataSource = dt;
                        gridControlDetalleDePago.ForceInitialize();
                        gridViewDetallePago.BestFitColumns();
                    }
                }
            }
        }
コード例 #11
0
        private void FormOperarPago_Load(object sender, EventArgs e)
        {
            gridControlDetalleDePago.DataSource = ControllerPagoCredito.MostrarDetalleDePago(Configuraciones.Configuraciones.idtienda, id_pago_recibo_enc);
            gridControlDetalleDePago.ForceInitialize();
            gridViewDetallePago.BestFitColumns();

            if (operacion.Equals("APLICAR"))
            {
                btnOperar.Text          = "APLICAR";
                lyRazon.Visibility      = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
                lyNumeroPago.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
            }
            if (operacion.Equals("RECHAZAR"))
            {
                btnOperar.Text     = "RECHAZAR";
                lyRazon.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always;
                dxErrorProvider1.SetError(txtRazon, "ESTE CAMPO ES OBLIGATORIO");
                lyNumeroPago.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
            }
        }
コード例 #12
0
 private void btnCalcular_Click(object sender, EventArgs e)
 {
     if (spinEdit1.Value > 0)
     {
         if (XtraMessageBox.Show("DESA CONTINUAR", "CALCULO DE MORAS", MessageBoxButtons.YesNo) != DialogResult.No)
         {
             string rpt = "";
             rpt = ControllerPagoCredito.CalcularMoras(Configuraciones.Configuraciones.idtienda, Configuraciones.Configuraciones.idusuario, Convert.ToInt32(spinEdit1.Value));
             if (rpt.Equals("OK"))
             {
                 XtraMessageBox.Show("LAS MORAS SE APLICARON CON EXITO", "CALCULO DE MORAS");
                 this.Close();
             }
             else
             {
                 XtraMessageBox.Show("NO SE APLICARON MORAS", "CALCULO DE MORAS");
             }
         }
     }
 }
コード例 #13
0
        private void simpleButton1_Click(object sender, EventArgs e)
        {
            bool   agregar = true;
            string rpta    = "";

            if (Convert.ToDecimal(spinEditMonto.EditValue) == 0)
            {
                XtraMessageBox.Show("El monto debe ser mayor a 0", "Agregando recargos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                agregar = false;
                spinEditMonto.Focus();
            }
            if (string.IsNullOrWhiteSpace(txtDescripcion.Text))
            {
                XtraMessageBox.Show("Debe escribir la descripción de forma correcta", "Agregando recargos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                agregar = false;
                txtDescripcion.Focus();
            }

            if (agregar)
            {
                if (gridViewRecargos.DataRowCount > 0)
                {
                    int utlima_fila = (gridViewRecargos.DataRowCount) - 1;
                    correlativo = Convert.ToInt32(gridViewRecargos.GetRowCellValue(utlima_fila, "correlativo"));
                }
                rpta = ControllerPagoCredito.AgregarRecargos(Configuraciones.Configuraciones.idtienda, id_promesa_pago_enc, Configuraciones.Configuraciones.idusuario, correlativo + 1, Convert.ToDecimal(spinEditMonto.EditValue), txtDescripcion.Text, Convert.ToDateTime(dateEdit1.EditValue), 2);
                if (rpta == "OK")
                {
                    gridControlRecargos.DataSource = ControllerPagoCredito.MostrarDetalleDeRecargos(id_promesa_pago_enc);
                    gridControlRecargos.ForceInitialize();
                    gridViewRecargos.BestFitColumns();
                    spinEditMonto.EditValue = 0;
                    txtDescripcion.Text     = string.Empty;
                    spinEditMonto.Focus();
                }
                else
                {
                    XtraMessageBox.Show("Ocurrio un erro al crear el recargo, por favor consulte a su administrador de datos", "Error recargos", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
コード例 #14
0
        private void txtBuscar_EditValueChanged(object sender, EventArgs e)
        {
            if (!string.IsNullOrWhiteSpace(txtBuscar.Text))
            {
                bool      mostrar = true;
                DataTable dt      = new DataTable();

                if (string.IsNullOrEmpty(txtBuscar.Text))
                {
                    dt = ControllerPagoCredito.MostrarDeudores(Configuraciones.Configuraciones.idtienda, "______000");
                    gridControl1.DataSource = dt;
                    gridControl1.ForceInitialize();
                    gridView1.BestFitColumns();
                }


                if (mostrar)
                {
                    dt = ControllerPagoCredito.MostrarDeudores(Configuraciones.Configuraciones.idtienda, txtBuscar.Text);
                    if (dt.Rows.Count > 0)
                    {
                        gridControl1.DataSource = dt;
                        gridControl1.ForceInitialize();
                        gridView1.BestFitColumns();
                    }
                    else
                    {
                        gridControl1.DataSource = dt;
                        gridControl1.ForceInitialize();
                        gridView1.BestFitColumns();
                    }
                }
                gridView1.Columns["id_venta_enc"].Visible  = false;
                gridView1.Columns["id_cliente"].Visible    = false;
                gridView1.Columns["id_tipo_venta"].Visible = false;
                gridView1.Columns["activo"].Visible        = false;
            }
        }
コード例 #15
0
 public void MostrarPagosEnTransitoPendientesDeAplicar()
 {
     gridControlPagos.DataSource = ControllerPagoCredito.MostrarPagosEnTransito(Configuraciones.Configuraciones.idtienda);
     gridControlPagos.ForceInitialize();
     gridViewPasgosTransito.BestFitColumns();
 }
コード例 #16
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            bool   guardar = true;
            string rpta = "", descripcionPago;

            if (radioGroupTiposPagos.SelectedIndex == 3)
            {
                if (string.IsNullOrWhiteSpace(txtNumeroBoleta.Text))
                {
                    XtraMessageBox.Show("Debe escribir el número de boleta", "Realizando pagos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    guardar = false;
                }
                if (string.IsNullOrWhiteSpace(dateEditFechaPago.Text))
                {
                    XtraMessageBox.Show("Debe indicar la fecha de pago del deposito", "Realizando pagos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    guardar = false;
                }
                if (string.IsNullOrWhiteSpace(txtBanco.Text))
                {
                    XtraMessageBox.Show("Debe indicar el banco de pago", "Realizando pagos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    guardar = false;
                }
            }
            if (radioGroupTiposPagos.SelectedIndex != 3)
            {
                guardar = true;
            }
            if (radioGroupTiposPagos.SelectedIndex < 0)
            {
                XtraMessageBox.Show("Debe indicar el tipo de pago", "Realizando pagos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                guardar = false;
            }

            //for (int i = 0; i < gridViewDetallePromesasPago.DataRowCount; i++)
            //{
            //    if (Convert.ToDecimal(gridViewDetallePromesasPago.GetRowCellValue(i, "monto_pagar")) > 0)
            //    {

            //    }
            //    if (Convert.ToDecimal(gridViewDetallePromesasPago.GetRowCellValue(i, "monto_pagar")) == 0)
            //    {
            //        XtraMessageBox.Show("EL monto de uno o varios pagos debe ser mayor a 0", "Realizando pagos", MessageBoxButtons.OK, MessageBoxIcon.Information);
            //        guardar = false;
            //        break;
            //    }
            //}
            if (guardar)
            {
                MPagoCreditoEncabezado pago = new MPagoCreditoEncabezado();
                pago.MontoRecibido      = spinEditAbonoTotal.Value;
                pago.IdTipoPagoCredito  = Convert.ToInt32(radioGroupTiposPagos.EditValue);
                pago.IdCliente          = id_cliente;
                pago.NombreCliente      = txtCliente.Text;
                pago.DetalleRecibo      = radioGroupTiposPagos.SelectedIndex == 3 ? "Banco: " + txtBanco.Text + ", Número de boleta: " + txtNumeroBoleta.Text + ", Fecha de pago: " + dateEditFechaPago.EditValue.ToString() : "";
                pago.Banco              = txtBanco.Text;
                pago.NumeroDeposito     = txtNumeroBoleta.Text;
                pago.FechaDepositoBanco = Convert.ToDateTime(dateEditFechaPago.EditValue);
                pago.IdUsuario          = Configuraciones.Configuraciones.idusuario;
                pago.IdTienda           = Configuraciones.Configuraciones.idtienda;
                pago.IdSerie            = 7;
                pago.Serie              = "A";
                pago.IdOrigenAnticipo   = 3;

                List <MPagoCreditoDetalle> detalleInsercion = new List <MPagoCreditoDetalle>();
                for (int i = 0; i < gridViewDetallePromesasPago.DataRowCount; i++)
                {
                    if (Convert.ToDecimal(gridViewDetallePromesasPago.GetRowCellValue(i, "monto_pagar")) > 0)
                    {
                        MPagoCreditoDetalle detalle = new MPagoCreditoDetalle();
                        detalle.IdTienda         = Configuraciones.Configuraciones.idtienda;
                        detalle.IdPromesaPagoDet = Convert.ToInt32(gridViewDetallePromesasPago.GetRowCellValue(i, "id_promesa_pago_det"));
                        detalle.IdUsuario        = Configuraciones.Configuraciones.idusuario;
                        detalle.MontoPagar       = Convert.ToDecimal(gridViewDetallePromesasPago.GetRowCellValue(i, "monto_pagar"));
                        detalle.MontoCuota       = Convert.ToDecimal(gridViewDetallePromesasPago.GetRowCellValue(i, "saldo1"));
                        detalle.MontoInteres     = 0;
                        detalleInsercion.Add(detalle);
                    }
                }

                rpta = ControllerPagoCredito.RealizarPago(pago, detalleInsercion);
                if (rpta == "OK")
                {
                    XtraMessageBox.Show("EL PAGO SE REALIZO CORRECTAMENTE", Configuraciones.Configuraciones.NombreDelSistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    gridControlDetallePromesasPago.DataSource = ControllerPagoCredito.MostrarDetallePromesasDePagoParaCobros(id_promesa_pago_enc);
                    gridControlDetallePromesasPago.ForceInitialize();
                    gridViewDetallePromesasPago.BestFitColumns();
                    spinEditAbonoTotal.Value = 0;

                    ControllerMovimientoDinero.GrabarEntrada(ControllerPagoCredito.IdPagoEnc
                                                             , Configuraciones.Configuraciones.idtienda
                                                             , Configuraciones.Configuraciones.idusuario
                                                             , 7
                                                             , spinEditAbonoTotal.Value
                                                             , "A"
                                                             , 0);

                    if (gridViewDetallePromesasPago.DataRowCount == 0)
                    {
                        string res = "";
                        res = ControllerPagoCredito.CancelarCreditoVenta(id_promesa_pago_enc);
                        if (res != "OK")
                        {
                            XtraMessageBox.Show("Error al cancelar el credito");
                        }
                    }

                    Ventas.Complementos.ImprimirRecibo recibo = new Ventas.Complementos.ImprimirRecibo(ControllerPagoCredito.IdPagoEnc);
                    recibo.ShowDialog();


                    FormBuscarCreditoPorCliente modalBuscar = new FormBuscarCreditoPorCliente(1, principal);
                    modalBuscar.cliente    = txtCliente.Text;
                    modalBuscar.id_cliente = this.id_cliente;
                    modalBuscar.ShowDialog();
                }
                else
                {
                    XtraMessageBox.Show("Ocurrio un error al realizar el pago, por favor consulte a su administrador de datos " + rpta, "Erro del sistema", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
コード例 #17
0
        private void btnimprimirenvio_Click(object sender, EventArgs e)
        {
            if (tbenvio.Text != "" && tbenvio.Text != null)
            {
                DialogResult anular = MessageBox.Show("¿Desea anular este recibo?", "Anular recibo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                {
                    if (anular == DialogResult.Yes)
                    {
                        string rpta = "";
                        CargarTablas();
                        int id_recibo = int.Parse(tbenvio.Text);

                        (from a in db.tbl_venta_abonos
                         where a.id_recibo_anticipo == id_recibo &&
                         a.activo == true
                         select a).ToList().ForEach(a => a.activo = false);

                        tbl_venta_abonos.Update(db);

                        var recibos = (from a in db.tbl_recibos_anticipos
                                       where a.id_recibos_anticipo == id_recibo &&
                                       a.activo == true
                                       select a).ToList();

                        recibos.ForEach(a => a.activo = false);


                        List <MPagoCreditoDetalle> detalleInsercion = new List <MPagoCreditoDetalle>();
                        for (int i = 0; i < gridViewDetallePago.DataRowCount; i++)
                        {
                            MPagoCreditoDetalle detalle = new MPagoCreditoDetalle();
                            detalle.IdTienda         = Configuraciones.Configuraciones.idtienda;
                            detalle.IdPromesaPagoDet = Convert.ToInt32(gridViewDetallePago.GetRowCellValue(i, "id_promesa_pago_det"));
                            detalle.MontoCuota       = Convert.ToDecimal(gridViewDetallePago.GetRowCellValue(i, "monto"));
                            detalle.Opcion           = 1;
                            detalleInsercion.Add(detalle);
                        }

                        rpta = ControllerPagoCredito.ActualizarEstadoDelPago(detalleInsercion);

                        tbl_recibos_anticipos.Update(db);



                        CargarTablas();
                        if (rpta == "OK")
                        {
                            MessageBox.Show("¡Recibo anulado exitosamente!", "Anulación de recibo", MessageBoxButtons.OK);
                            tbenvio.Text            = null;
                            tbserieenvio.Text       = null;
                            tbcorrelativoenvio.Text = null;
                            tbcliente.Text          = null;
                            tbmontofactura.Text     = null;
                            this.Close();
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show("Busque el recibo que desea anular");
            }
        }