private void btn_anular_Click(object sender, EventArgs e) { if (DG.Rows.Count == 0) { return; } if (txt_observacion.Text == "") { S_Utilidades.Mensaje_Informacion("La Observación es Obligatoria"); return; } DialogResult Resultado = MessageBox.Show("Deseas Anular Recibo(s)", "Confirmación", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (Resultado == DialogResult.Yes) { FACTURAS obj_factura = new FACTURAS(); DETALLES_CUOTAS obj_detelle = new DETALLES_CUOTAS(); RECIBOS_COBRADOS obj_recibo = new RECIBOS_COBRADOS(); foreach (DataGridViewRow row in DG.Rows) { if (Convert.ToBoolean(row.Cells[6].Value) == true) { int id_factura = Convert.ToInt32(row.Cells[2].Value); decimal valor_pagado = Convert.ToDecimal(row.Cells[4].Value); obj_factura.ID_FACTURA = id_factura; obj_factura.MONTO_PAGADO = valor_pagado; S_Factura.Actualizar_Montos_Factura_Recibo_Anulado(obj_factura); obj_detelle.ID_FACTURA = id_factura; obj_detelle.NUMERO_CUOTA = Convert.ToInt32(row.Cells[3].Value); obj_detelle.MONTO_PAGADO = valor_pagado; S_Factura.Anular_Detalle_Cuota(obj_detelle); obj_recibo.ID_RECIBO = Convert.ToInt32(row.Cells[0].Value); obj_recibo.ESTADO = "A"; obj_recibo.FECHA_ANULADO = DateTime.Now.ToString(); obj_recibo.ANULADO_POR = S_Utilidades.Datos_Usuario.USUARIO; obj_recibo.NOTA_ANULACION = txt_observacion.Text.Trim(); S_Factura.Anular_Recibo(obj_recibo); } } S_Utilidades.Mensaje_Informacion("Recibos Anulados Correctamente"); Close(); } }