(说明:设备--symbolmc3000;平台:Microsoft Visual Studio 2005;开发语言:C#;数据库平台:SQL Server 2000(SP4)+sdf;运行环境:Microsoft.NET Framework SDK v2.0+windowsCE;分辨率:手持设备(320×320)/电脑平台(1024×768) 。)
第一部分:实现条码基本信息和其他公共信息的下载功能:
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.SqlClient;
using System.Data.SqlServerCe;
namespace EquipmentMS.DataManagement
{
public partial class frm_Datadown : Form
{
private SqlCeConnection cnce = new SqlCeConnection();
private SqlConnection cn = new SqlConnection();
public static string I_str_Data=null;//记录条码数据
public static int I_int_count = 0;//记录记录条数
public frm_Datadown()
{
InitializeComponent();
}
//进行数据下载操作
private static void CopyTable(IDbConnection srcConnection,
SqlCeConnection destConnection,
string queryString,
string TableName)
{
IDbCommand srcCommand = srcConnection.CreateCommand();
srcCommand.CommandText = queryString;
SqlCeCommand destCommand = destConnection.CreateCommand();
destCommand.CommandType = CommandType.TableDirect;
destCommand.CommandText = TableName;
try
{
IDataReader srcReader = srcCommand.ExecuteReader();
SqlCeResultSet resultset = destCommand.ExecuteResultSet(ResultSetOptions.Sensitive | ResultSetOptions.Scrollable | ResultSetOptions.Updatable);
object[] values;
SqlCeUpdatableRecord record;
while (srcReader.Read())
{
I_str_Data = srcReader[0].ToString();
I_int_count = srcReader.FieldCount;
//从条码服务器读数据
values = new object[srcReader.FieldCount];
srcReader.GetValues(values);
//把记录写入设备数据库
record = resultset.CreateRecord();
record.SetValues(values);
resultset.Insert(record);
}
srcReader.Close();
resultset.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btn_quit_Click(object sender, EventArgs e)
{
this.Close();
this.Dispose();
}
private void frm_Datadown_Load(object sender, EventArgs e)
{
this.txt_DownData.Text = "下载数据显示区........";
}
private void button1_Click(object sender, EventArgs e)
{
cn = dataacc.datasql.CreateConnection();
cnce = dataacc.dataaccess.createconnection();
#region 固定资产条码信息下载
IDbCommand srcCommand = cn.CreateCommand();
srcCommand.CommandText = "select * from bab_file";
SqlCeCommand destCommand = cnce.CreateCommand();
destCommand.CommandType = CommandType.TableDirect;
destCommand.CommandText = "bab_file";
try
{
IDataReader srcReader = srcCommand.ExecuteReader();
SqlCeResultSet resultset = destCommand.ExecuteResultSet(ResultSetOptions.Sensitive | ResultSetOptions.Scrollable | ResultSetOptions.Updatable);
object[] values;
SqlCeUpdatableRecord record;
while (srcReader.Read())
{
this.txt_DownData.Text = srcReader[0].ToString();
//从条码服务器读数据
values = new object[srcReader.FieldCount];
srcReader.GetValues(values);
//把记录写入设备数据库
record = resultset.CreateRecord();
record.SetValues(values);
resultset.Insert(record);
}
srcReader.Close();
resultset.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
#endregion
// CopyTable(cn, cnce, "select * from bab_file", "bab_file");
//cn = dataacc.datasql.CreateConnection();
//cnce = dataacc.dataaccess.createconnection();
//部门表下载
CopyTable(cn, cnce, "select * from gem_file", "gem_file");
//用户表下载
CopyTable(cn, cnce, "select * from zx_file where zx04='0001' and zx07!='001'", "zx_file");
MessageBox.Show("数据下载完毕!", "提示");
cn.Close();
cnce.Close();
}
}
}
用勤奋之这石,补能力之缺口!