private void btnAnular_Click(object sender, EventArgs e) { try { DialogResult Opcion; Opcion = MessageBox.Show("Realmente Desea Anular los Registros", "Sistema de Ventas", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (Opcion == DialogResult.OK) { string Codigo; string Rpta = ""; foreach (DataGridViewRow row in dataListado.Rows) { if (Convert.ToBoolean(row.Cells[0].Value)) { Codigo = Convert.ToString(row.Cells[1].Value); Rpta = VentaBL.Anular(Convert.ToInt32(Codigo)); } //Se evalua si se anuló el registro if (Rpta.Equals("OK")) { this.MensajeOk("Se Anuló Correctamente el registro"); } else { this.MensajeError(Rpta); } } //this.Mostrar(); } } catch (Exception ex) { MessageBox.Show(ex.Message + ex.StackTrace); } }
public IHttpActionResult GetAnular(string usuario, int idCliente, int idVenta) { EDEComunicacionBaja objEDEComunicacionBajaResponse; EDEDocumentoElectronico objEDEDocumentoElectronico; EDEEnviarDocumentoResponse objEDERespuesta; FacturacionElectronicaBL oFacturaElectronicaBL = new FacturacionElectronicaBL(); try { VentaBL oVentaBL = new VentaBL(idCliente); RespuestaBE rpta = new RespuestaBE(); VentaBE obe = new VentaBE(); rpta = oVentaBL.Anular(usuario, idCliente, idVenta, out obe); if (rpta.codigo == 1 & rpta.isFactOnline) { DateTime fecha = DateTime.Now; List <VentaBE> lobe = new List <VentaBE>(); lobe.Add(obe); //Generar Estructura Comunicación de Baja objEDEComunicacionBajaResponse = new EDEComunicacionBaja(); objEDEDocumentoElectronico = new EDEDocumentoElectronico(); objEDEComunicacionBajaResponse = oFacturaElectronicaBL.GenerarEstructuraComunicacionBaja(lobe, fecha); //Procesar Comunicación de Baja HelperLog.PutLine("Inicio proceso Facturacion Electronica Comunicación de Baja"); objEDEDocumentoElectronico.RUC = obe.RUC; objEDEDocumentoElectronico.UsuarioSOL = obe.UsuarioSOL; objEDEDocumentoElectronico.ClaveSOL = obe.ClaveSOL; objEDEDocumentoElectronico.URLCertificado = obe.URLCertificado; objEDEDocumentoElectronico.ClaveDigital = obe.ClaveDigital; objEDERespuesta = oFacturaElectronicaBL.ProcesarComunicacionBaja(objEDEComunicacionBajaResponse, objEDEDocumentoElectronico); string msg = ""; if (objEDERespuesta.Exito) { msg = "Se envío a SUNAT Correctamente."; if (objEDERespuesta.Procesado) { HelperLog.PutLine(string.Format("Se han actualizado el registro.")); } else { HelperLog.PutLine(string.Format("No existen registros para actualizar.")); } } else { msg = "Ocurrío un error al enviar a SUNAT."; HelperLog.PutLineError(string.Format(string.Format("Se ha generado el siguiente error: {0}", objEDERespuesta.MensajeError))); } //Actualizar respuesta //ActualizarRespuesta(objEDERespuesta); return(Ok(Models.Util.GetBodyResponse(200, rpta.descripcion + " " + msg))); } else if (rpta.codigo == 1) //FACTURA - BOLETA (SIN FACTURACION ELECTRONICA) { return(Ok(Models.Util.GetBodyResponse(200, rpta.descripcion))); } else if (rpta.codigo == 2) //NOTA DE VENTA { return(Ok(Models.Util.GetBodyResponse(200, rpta.descripcion))); } else { return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron registros."))); } } catch (Exception ex) { /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/ return(Ok(Models.Util.GetBodyResponse(400, ex.Message))); } }