国外用tornado做的网站,河北省建设资格执业中心网站,淘宝优惠网站如何做,wordpress 插件检测PDA端的数据库一般采用的是sqlce数据库,这样与PC端的sql2000中的数据同步就变成了一个问题,如在PDA端处理,PDA端的内存,CPU等都是一个制约因素,其次他们的一个连接稳定及其间的数据传输也是一个难点.本例中通过在PC端的转化后再复制到PDA上面,这样,上面所有的问题都得到了一个有…PDA端的数据库一般采用的是sqlce数据库,这样与PC端的sql2000中的数据同步就变成了一个问题,如在PDA端处理,PDA端的内存,CPU等都是一个制约因素,其次他们的一个连接稳定及其间的数据传输也是一个难点.本例中通过在PC端的转化后再复制到PDA上面,这样,上面所有的问题都得到了一个有效的控制.
一,创建项目,添加引用 二 设计界面,编写代码 程序代码 using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlServerCe;using OpenNETCF.Desktop.Communication;using System.IO;using System.Collections;namespace FyfjmFileChange...{ public partial class MainForm : Form ...{ string _strCurrentDirectory System.IO.Directory.GetCurrentDirectory(); RAPI m_rapi new RAPI(); private ArrayList _arrData new ArrayList(); private string[] Temp; private int sign; public MainForm() ...{ InitializeComponent(); } private void btOpenFile_Click(object sender, EventArgs e) ...{ if (openFileDialog.ShowDialog() DialogResult.OK) ...{ tbSourceLoadFile.Text openFileDialog.FileName; } } private void btSaveFile_Click(object sender, EventArgs e) ...{ if (saveFileDialog.ShowDialog() DialogResult.OK) ...{ tbLoadPurposeFile.Text saveFileDialog.FileName; } } private void btUp1Load_Click(object sender, EventArgs e) ...{ sign 1; lbDownLoadState.Text StatusReady Up……; Cursor.Current Cursors.WaitCursor; DataAcess.DisConnection(); if (tbLoadPurposeFile.Text.Trim().Length 0 tbPdaSourceFile.Text.Trim().Length 0) ...{ try ...{ lbDownLoadState.Text StatusCopying the File……; m_rapi.Connect(false, -1); m_rapi.CopyFileFromDevice(_strCurrentDirectory DataBaseFyfjm.sdf, tbPdaSourceFile.Text.Trim() DataBaseFyfjm.sdf, true); m_rapi.Disconnect(); lbDownLoadState.Text StatusChanging the File……; if (FileFormCeDataBase(tbLoadPurposeFile.Text.Trim())) ...{ MessageBox.Show(File Update successful, System Message); lbDownLoadState.Text Status:Successful……; } else ...{ MessageBox.Show(DataFile Change Failed, System Message); lbDownLoadState.Text Status:Failed……; } } catch (RAPIException ex) ...{ System.Windows.Forms.MessageBox.Show(ex.Message, System Message); lbDownLoadState.Text Status:Failed……; } } Cursor.Current Cursors.Default; } private void btDownLoadStop_Click(object sender, EventArgs e) ...{ Close(); } private void btDownLoad_Click(object sender, EventArgs e) ...{ Cursor.Current Cursors.WaitCursor; if (tbSourceLoadFile.Text.Trim().Length 0 tbPdaPurposeFile.Text.Trim().Length 0) ...{ if (MessageBox.Show(Are you Sure to clear the SKU data, System Message, MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) DialogResult.OK) ...{ try ...{ SqlCeConnection _objConn DataAcess.CreateConnection(_strCurrentDirectory DataBaseFyfjm.sdf); string _strSQL delete from Enquiry; SqlCeCommand _objComm _objConn.CreateCommand(); _objComm.CommandText _strSQL; _objComm.CommandType CommandType.Text; _objComm.ExecuteNonQuery(); } catch (SqlCeException ex) ...{ MessageBox.Show(Delete data Failed ex.Message, System Message, MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1); return; } } if (File.Exists(tbSourceLoadFile.Text.Trim()) FileToCeDataBase(tbSourceLoadFile.Text.Trim())) ...{ try ...{ DataAcess.Dispose(); //在复制之前要关闭数据库 // while (DataAcess._objConn.State ConnectionState.Closed) // { m_rapi.Connect(false, -1); m_rapi.CopyFileToDevice(_strCurrentDirectory DataBaseFyfjm.sdf, tbPdaPurposeFile.Text.Trim() DataBaseFyfjm.sdf, true); m_rapi.Disconnect(); MessageBox.Show(Down File to device successful, System Message); // } } catch (RAPIException ex) ...{ System.Windows.Forms.MessageBox.Show(ex.Message, System Message); } //} } else ...{ MessageBox.Show(The SourceFile not exist, System Message, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } Cursor.Current Cursors.Default; DownLoadProgressBar.Value 0; } } private void UpStop_Click(object sender, EventArgs e) ...{ Close(); } private bool SaveTxt(string strFilePath) ...{ bool _bResult false; DataSet _objDs new DataSet(); try ...{ SqlCeConnection _objConn DataAcess.CreateConnection(_strCurrentDirectory DataBaseFyfjm.sdf); SqlCeCommand _objComm _objConn.CreateCommand(); _objComm.CommandText SELECT SKU FROM Take where Take_sign 0; _objComm.CommandType CommandType.Text; SqlCeDataAdapter _objDa new SqlCeDataAdapter(_objComm); SqlCeCommandBuilder _objCb new SqlCeCommandBuilder(_objDa); _objDa.Fill(_objDs); UpLoadProgressBar.Maximum _objDs.Tables[0].Rows.Count; UpLoadProgressBar.Step 0; System.IO.StreamWriter _objWriter new StreamWriter(strFilePath, false, System.Text.Encoding.UTF8); int i 0; foreach (DataRow _objDr in _objDs.Tables[0].Rows) ...{ string _sLine _objDr[0] , 1; _objWriter.WriteLine(_sLine); i; UpLoadProgressBar.Value i; } _objWriter.Close(); DataAcess.Close(); _objConn.Close(); _objConn.Dispose(); _objConn null; _objComm.Dispose(); _bResult true; } catch (SqlCeException ex) ...{ MessageBox.Show(ex.Message, 系统提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } catch (Exception ex1) ...{ MessageBox.Show(ex1.Message, 系统提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } return _bResult; } private bool FileFormCeDataBase(string strFilePath) ...{ bool _bResult false; string[] _strTemp strFilePath.Split(.); string _strFileStype _strTemp[_strTemp.Length - 1]; switch (_strFileStype.ToUpper()) ...{ /**//*case XLS: _bResult SaveXLS(strFilePath); break; case CSV: _bResult SaveCSV(strFilePath); break;*/ case TXT: switch (sign) ...{ case 1: _bResult SaveTxt(strFilePath); break; case 2: _bResult SumSaveTxt(strFilePath); break; case 3: _bResult AllSaveTxt(strFilePath); break; default: break; } break; default: ...{ MessageBox.Show(File Format Error, System Message, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); break; } } UpLoadProgressBar.Value 0; return _bResult; } private bool FileToCeDataBase(string strFilePath) ...{ bool _bResult false; try ...{ _arrData new ArrayList(); System.IO.StreamReader objectReader new System.IO.StreamReader(strFilePath, System.Text.Encoding.UTF8); string sLine ; while (sLine ! null) ...{ sLine objectReader.ReadLine(); if (sLine ! null) ...{ _arrData.Add(sLine); } } objectReader.Close(); } catch (Exception ex) ...{ MessageBox.Show(ex.Message, 系统提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } SqlCeConnection _objConn DataAcess.CreateConnection(_strCurrentDirectory DataBaseFyfjm.sdf); SqlCeCommand _objComm _objConn.CreateCommand(); DownLoadProgressBar.Maximum _arrData.Count; DownLoadProgressBar.Step 1; for (int j 0; j _arrData.Count; j) ...{ Temp _arrData[j].ToString().Trim().Split(,); _objComm.CommandText string.Format(insert into Enquiry(Code,Color,Size,Price,SKU) values({0},{1},{2},{3},{4}), Temp[0].Trim(), Temp[1].Trim(), Temp[2].Trim(), Temp[3].Trim(), Temp[4].Trim()); _objComm.ExecuteNonQuery(); DownLoadProgressBar.Value; } _arrData.Clear(); _bResult true; _objConn.Close(); _objConn.Dispose(); _objConn null; _objComm.Dispose(); return _bResult; } private void btUp2Load_Click(object sender, EventArgs e) ...{ sign 2; lbDownLoadState.Text StatusReady Up……; Cursor.Current Cursors.WaitCursor; DataAcess.DisConnection(); if (tbLoadPurposeFile.Text.Trim().Length 0 tbPdaSourceFile.Text.Trim().Length 0) ...{ try ...{ lbDownLoadState.Text StatusCopying the File……; m_rapi.Connect(false, -1); m_rapi.CopyFileFromDevice(_strCurrentDirectory DataBaseFyfjm.sdf, tbPdaSourceFile.Text.Trim() DataBaseFyfjm.sdf, true); m_rapi.Disconnect(); lbDownLoadState.Text StatusChanging the File……; if (FileFormCeDataBase(tbLoadPurposeFile.Text.Trim())) ...{ MessageBox.Show(File Update successful, System Message); lbDownLoadState.Text Status:Successful……; } else ...{ MessageBox.Show(DataFile Change Failed, System Message); lbDownLoadState.Text Status:Failed……; } } catch (RAPIException ex) ...{ System.Windows.Forms.MessageBox.Show(ex.Message, System Message); lbDownLoadState.Text Status:Failed……; } } Cursor.Current Cursors.Default; } private bool SumSaveTxt(string strFilePath) ...{ bool _bResult false; DataSet _objDs new DataSet(); try ...{ SqlCeConnection _objConn DataAcess.CreateConnection(_strCurrentDirectory DataBaseFyfjm.sdf); SqlCeCommand _objComm _objConn.CreateCommand(); _objComm.CommandText select SKU,Count(*)as Qty from Take where Take_sign 0 Group By SKU; _objComm.CommandType CommandType.Text; SqlCeDataAdapter _objDa new SqlCeDataAdapter(_objComm); SqlCeCommandBuilder _objCb new SqlCeCommandBuilder(_objDa); _objDa.Fill(_objDs); UpLoadProgressBar.Maximum _objDs.Tables[0].Rows.Count; UpLoadProgressBar.Step 0; System.IO.StreamWriter _objWriter new StreamWriter(strFilePath, false, System.Text.Encoding.UTF8); int i 0; foreach (DataRow _objDr in _objDs.Tables[0].Rows) ...{ string _sLine _objDr[0] , _objDr[1]; _objWriter.WriteLine(_sLine); i; UpLoadProgressBar.Value i; } _objWriter.Close(); DataAcess.Close(); _objConn.Close(); _objConn.Dispose(); _objConn null; _objComm.Dispose(); _bResult true; } catch (SqlCeException ex) ...{ MessageBox.Show(ex.Message, 系统提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } catch (Exception ex1) ...{ MessageBox.Show(ex1.Message, 系统提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } return _bResult; } private void btTake_Click(object sender, EventArgs e) ...{ Cursor.Current Cursors.WaitCursor; if (MessageBox.Show(Are you Sure to clear the Stock Take data, System Message, MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) DialogResult.OK) ...{ try ...{ SqlCeConnection _objConn DataAcess.CreateConnection(_strCurrentDirectory DataBaseFyfjm.sdf); string _strSQL1 delete from Take; SqlCeCommand _objComm _objConn.CreateCommand(); _objComm.CommandText _strSQL1; _objComm.CommandType CommandType.Text; _objComm.ExecuteNonQuery(); DataAcess.Dispose(); //在复制之前要关闭数据库 m_rapi.Connect(false, -1); m_rapi.CopyFileToDevice(_strCurrentDirectory DataBaseFyfjm.sdf, tbPdaPurposeFile.Text.Trim() DataBaseFyfjm.sdf, true); m_rapi.Disconnect(); MessageBox.Show(Delete Successful!, System Message, MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); } catch (SqlCeException ex) ...{ MessageBox.Show(Delete data Failed ex.Message, System Message, MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1); return; } } Cursor.Current Cursors.Default; } private void btAllclear_Click(object sender, EventArgs e) ...{ if (MessageBox.Show(Are you Sure to clear all the data, System Message, MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) DialogResult.OK) ...{ try ...{ SqlCeConnection _objConn DataAcess.CreateConnection(_strCurrentDirectory DataBaseFyfjm.sdf); string _strSQL delete from Take; string _strSQL1 delete from Enquiry; SqlCeCommand _objComm _objConn.CreateCommand(); _objComm.CommandText _strSQL; _objComm.CommandType CommandType.Text; _objComm.ExecuteNonQuery(); _objComm.CommandText _strSQL1; _objComm.CommandType CommandType.Text; _objComm.ExecuteNonQuery(); DataAcess.Dispose(); //在复制之前要关闭数据库 m_rapi.Connect(false, -1); m_rapi.CopyFileToDevice(_strCurrentDirectory DataBaseFyfjm.sdf, tbPdaPurposeFile.Text.Trim() DataBaseFyfjm.sdf, true); m_rapi.Disconnect(); MessageBox.Show(Delete Successful!, System Message, MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); } catch (SqlCeException ex) ...{ MessageBox.Show(Delete data Failed ex.Message, System Message, MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1); return; } } } private void btUp3Load_Click(object sender, EventArgs e) ...{ sign 3; lbDownLoadState.Text StatusReady Up……; Cursor.Current Cursors.WaitCursor; DataAcess.DisConnection(); if (tbLoadPurposeFile.Text.Trim().Length 0 tbPdaSourceFile.Text.Trim().Length 0) ...{ try ...{ lbDownLoadState.Text StatusCopying the File……; m_rapi.Connect(false, -1); m_rapi.CopyFileFromDevice(_strCurrentDirectory DataBaseFyfjm.sdf, tbPdaSourceFile.Text.Trim() DataBaseFyfjm.sdf, true); m_rapi.Disconnect(); lbDownLoadState.Text StatusChanging the File……; if (FileFormCeDataBase(tbLoadPurposeFile.Text.Trim())) ...{ MessageBox.Show(File Update successful, System Message); lbDownLoadState.Text Status:Successful……; } else ...{ MessageBox.Show(DataFile Change Failed, System Message); lbDownLoadState.Text Status:Failed……; } } catch (RAPIException ex) ...{ System.Windows.Forms.MessageBox.Show(ex.Message, System Message); lbDownLoadState.Text Status:Failed……; } } Cursor.Current Cursors.Default; } private bool AllSaveTxt(string strFilePath) ...{ bool _bResult false; DataSet _objDs new DataSet(); try ...{ SqlCeConnection _objConn DataAcess.CreateConnection(_strCurrentDirectory DataBaseFyfjm.sdf); SqlCeCommand _objComm _objConn.CreateCommand(); _objComm.CommandText select SKU,Zone,Take_sign from Take; _objComm.CommandType CommandType.Text; SqlCeDataAdapter _objDa new SqlCeDataAdapter(_objComm); SqlCeCommandBuilder _objCb new SqlCeCommandBuilder(_objDa); _objDa.Fill(_objDs); UpLoadProgressBar.Maximum _objDs.Tables[0].Rows.Count; UpLoadProgressBar.Step 0; System.IO.StreamWriter _objWriter new StreamWriter(strFilePath, false, System.Text.Encoding.UTF8); int i 0; foreach (DataRow _objDr in _objDs.Tables[0].Rows) ...{ string _sLine _objDr[1] , _objDr[0] , 1 , _objDr[2]; _objWriter.WriteLine(_sLine); i; UpLoadProgressBar.Value i; } _objWriter.Close(); DataAcess.Close(); _objConn.Close(); _objConn.Dispose(); _objConn null; _objComm.Dispose(); _bResult true; } catch (SqlCeException ex) ...{ MessageBox.Show(ex.Message, 系统提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } catch (Exception ex1) ...{ MessageBox.Show(ex1.Message, 系统提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); } return _bResult; } }}