private void tsMenuItemCambiarAListo_Click(object sender, EventArgs e) { txtbxMensajes.Text = ""; txtbxMensajes.Refresh(); if (dgvFacturas.RowCount == 0) { txtbxMensajes.Text = "No hay documentos para procesar. Verifique los criterios de búsqueda."; } else { try { ProcesaCfdi proc = new ProcesaCfdi(lblUsuario.Text); proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); var listaSeleccionadaPorUsuario = filtraListaSeleccionada(listaDeFacturas); //Filtra cfdiTransacciones sólo con docs marcados proc.ProcesaCambioDeStatus(listaSeleccionadaPorUsuario, mainController); filtrarFacturas(); } catch (Exception gr) { reportaProgreso(0, gr.Message); } } }
private async void tsButtonConsultaTimbre_Click(object sender, EventArgs e) { int errores = 0; txtbxMensajes.Text = ""; Parametros Param = new Parametros(DatosConexionDB.Elemento.Intercompany); Param.ExtDefault = this.tabCfdi.SelectedTab.Name; ServiciosOse = new WebServicesOSE(Param.URLwebServPAC); if (!Param.ultimoMensaje.Equals(string.Empty)) { txtbxMensajes.Text = Param.ultimoMensaje; errores++; } if (regla.CfdiTransacciones.RowCount == 0) { txtbxMensajes.Text = "No hay documentos para procesar. Verifique los criterios de búsqueda."; errores++; } if (!filtraListaSeleccionada()) //Filtra cfdiTransacciones sólo con docs marcados { txtbxMensajes.Text = ultimoMensaje; errores++; } if (errores == 0) { HabilitarVentana(false, false, false, false, false, false); ProcesaCfdi proc = new ProcesaCfdi(DatosConexionDB.Elemento, Param); proc.TrxVenta = regla.CfdiTransacciones; proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); pBarProcesoActivo.Visible = true; if (this.tabCfdi.SelectedTab.Name.Equals("tabFacturas")) { await proc.ProcesaConsultaStatusAsync(ServiciosOse); } else { txtbxMensajes.Text = "Presione el tab FACTURAS y luego el botón Consulta." + Environment.NewLine; } //Actualiza la pantalla Parametros Cia = new Parametros(DatosConexionDB.Elemento.Intercompany); //Carga configuración desde xml HabilitarVentana(Cia.emite, Cia.anula, Cia.imprime, Cia.publica, Cia.envia, true); AplicaFiltroYActualizaPantalla(this.tabCfdi.SelectedTab.Name); progressBar1.Value = 0; pBarProcesoActivo.Visible = false; } }
/// <summary> /// Genera XMLs masivamente /// </summary> /// <param name="e"></param> private async void toolStripButton2_Click(object sender, EventArgs e) { int errores = 0; txtbxMensajes.Text = ""; //datos o parametos de conexion de la base de datos Parametros Param = new Parametros(DatosConexionDB.Elemento.Intercompany); //tabCfdi es un control tabcontrol que divide la pantalla en partes //cada parte es referenicado por un pestaña Param.ExtDefault = this.tabCfdi.SelectedTab.Name; //crae un direccion unica de red donde un cliente puede cominicarse con un servicio endpoint ServiciosOse = new WebServicesOSE(Param.URLwebServPAC); //ServiciosOse.TimbraYEnviaASunat() if (!Param.ultimoMensaje.Equals(string.Empty)) { txtbxMensajes.Text = Param.ultimoMensaje; errores++; } if (regla.CfdiTransacciones.RowCount == 0) { txtbxMensajes.Text = "No hay documentos para generar. Verifique los criterios de búsqueda."; errores++; } if (!filtraListaSeleccionada()) //Filtra cfdiTransacciones sólo con docs marcados { txtbxMensajes.Text = ultimoMensaje; errores++; } if (errores == 0 && !ExistenTransaccionesAMedioContabilizar(regla.CfdiTransacciones)) { HabilitarVentana(false, false, false, false, false, false); ProcesaCfdi proc = new ProcesaCfdi(DatosConexionDB.Elemento, Param); proc.TrxVenta = regla.CfdiTransacciones; proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); tsPbProcesoActivo.Style = ProgressBarStyle.Marquee; // await proc.GeneraResumenXmlAsync(ServiciosOse, EstructuraDocsOse); //else if (this.tabCfdi.SelectedTab.Name.Equals("tabFacturas")) { await proc.GeneraDocumentoXmlAsync(ServiciosOse); } } //Actualiza la pantalla HabilitarVentana(Param.emite, Param.anula, Param.imprime, Param.publica, Param.envia, true); AplicaFiltroYActualizaPantalla(this.tabCfdi.SelectedTab.Name); progressBar1.Value = 0; tsPbProcesoActivo.Style = ProgressBarStyle.Blocks; }
/// <summary> /// Generar PDF /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void tsBtnGeneraPDF_Click(object sender, EventArgs e) { int errores = 0; txtbxMensajes.Text = ""; Parametros Param = new Parametros(DatosConexionDB.Elemento.Intercompany); Param.ExtDefault = this.tabCfdi.SelectedTab.Name; ServiciosOse = new WebServicesOSE(Param.URLwebServPAC); if (!Param.ultimoMensaje.Equals(string.Empty)) { txtbxMensajes.Text = Param.ultimoMensaje; errores++; } if (regla.CfdiTransacciones.RowCount == 0) { txtbxMensajes.Text = "No hay documentos para generar. Verifique los criterios de búsqueda."; errores++; } if (!filtraListaSeleccionada()) //Filtra cfdiTransacciones sólo con docs marcados { txtbxMensajes.Text = ultimoMensaje; errores++; } if (errores == 0) { pBarProcesoActivo.Visible = true; HabilitarVentana(false, false, false, false, false, false); ProcesaCfdi proc = new ProcesaCfdi(DatosConexionDB.Elemento, Param); proc.TrxVenta = regla.CfdiTransacciones; proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); pBarProcesoActivo.Visible = true; if (!this.tabCfdi.SelectedTab.Name.Equals("tabResumen")) { await proc.ProcesaObtienePDFAsync(ServiciosOse); } //cfdFacturaPdfWorker _bw = new cfdFacturaPdfWorker(DatosConexionDB.Elemento, Param); //_bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_Completed); //_bw.ProgressChanged += new ProgressChangedEventHandler(bw_Progress); //object[] arguments = { regla.CfdiTransacciones }; //_bw.RunWorkerAsync(arguments); //Actualiza la pantalla HabilitarVentana(Param.emite, Param.anula, Param.imprime, Param.publica, Param.envia, true); AplicaFiltroYActualizaPantalla(this.tabCfdi.SelectedTab.Name); progressBar1.Value = 0; pBarProcesoActivo.Visible = false; } }
private void tsBtnCorrigeRechazo_Click(object sender, EventArgs e) { int errores = 0; txtbxMensajes.Text = ""; Parametros Param = new Parametros(DatosConexionDB.Elemento.Intercompany); Param.ExtDefault = this.tabCfdi.SelectedTab.Name; if (!Param.ultimoMensaje.Equals(string.Empty)) { txtbxMensajes.Text = Param.ultimoMensaje; errores++; } if (regla.CfdiTransacciones.RowCount == 0) { txtbxMensajes.Text = "No hay documentos para procesar. Verifique los criterios de búsqueda."; errores++; } if (!filtraListaSeleccionada()) //Filtra cfdiTransacciones sólo con docs marcados { txtbxMensajes.Text = ultimoMensaje; errores++; } if (errores == 0) { HabilitarVentana(false, false, false, false, false, false); ProcesaCfdi proc = new ProcesaCfdi(DatosConexionDB.Elemento, Param); proc.TrxVenta = regla.CfdiTransacciones; proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); tsPbProcesoActivo.Style = ProgressBarStyle.Marquee; if (this.tabCfdi.SelectedTab.Name.Equals("tabFacturas")) { proc.ReiniciaStatusDeComprobanteRechazadoPorServicioImpuestos(); } else { txtbxMensajes.Text = "Presione el tab FACTURAS y luego el botón Reiniciar Status." + Environment.NewLine; } //Actualiza la pantalla Parametros Cia = new Parametros(DatosConexionDB.Elemento.Intercompany); //Carga configuración desde xml HabilitarVentana(Cia.emite, Cia.anula, Cia.imprime, Cia.publica, Cia.envia, true); AplicaFiltroYActualizaPantalla(this.tabCfdi.SelectedTab.Name); progressBar1.Value = 0; tsPbProcesoActivo.Style = ProgressBarStyle.Blocks; } }
/// <summary> /// Genera XMLs masivamente /// </summary> /// <param name="e"></param> private async void toolStripButton2_Click(object sender, EventArgs e) { int errores = 0; txtbxMensajes.Text = ""; Parametros Param = new Parametros(DatosConexionDB.Elemento.Intercompany); Param.ExtDefault = this.tabCfdi.SelectedTab.Name; ServiciosOse = new WebServicesOSE(Param.URLwebServPAC); if (!Param.ultimoMensaje.Equals(string.Empty)) { txtbxMensajes.Text = Param.ultimoMensaje; errores++; } if (regla.CfdiTransacciones.RowCount == 0) { txtbxMensajes.Text = "No hay documentos para generar. Verifique los criterios de búsqueda."; errores++; } if (!filtraListaSeleccionada()) //Filtra cfdiTransacciones sólo con docs marcados { txtbxMensajes.Text = ultimoMensaje; errores++; } if (errores == 0 && !ExistenTransaccionesAMedioContabilizar(regla.CfdiTransacciones)) { HabilitarVentana(false, false, false, false, false, false); ProcesaCfdi proc = new ProcesaCfdi(DatosConexionDB.Elemento, Param); proc.TrxVenta = regla.CfdiTransacciones; proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); pBarProcesoActivo.Visible = true; if (this.tabCfdi.SelectedTab.Name.Equals("tabResumen")) { await proc.GeneraResumenXmlAsync(ServiciosOse, EstructuraDocsOse); } else { await proc.GeneraDocumentoXmlAsync(ServiciosOse); } } //Actualiza la pantalla HabilitarVentana(Param.emite, Param.anula, Param.imprime, Param.publica, Param.envia, true); AplicaFiltroYActualizaPantalla(this.tabCfdi.SelectedTab.Name); progressBar1.Value = 0; pBarProcesoActivo.Visible = false; }
/// <summary> /// Generar PDF /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void tsBtnGeneraPDF_Click(object sender, EventArgs e) { int errores = 0; txtbxMensajes.Text = ""; Parametros Param = new Parametros(DatosConexionDB.Elemento.Intercompany); Param.ExtDefault = this.tabCfdi.SelectedTab.Name; ServiciosOse = new WebServicesOSE(Param.URLwebServPAC); if (!Param.ultimoMensaje.Equals(string.Empty)) { txtbxMensajes.Text = Param.ultimoMensaje; errores++; } if (regla.CfdiTransacciones.RowCount == 0) { txtbxMensajes.Text = "No hay documentos para generar. Verifique los criterios de búsqueda."; errores++; } if (!filtraListaSeleccionada()) //Filtra cfdiTransacciones sólo con docs marcados { txtbxMensajes.Text = ultimoMensaje; errores++; } if (errores == 0) { tsPbProcesoActivo.Style = ProgressBarStyle.Marquee; HabilitarVentana(false, false, false, false, false, false); ProcesaCfdi proc = new ProcesaCfdi(DatosConexionDB.Elemento, Param); proc.TrxVenta = regla.CfdiTransacciones; proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); if (this.tabCfdi.SelectedTab.Name.Equals("tabFacturas")) { await proc.ProcesaObtienePDFAsync(ServiciosOse); } HabilitarVentana(Param.emite, Param.anula, Param.imprime, Param.publica, Param.envia, true); AplicaFiltroYActualizaPantalla(this.tabCfdi.SelectedTab.Name); progressBar1.Value = 0; tsPbProcesoActivo.Style = ProgressBarStyle.Blocks; } }
private void tsButtonGenerarTxt_Click(object sender, EventArgs e) { int errores = 0; txtbxMensajes.Text = ""; if (listaDeFacturas.Count == 0) { txtbxMensajes.Text = "No hay documentos para generar. Verifique los criterios de búsqueda."; errores++; } try { var listaSeleccionadaPorUsuario = filtraListaSeleccionada(listaDeFacturas); //Filtra cfdiTransacciones sólo con docs marcados if (errores == 0 && !ExistenTransaccionesAMedioContabilizar()) { HabilitarVentana(false, false, false, false, false, false, false); ProcesaCfdi proc = new ProcesaCfdi(lblUsuario.Text); proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); //pBarProcesoActivo.Visible = true; if (this.tabNotaFiscal.SelectedTab.Name.Equals("gpFactura")) { var serviciosPrefeitura = new WebServicesNfe(); proc.GeneraDocumentoTxt(listaSeleccionadaPorUsuario, mainController, serviciosPrefeitura); } } //Actualiza la pantalla HabilitarVentana(true, false, false, false, false, true, true); filtrarFacturas(); tsProgressBar1.Value = 0; //pBarProcesoActivo.Visible = false; } catch (Exception ex) { reportaProgreso(0, ex.Message); } }
private void tsButtonCargaNumNFSe_Click(object sender, EventArgs e) { try { openFileDialog1.Filter = "CSV files|*.csv"; // "Excel Files|*.xls|*.xlsx"; openFileDialog1.Multiselect = false; DialogResult dr = openFileDialog1.ShowDialog(); if (dr == DialogResult.OK) { string[] filenames = openFileDialog1.FileNames; var nombreArchivos = filenames .Select(y => new { archivo = System.IO.Path.GetFileName(y), carpeta = System.IO.Path.GetDirectoryName(y) }); string nombreArchivo = nombreArchivos.Select(a => a.archivo).ToList().FirstOrDefault(); string carpetaOrigen = nombreArchivos.Select(a => a.carpeta).FirstOrDefault(); System.Globalization.CultureInfo culInfo = new System.Globalization.CultureInfo(configuracion.CulturaParaMontos); LectorCSV csv = new LectorCSV(configuracion.CodigosServicioDflt); csv.ProgressHandler += reportaProgreso; var archivoCsv = csv.LeeArchivoCsv(carpetaOrigen, nombreArchivo, culInfo); ProcesaCfdi proc = new ProcesaCfdi(lblUsuario.Text); proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); proc.ProcesaActualizacionDeNumeroFiscalE(archivoCsv, carpetaOrigen, nombreArchivo, mainController); filtrarFacturas(); } } catch (Exception ex) { reportaProgreso(0, ex.Message); } }
private async void tsBtnMotivoRechazo_Click(object sender, EventArgs e) { int errores = 0; txtbxMensajes.Text = ""; txtbxMensajes.Refresh(); Parametros _param = new Parametros(DatosConexionDB.Elemento.Intercompany); ServiciosOse = new WebServicesOSE(_param.URLwebServPAC); if (!_param.ultimoMensaje.Equals(string.Empty)) { txtbxMensajes.Text = _param.ultimoMensaje; errores++; } if (regla.CfdiTransacciones.RowCount == 0) { txtbxMensajes.Text = "No hay documentos para procesar. Verifique los criterios de búsqueda."; errores++; } if (!filtraListaSeleccionada()) //Filtra trxVenta sólo con docs marcados { txtbxMensajes.Text = ultimoMensaje; errores++; } if (tsTextBoxMotivoRechazo.Text.Equals(String.Empty)) { txtbxMensajes.Text = "Ingrese el motivo de la baja."; errores++; } if (tsTextBoxMotivoRechazo.Text.Length > 100) { txtbxMensajes.Text = "El texto del motivo de rechazo es demasiado largo."; errores++; } if (errores == 0) { HabilitarVentana(false, false, false, false, false, false); ProcesaCfdi proc = new ProcesaCfdi(DatosConexionDB.Elemento, _param); proc.TrxVenta = regla.CfdiTransacciones; proc.Progreso += new ProcesaCfdi.LogHandler(reportaProgreso); pBarProcesoActivo.Visible = true; if (this.tabCfdi.SelectedTab.Name.Equals("tabFacturas")) { await proc.ProcesaBajaComprobanteAsync(tsTextBoxMotivoRechazo.Text, ServiciosOse); } //await proc.ProcesaBajaComprobante(tsTextBoxMotivoRechazo.Text); else { txtbxMensajes.Text = "Presione el tab FACTURAS y vuelva a intentar." + Environment.NewLine; } //Actualiza la pantalla //Parametros Cia = new Parametros(DatosConexionDB.Elemento.Intercompany); //Carga configuración desde xml HabilitarVentana(_param.emite, _param.anula, _param.imprime, _param.publica, _param.envia, true); AplicaFiltroYActualizaPantalla(this.tabCfdi.SelectedTab.Name); progressBar1.Value = 0; pBarProcesoActivo.Visible = false; toolStripAuxRechazar.Visible = false; } }