private void btnAnularMetodoPago_Click(object sender, EventArgs e) { SiNo = new VentanasMensajes.frmMensajeSiNo(); SiNo.LblMensaje.Text = "¿Está seguro que desea dar de baja el registro?"; SiNo.ShowDialog(); if (SiNo.DialogResult == DialogResult.OK) { eliminarRegistro(); } }
private void btnEliminar_Click(object sender, EventArgs e) { if (dgvDatos.Rows.Count == 0) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = "No hay ítems para eliminar."; ok.ShowDialog(); } else { if (verificarDocumentoPago() == 1) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = "No puede realizar ediciones de un ingreso que se ha ingresado con la comanda."; ok.ShowDialog(); } else { if (consultarRegistro() == true) { SiNo = new VentanasMensajes.frmMensajeSiNo(); SiNo.LblMensaje.Text = "Está seguro que desea eliminar el ingreso. Tenga en cuenta que puede alterar el arqueo de caja."; SiNo.ShowDialog(); if (SiNo.DialogResult == DialogResult.OK) { eliminarRegistro(); } else { limpiar(); } } } } }
private void btnEliminar_Click(object sender, EventArgs e) { if (iIdRegistro == 0) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = "No hay un registro seleccionado para eliminar."; ok.ShowDialog(); } else { if (consultarRegistro() > 0) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = "Existen registros relacionados con la selección. No puede eliminar el registro."; ok.ShowDialog(); } else if (consultarRegistro() == -1) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = "Existe un error al consultar si el registro se utilizó en otros registros."; ok.ShowDialog(); } else { SiNo = new VentanasMensajes.frmMensajeSiNo(); SiNo.LblMensaje.Text = "¿Está seguro que desea eliminar el registro seleccionado?"; SiNo.ShowDialog(); if (SiNo.DialogResult == DialogResult.OK) { eliminarRegistro(); } } } }
private async void btnReenviar_Click(object sender, EventArgs e) { iNumeroRegistros = 0; iErrorGenerados = 0; iErrorFirmados = 0; iErrorEnviarSRI = 0; iErrorConsultarXMLSRI = 0; iErrorEnviarMail = 0; iEnviadosExitosamente = 0; Task <bool> task; bool bConsulta; for (int i = 0; i < dgvDatos.Rows.Count; i++) { if (Convert.ToBoolean(dgvDatos.Rows[i].Cells["colMarca"].Value) == true) { iNumeroRegistros++; } } if (dgvDatos.Rows.Count == 0) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = "No existen comprobantes electrónicos para procesar."; ok.ShowDialog(); return; } else if (iNumeroRegistros == 0) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = "No hay registros seleccionados para procesar la información."; ok.ShowDialog(); return; } else { if (conexionInternet() == false) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = "No hay una conexión a internet. Favor verifique la conectividad."; ok.ShowDialog(); return; } else { SiNo = new VentanasMensajes.frmMensajeSiNo(); SiNo.LblMensaje.Text = "¿Desea procesar los comprobantes electrónicos emitidos?"; SiNo.ShowDialog(); if (SiNo.DialogResult == DialogResult.OK) { this.Cursor = Cursors.WaitCursor; buscarDirectorio(); //AQUI TRAER EL LOGO //----------------------------------------------------------------- logo = new Clases_Factura_Electronica.ClaseObtenerLogo(); if (logo.obtenerRutaLogo() == false) { ok = new VentanasMensajes.frmMensajeOK(); ok.LblMensaje.Text = logo.sRespuesta; ok.ShowDialog(); return; } else { sRutaLogo = logo.sRespuesta; } //SE INSTANCIA EL LOGO EN MEMORIA PARA ENVIAR if (sRutaLogo == "") { Bitmap My_Logo = Properties.Resources.SIN_LOGO; var ms = new MemoryStream(); My_Logo.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); Logo_Factura = ms.ToArray(); } else { if (File.Exists(sRutaLogo)) { Logo_Factura = File.ReadAllBytes(sRutaLogo); } else { Bitmap My_Logo = Properties.Resources.SIN_LOGO; var ms = new MemoryStream(); My_Logo.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); Logo_Factura = ms.ToArray(); } } //----------------------------------------------------------------- //AQUI SE INICIA EL PROCESO DE SINCRONIZACION CON EL SRI for (int i = 0; i < dgvDatos.Rows.Count; i++) { if (Convert.ToBoolean(dgvDatos.Rows[i].Cells["colMarca"].Value) == true) { sNumeroDocumento = "F" + dgvDatos.Rows[i].Cells["colEstablecimiento"].Value.ToString() + dgvDatos.Rows[i].Cells["colPtoEmision"].Value.ToString() + dgvDatos.Rows[i].Cells["colNumeroComprobante"].Value.ToString().PadLeft(9, '0'); //USANDO TASK ASYNC AWAIT // PASO 1.- INVOCAR A FUNCION PARA PRIMERO GENERAR EL XML task = new Task <bool>(() => generarXML(Convert.ToInt64(dgvDatos.Rows[i].Cells["colIdFactura"].Value))); task.Start(); dgvDatos.Rows[i].Cells["colEstado"].Value = "Generando XML..."; bConsulta = await task; if (bConsulta == true) { dgvDatos.Rows[i].Cells["colEstado"].Value = "XML Generado."; dgvDatos.Rows[i].Cells["colEstado"].Style.BackColor = Color.Lime; } else { dgvDatos.Rows[i].Cells["colEstado"].Value = "Error generar XML."; dgvDatos.Rows[i].Cells["colEstado"].Style.BackColor = Color.Red; goto retorna; } // PASO 2.- INVOCAR A FUNCION PARA FIRMAR EL XML task = new Task <bool>(() => firmarArchivoXML(sNumeroDocumento)); task.Start(); dgvDatos.Rows[i].Cells["colEstado"].Value = "Firmando XML..."; bConsulta = await task; if (bConsulta == true) { dgvDatos.Rows[i].Cells["colEstado"].Value = "XML Firmado."; dgvDatos.Rows[i].Cells["colEstado"].Style.BackColor = Color.Lime; } else { dgvDatos.Rows[i].Cells["colEstado"].Value = "Error firmar XML."; dgvDatos.Rows[i].Cells["colEstado"].Style.BackColor = Color.Red; goto retorna; } Thread.Sleep(3000); //PASO 5.- ENVIAR AL CORREO ELECTRONICO DEL CLIENTE task = new Task <bool>(() => enviarMailReenvio(i, Convert.ToInt64(dgvDatos.Rows[i].Cells["colIdFactura"].Value), sNumeroDocumento)); task.Start(); dgvDatos.Rows[i].Cells["colEstado"].Value = "Enviando al correo..."; bConsulta = await task; if (bConsulta == true) { dgvDatos.Rows[i].Cells["colEstado"].Value = "Correo enviado."; dgvDatos.Rows[i].Cells["colEstado"].Style.BackColor = Color.Yellow; } else { dgvDatos.Rows[i].Cells["colEstado"].Value = "Error al enviar al correo."; dgvDatos.Rows[i].Cells["colEstado"].Style.BackColor = Color.Red; goto retorna; } dgvDatos.Rows[i].Cells["colMarca"].Value = false; } retorna : { } } this.Cursor = Cursors.Default; chkSeleccionar.Checked = false; chkSeleccionar.Text = "Seleccionar todos los registros"; } } } }