照清

用勤奋之这石,补能力之缺口!

导航

根据公司发展规划,08年将实现固定资产\物流的条码化管理,作为整体项目中的第一部分-----条码固定资产盘点作为第一个和技术实验的部分来处理.经过10天的需求分析和一个礼拜的疯狂开发,现系统已经开始使用,而且反映良好,为此把部分代码与广大博友分享,共同讨论。
说明:设备--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();
        }

      

      

      
    }
}

Hellow!