protected void sincronizarCierreCaja(bool enviarCorreo) { try { if (this.conexionInternet) { frm_cargando sincronizar = new frm_cargando(this.cajaActiva.Id, (enviarCorreo)?this.obtenerDatos():null); sincronizar.Owner = this; sincronizar.ShowDialog(); } else { if (Mensaje.confirmacion("Caja cerrada satisfactoriamente.\n Desea generar el archivo de cierre?")) { if (this.fbd_buscar.ShowDialog() == System.Windows.Forms.DialogResult.OK) { string mensaje = ""; //string nuevoNumero = EmpresaTR.obtenerNumerodeCierre(ref mensaje).ToString(); Sincronizacion xml = new Sincronizacion(); XmlDocument documento = xml.generarXmlCierreCaja(this.cajaActiva.Id); documento.Save(this.fbd_buscar.SelectedPath + @"\CierreCaja_" + DateTime.Now.ToShortDateString().Replace("/", "") + "_" + this.cajaActiva.Id + ".xml"); Sincronizacion.actualizarEstadoUsb(ref mensaje, this.cajaActiva.Id); Mensaje.informacion("Archivo generado satisfactoriamente."); } } } } catch (Exception e) { Mensaje.error(e.Message); } }
private void BtnSincronizar_Click(object sender, EventArgs e) { ProgressDialog progressBar; ColaSincronizacion _cola = new ColaSincronizacion(); AlertDialog.Builder alert = new AlertDialog.Builder(this); alert.SetTitle("Sincronización Manual"); alert.SetMessage("¿Desea sincronizar los datos manualmente?"); alert.SetPositiveButton("Sí", (senderAlert, args) => { if (Conectividad.IsConnected) { progressBar = new ProgressDialog(this); progressBar.SetCancelable(true); progressBar.SetMessage("Sincronizando con Central...."); progressBar.SetProgressStyle(ProgressDialogStyle.Spinner); progressBar.Progress = 0; progressBar.Max = 100; progressBar.Show(); new Thread(new ThreadStart(delegate { Sincronizacion _sincro = new Sincronizacion(); _sincro.Sincronizar(); RunOnUiThread(() => { progressBar.Dismiss(); txtAvisosSinSincronizar.Text = String.Format("Sin sincronizar - {0}", new Database().PendientesDeSincronizar().ToString()); Toast.MakeText(this, "Sincronizando", ToastLength.Short).Show(); }); })).Start(); } else { Utilidades.MostrarMensaje(this, Constantes.SinConexion); } }); alert.SetNegativeButton("No", (senderAlert, args) => { Toast.MakeText(this, "Cancelado!", ToastLength.Short).Show(); }); Dialog dialog = alert.Create(); dialog.Show(); }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); if (!Settings._TieneAcceso || !Settings._RecordarAcceso) { SetContentView(Resource.Layout.Login); //Lanzo sincronización //StartService(new Android.Content.Intent(this, typeof(Sincronizador.Sincronizador))); btnLogin = FindViewById <Button>(Resource.Id.button1); txtNombreUsuario = FindViewById <EditText>(Resource.Id.editText1); txtPassUsuario = FindViewById <EditText>(Resource.Id.editText2); swButton_RecordarAcceso = FindViewById <Switch>(Resource.Id.Recodar_DatosAcceso); swButton_RecordarAcceso.Checked = Settings._RecordarAcceso; this.Window.AddFlags(Android.Views.WindowManagerFlags.Fullscreen); this.Window.AddFlags(Android.Views.WindowManagerFlags.KeepScreenOn); btnLogin.Click += BtnLogin_Click; } else { if (Conectividad.IsConnected) { progressBar = new ProgressDialog(this); progressBar.SetCancelable(true); progressBar.SetMessage("Actualizando Datos ..."); progressBar.SetProgressStyle(ProgressDialogStyle.Spinner); progressBar.Progress = 0; progressBar.Max = 100; progressBar.Show(); new Thread(new ThreadStart(delegate { Sincronizacion s = new Sincronizacion(); s.Sincronizar(); RunOnUiThread(() => { progressBar.Dismiss(); StartActivity(typeof(MenuApp)); }); })).Start(); } else { StartActivity(typeof(MenuApp)); } } }
public void IngresaSincronizacion(EntityConnectionStringBuilder connection, Sincronizacion ss) { var context = new samEntities(connection.ToString()); context.sincronizacion_MDL(ss.VKORG, ss.HY_INTERFAZ, ss.NAME, ss.SECUENCIA, ss.ACTIVA, ss.BBP_TABL, ss.PERIODO, ss.SELEC, ss.SINCRONIZACION, ss.CARGA_INICIAL); }
private void BtnLogin_Click(object sender, System.EventArgs e) { if (txtNombreUsuario.Text == string.Empty || txtPassUsuario.Text == string.Empty) { Utilidades.MostrarMensaje(this, Constantes.DatosIncompletos); } else { progressBar = new ProgressDialog(this); progressBar.SetCancelable(true); progressBar.SetMessage("Actualizando Datos ..."); progressBar.SetProgressStyle(ProgressDialogStyle.Spinner); progressBar.Progress = 0; progressBar.Max = 100; progressBar.Show(); new Thread(new ThreadStart(delegate { Settings._Usuario = txtNombreUsuario.Text; if (Conectividad.IsConnected) { Sincronizacion s = new Sincronizacion(); s.Sincronizar(); } RunOnUiThread(() => { progressBar.Dismiss(); if (Login.TieneAcceso(txtNombreUsuario.Text, txtPassUsuario.Text)) { Settings._RecordarAcceso = swButton_RecordarAcceso.Checked; Settings._TieneAcceso = true; StartActivity(typeof(MenuApp)); } else { Utilidades.MostrarMensaje(this, Constantes.SinPermiso); } }); })).Start(); } }
protected void verificarSincronizacionContinua(int idCaja = -1) { this.backgroundThread = new Thread( new ThreadStart(() => { string mensaje = ""; int valor = (idCaja == -1)?ParametroTR.consultarIntXNombre("sincronizarOculta"):1; string mensajeOmitir = (idCaja == -1)?ParametroTR.ConsultarStringXNombre(ref mensaje, "mensajeOmitir"):""; bool sincronizarGuias = ParametroTR.ConsultarBool("guiaRemision"); if (valor == 1) { Sincronizacion sincronizacion = new Sincronizacion(); try { bool estado = false; while (estado == false) { ParametroTR.actualizarParametroEntero("sincronizarManual", 0); sincronizacion.setTextoCotrol(this.sba_estado, "Verificado sus cajas pendientes..."); List <int> cajas = null; if (idCaja == -1) { cajas = sincronizacion.cajasPendientes(); } else { cajas = new List <int>(); cajas.Add(idCaja); } estado = true; if (cajas != null) { foreach (int caja in cajas) { try { bool resultado = sincronizacion.sincronizarPartes(caja, this.sba_estado, mensajeOmitir); bool resultadoGuias = true; if (sincronizarGuias) { resultadoGuias = sincronizacion.sincronizarPartesGuias(caja, this.sba_estado, mensajeOmitir); } estado = estado && resultado && resultadoGuias; } catch (Exception e) { Mail correo = new Mail(); correo.enviarCorreoError(caja, "Error al tratar de sincronizar:" + e.Message); estado = false; string a = ""; } } sincronizacion.setTextoCotrol(this.sba_estado, (estado) ? "Ventas sincronizadas satisfactoriamente." : "Error al sincronizar ventas, se reintentará nuevamente."); } else { sincronizacion.setTextoCotrol(this.sba_estado, "Sincronización al día."); } } } catch (Exception e) { sincronizacion.setTextoCotrol(this.sba_estado, "No se pudo verificar el estado de sincronización "); Mail correo = new Mail(); correo.enviarCorreoError(0, "Error al sincronizar cajas:" + e.Message); } finally { ParametroTR.actualizarParametroEntero("sincronizarManual", 1); } } })); this.backgroundThread.IsBackground = true; backgroundThread.Start(); }
protected void sincronizarPartesGuias() { Sincronizacion.actualizarEstadoGuias(idCaja); List <int> cantidad = Sincronizacion.cantidadGuias(this.idCaja); Sincronizacion xml = new Sincronizacion(); bool errorSincronizar = false; bool sincronizoCorrecto = false; string errores = ""; if (cantidad[0] == 0) { Sincronizacion.actualizarEstadoInternetGuias("C", idCaja); if (this.sincronizacionCorrecta) { Mensaje.informacion("Ventas sincronizadas satisfactoriamente."); } else { Mensaje.advertencia(this.mensajeError); } this.cerrarFormulario(DialogResult.OK); return; } for (int i = 0; i < cantidad[2]; i++) { /* 0->n°facturas * 1->cantidad a sincronizar * 2->n° veces a sincronizar */ int inicio = ((i * cantidad[1]) + 1); int fin = (inicio + cantidad[1]) - 1; if (fin > cantidad[0]) { fin = cantidad[0]; } this.setTextoEstado("Recopilando Información Guías de Remisión: " + inicio + " a " + fin + " de " + cantidad[0]); XmlDocument documento = xml.generarXmlGuias(this.idCaja, inicio - 1, cantidad[1], (i == cantidad[2] - 1 && !errorSincronizar)); //System.Threading.Thread.Sleep(1000); this.setTextoEstado("Subiendo Guías: " + inicio + " a " + fin + " de " + cantidad[0]); //documento.Save(@"c:\xml\cierre" + idCaja + "_" + i + ".xml"); /*SincronizarVentasService servicio = new SincronizarVentasService(); * servicio.Timeout = 800000; * System.Net.ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(ValidarCertificado); * sincronizar_ventas parametro = new sincronizar_ventas(); * parametro.empresa = Global.idEmpresa; * parametro.xml_ventas = General.scapeCharacters(documento.InnerXml); * sincronizar_ventasResponse respuesta = servicio.sincronizar_ventas(parametro); * string resultado = respuesta.sincronizar_ventasResult; * XmlDocument resultadoXml = new XmlDocument(); * resultadoXml.LoadXml(resultado); * XmlNode raiz = resultadoXml.GetElementsByTagName("root")[0]; * bool respuestaXml = Convert.ToBoolean(raiz["respuesta"].InnerText); * string errorXml = raiz["error"].InnerText; * if (respuestaXml) * { * Sincronizacion.actualizarEstadoTempGuias(idCaja, inicio - 1, cantidad[1]); * sincronizoCorrecto = true; * } * else * { * errores += errorXml + "\n"; * errorSincronizar = true; * }*/ } if (errorSincronizar && sincronizoCorrecto) { Sincronizacion.actualizarEstadoGuias(idCaja); Sincronizacion.actualizarEstadoInternetGuias("I", idCaja); if (this.Visible) { string mensajeMostrar = "Guías sincronizadas incompletas.\n" + errores; if (this.sincronizacionCorrecta) { Mensaje.advertencia(mensajeMostrar); } else { Mensaje.advertencia(this.mensajeError + "\n" + mensajeMostrar); } this.cerrarFormulario(DialogResult.Ignore); } else { Mensaje.mostrarNotificacion("Sincronización", "Ventas sincronizadas incompletas."); } this.enviarCorreoError(idCaja, errores); } else if (errorSincronizar) { string mensajeMostrar = "Ocurrio un error al sincronizar las guías: \n" + errores; if (this.sincronizacionCorrecta) { Mensaje.advertencia(mensajeMostrar); } else { Mensaje.advertencia(this.mensajeError + "\n" + mensajeMostrar); } if (this.Visible) { this.cerrarFormulario(DialogResult.Cancel); } this.enviarCorreoError(idCaja, errores); } else if (sincronizoCorrecto) { Sincronizacion.actualizarEstadoInternetGuias("C", idCaja); Sincronizacion.actualizarEstadoGuias(idCaja); if (this.Visible) { string mensajeMostrar = "Guías sincronizadas satisfactoriamente."; if (this.sincronizacionCorrecta) { Mensaje.informacion("Ventas y " + mensajeMostrar); } else { Mensaje.advertencia(this.mensajeError + "\n" + mensajeMostrar); } this.cerrarFormulario(DialogResult.OK); } else { Mensaje.mostrarNotificacion("Ventas Sincronizadas", "Las ventas han sido sincronizado"); } } else { Mensaje.error("No hubo respuesta del servidor"); if (this.Visible) { this.cerrarFormulario(DialogResult.Cancel); } } }
protected void cambiarEstadoCaja() { if (validar()) { if (this.btn_accion.Text == "Abrir") { Caja caja = this.llenarDatosApertura(); CajaTR tran = new CajaTR(caja); String msn = ""; if (tran.abrirCaja(ref msn)) { this.btn_accion.Enabled = false; this.txt_monto.Enabled = false; this.enviarMailApertura(caja.Id); Mensaje.informacion("La caja ha sido abierta correctamente."); this.Close(); } else { Mensaje.advertencia(msn); } } else if (this.btn_accion.Text == "Cerrar") {// cerrar if (!validarCierre()) { return; } this.backgroundThread.Join(); Caja caja = llenarDatosCerrar(); CajaTR tran = new CajaTR(caja); String msn = ""; int deboSincronizar = ParametroTR.consultarIntXNombre("sincronizarAlCerrar"); int deboEnviarCorreo = ParametroTR.consultarIntXNombre("enviarCorreo"); int turnoSincronizar = Sincronizacion.ultimoSincronizado(ref msn); turnoSincronizar++; if (tran.cerrarCaja(ref msn, this.txt_datafast.Text, this.txt_medianet.Text, this.txt_redApoyo.Text)) { this.btn_accion.Text = "Imprimir"; if (deboSincronizar == 1 && turnoSincronizar == this.cajaActiva.Id) { this.sincronizarCierreCaja((deboEnviarCorreo == 1)); } else if (deboEnviarCorreo == 1 && this.conexionInternet) { this.correoCierreCaja(); } else { Mensaje.informacion("Caja cerrada satisfactoriamente."); } } else { Mensaje.advertencia(msn); } } else { if (Impresion.IsPrinterOnline(Global.nombreImpresora)) { this.imprimirCierreCaja(); } else { Mensaje.advertencia("La impresora no se encuentra disponible."); } } } }