示例#1
0
        private void IntegrarDatosThread()
        {
            string sFecha = null;

            try
            {
                IniciarObtenerDatos("Obteniendo datos del servidor...");
                ConfigurarWebService();
                // Se sincroniza la hora del sistema con la hora del servidor
                m_ws.Timeout                         = 10000;
                sFecha                               = m_ws.GetFechaSistema();
                DateTimeHelper.LocalTime             = DateTime.ParseExact(sFecha, "dd/MM/yyyy HH:mm:ss", null);
                m_ws.Timeout                         = m_ConfiguracionWS.TimeOutWebServices;
                m_ConfiguracionWS.TimeOutWebServices = m_ws.Timeout;
                string sIdComunicaciones = "";
                //m_sData = m_ws.CargarDatos(m_rwParametros.Programa, m_rwParametros.Proceso, m_rwParametros.IdTerminal, m_rwParametros.IdSistema, m_rwParametros.Comprimir, ref sIdComunicaciones, m_rwParametros.Parametros);
                m_sData = m_ws.GetDatosCarga(m_rwParametros.IdTerminal, m_rwParametros.Proceso, m_rwParametros.Programa);
                m_rwParametros.IdComunicaciones = sIdComunicaciones;

                IniciarIntegracionDatos("Integrando datos...");
                if (!this.Cancelado)
                {
                    //m_GestorIntegracion.LoadPrimaryKeysInfo();
                    DataSetSerializer dsDatos = new DataSetSerializer(new DatascanCF.Data.SqlServerCe.GestorDatosBase(m_sConexionLocal));

                    if (m_rwParametros.Comprimir)
                    {
                        string datos;
                        //datos = DatascanCF.Compression.DataCompression.UnCompress(Convert.FromBase64String(m_sData), Convert.FromBase64String(m_sData).Length);
                        //DateTime.ParseExact("2010/06/16 00:00:00", "yyyy/MM/dd hh:mm:ss", null);

                        dsDatos.SaveCompressToDatabase(this.m_sData, m_rwParametros.UpdateCurrentRows, this, null);
                    }
                    else
                    {
                        dsDatos.SaveToDatabase(this.m_sData, m_rwParametros.UpdateCurrentRows, this, null);
                    }
                }
                m_ws.ConfirmarCarga(m_rwParametros.IdTerminal, m_rwParametros.Proceso, m_rwParametros.Programa);
                MostrarProcesoTerminado("Proceso de carga de datos terminado exitosamente");
            }
            catch (Exception ex)
            {
                if (m_rwParametros.IdComunicaciones != null)
                {
                    //CONTROLAR POR QUE EL CATCH PUEDE SER POR COMUNICACION Y SE BLOQUEA
                    try
                    {
                        m_ws.ConfirmarCarga(m_rwParametros.IdTerminal, m_rwParametros.Proceso, m_rwParametros.Programa);
                    }
                    catch (Exception ex2)
                    {
                        WriteLog(ex2);
                    }
                }
                MostrarError(ex.GetType().ToString() + "\r\n" + ex.Message);
                WriteLog(ex);
            }
        }
示例#2
0
        private void EnviarDatosThread()
        {
            string sIdComunicaciones = null;

            try
            {
                IniciarEnvioDatos("Obteniendo datos locales...");
                if (m_rwParametros.lstQuery != null)
                {
                    m_sData = null;
                    ConfigurarWebService();
                    //OBTENER LA LISTA DE SQL QUERYS A PROCESAR

                    sIdComunicaciones = Convert.ToString(m_rwParametros.Proceso);
                    m_rwParametros.IdComunicaciones = Convert.ToString(m_rwParametros.Proceso);// sIdComunicaciones;//Igual al tipo
                    CargarGuiaDocumento();
                    DataSetSerializer dsDatos = new DataSetSerializer(new DatascanCF.Data.SqlServerCe.GestorDatosBase(m_sConexionLocal));
                    //m_sData = dsDatos.GetFromDatabase(this.m_QueryList, this);
                    m_sData = dsDatos.GetFromDatabase(m_rwParametros.lstQuery, this);
                    //}
                }

                IniciarEnvioDatos("Enviando datos al servidor");
                if (m_sData != null)
                {
                    if (m_rwParametros.Comprimir)
                    {
                        m_sData = ComprimirArchivos(m_sData);
                    }
                    if (sIdComunicaciones != null)
                    {
                        m_ws.SendDatos(m_rwParametros.IdTerminal, m_rwParametros.Programa, m_rwParametros.Proceso, m_sData);
                        actualizarGuiaDocumento();
                    }
                    else
                    {
                        throw new Exception("Error Obteniendo IdComunicaciones");
                    }
                    MostrarProcesoTerminado("Proceso de descarga de datos terminado exitosamente");
                }
            }
            catch (Exception ex)
            {
                MostrarError(ex.GetType().ToString() + "\r\n" + ex.Message);
                WriteLog(ex);
                //if (sIdComunicaciones != null)
                //{
                //    try
                //    {
                //        m_ws.EnviarDescargaDatos(sIdComunicaciones, ex.Message, null);
                //    }
                //    catch (Exception ex2)
                //    {
                //        WriteLog(ex2);
                //    }
                //}
            }
        }
示例#3
0
 private void Btn_load_Click(object sender, EventArgs e)
 {
     this.m_workInfo.AddInfornation("выбор подходящего набора данных");
     using (OpenFileDialog fd = new OpenFileDialog()
     {
         InitialDirectory = @"c:\",
         Filter = "json files (*.json)|*.json|xml files (*.xml)|*.xml",
         FilterIndex = 1,
         RestoreDirectory = true
     })
     {
         if (fd.ShowDialog() == DialogResult.OK)
         {
             try
             {
                 FileInfo fi = new FileInfo(fd.FileName);
                 if (fi.Extension.Equals(".xml"))
                 {
                     var set = DataSetSerializer.LoadFromXmlFile(fd.FileName);
                     this.m_mathSet = DataSetSerializer.SetToIMathSet(set);
                 }
                 else
                 {
                     using (StreamReader sr = new StreamReader(fd.FileName, Encoding.Default))
                     {
                         String jsonString = sr.ReadToEnd();
                         this.m_mathSet = DataSetSerializer.JsonToMathSet(jsonString);
                     }
                 }
                 this.m_workInfo.AddInfornation("набор данных \'" + fi.Name + "\' загружен");
                 this.m_renderHandler.AddMathSet(this.m_mathSet);
                 this.RenderClasses();
             }
             catch (Exception ex)
             {
                 this.m_workInfo.AddError(ex.Message);
             }
         }
         else
         {
             this.m_workInfo.AddInfornation("операция отменена");
         }
     }
 }
示例#4
0
 private void Btn_saveDataSet_Click(object sender, EventArgs e)
 {
     try
     {
         using (SaveFileDialog fd = new SaveFileDialog()
         {
             InitialDirectory = @"c:\",
             Filter = "json files (*.json)|*.json|xml files (*.xml)|*.xml",
             FilterIndex = 1,
             RestoreDirectory = true
         })
         {
             if (fd.ShowDialog() == DialogResult.OK)
             {
                 FileInfo        fi  = new FileInfo(fd.FileName);
                 SerializableSet set = this.m_renderHandler.GetSerializableSet(fd.FileName);
                 if (fi.Extension.Equals(".xml"))
                 {
                     DataSetSerializer.SaveToXmlFile(fd.FileName, set);
                 }
                 else
                 {
                     using (StreamWriter sw = new StreamWriter(fd.FileName))
                     {
                         sw.WriteLine(DataSetSerializer.SetToJson(set));
                         sw.Flush();
                     }
                 }
                 MessageBox.Show("набор с данными сохранен", "Информация!", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Предупреждение!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
 }