Post Print Search
帖子排序:    
帖子发起人: rebel2004   发起时间: 2005-12-05 22:36   回复: 20
rebel2004 离线,最后访问时间: 2007-12-25 16:24:27 rebel2004

发帖数前25位
男

注册: 2005-12-05
位置: 上海,杭州
发贴: 9
基于Pocket PC的销售管理系统(可下载)
附件: PPC销售管理系统.rar
楼主  2005-12-05, 22:36 Reply Quote

十分荣幸,能在此版块发第一帖。这是我本人做的第一个CE平台下的软件。本来想商业化,可惜没有人感兴趣!!!

晚上好冷啊!怎么不过秋天直接到了冬天啊!!!

IP 地址: 已记录   报告
breakstring 离线,最后访问时间: 2008-3-31 13:35:42 被遗弃的小指



发帖数前10位
男

注册: 2005-11-28
发贴: 91
Re: 基于Pocket PC的销售管理系统(可下载)
第2楼  2005-12-05, 22:39 Reply Quote
Good。。。。。。

本版的第一个软件
强烈支持!!!

希望在本版看到越来越多大家自己开发出的软件~~
IP 地址: 已记录   报告
rebel2004 离线,最后访问时间: 2007-12-25 16:24:27 rebel2004

发帖数前25位
男

注册: 2005-12-05
位置: 上海,杭州
发贴: 9
Re: 基于Pocket PC的销售管理系统(可下载)
第3楼  2005-12-05, 22:41 Reply Quote

不好意思,忘了说一下使用过程:

安装与部署要求 Pocket PC(HP5550),SQL CE数据库 WINDOWS CE操作系统ActiveSync3.7或者更高版本

       安装过程

一,            安装ActiveSync3.7或者更高版本;

二,            安装客户端配置软件;将硬件设备连接到电脑上;进入“客户端配置软件”文件夹将“armv4”文件夹中的“sqlce.dev.wce4.armv4”和“sqlce.wce4.armv4”通过数据线,红外或蓝牙等传送到设备上;具体如何传送,请见http://www.microsoft.com/china/windowsmobile

三,            将安装文件“销售管理系统.exe通过与上一步相同的方法传送到设备上;

部署过程

安装客户端配置软件;在设备上,打开“sqlce.dev.wce4.armv4 和“sqlce.wce4.armv4”文件;

登陆的用户名:liuhui

     密码:800707

IP 地址: 已记录   报告
bboobb 离线,最后访问时间: 2006-11-14 23:29:12 bboobb

发帖数前200位

注册: 2005-12-05
发贴: 1
Re: 基于Pocket PC的销售管理系统(可下载)
第4楼  2005-12-05, 23:07 Reply Quote
小弟,刚学PPC 的数据库开发,学习一下.
IP 地址: 已记录   报告
mikyit 离线,最后访问时间: 2006-2-21 11:54:44 miky.yan

发帖数前150位

注册: 2005-12-06
发贴: 2
Re: 基于Pocket PC的销售管理系统(可下载)
第5楼  2005-12-06, 14:00 Reply Quote
頂一下~~~
IP 地址: 已记录   报告
rebel2004 离线,最后访问时间: 2007-12-25 16:24:27 rebel2004

发帖数前25位
男

注册: 2005-12-05
位置: 上海,杭州
发贴: 9
Surprise [:O] 补充原代码
第6楼  2005-12-06, 22:12 Reply Quote
using System; using System.Data; using System.Data.SqlServerCe; using System.Data.Common; namespace Foundation { /// <summary> /// 本类为:SQLCE数据库的一些基本操作。在使用前,先将数据库的连接字符串确认好,然后使用; /// 本类为rebel2004整理,目的为了方便大家更好的使用SQLCE数据库; /// 本类为开源代码; /// 有使用本类所产生的一切后果由使用者自负 /// </summary> public class DataBase { private String Server, dbName, UID, Password; private String SqlCeConnectionString; private SqlCeConnection con; public DataBase() { // 初始化数据库连接字符串 Server = "Input Correct string!"; dbName = "Input Correct string!"; UID = "Input Correct string!"; Password = "Input Correct string!"; SqlCeConnectionString = "user id=" + UID + ";password=" + Password + ";initial catalog=" + dbName + ";data source=" + Server + ";Connect Timeout=30"; } /// <summary> /// 打开数据库连接。 /// </summary> private void Open() { if (con == null) { con = new SqlCeConnection(SqlCeConnectionString); con.Open(); } } /// <summary> /// 关闭数据库连接。 /// </summary> public void Close() { if (con != null) { con.Close(); this.Dispose(); } } /// <summary> /// Release resources. /// 释放资源。 /// </summary> public void Dispose() { // make sure connection is closed if (con != null) { con.Dispose(); con = null; } } /// <summary> /// 测试数据库连接是否成功 /// </summary> /// <param name="server">server</param> /// <param name="database">database</param> /// <param name="uid">用户名</param> /// <param name="password">密码</param> /// <returns>bool</returns> public bool TestConnection(string server, string database, string uid, string password) { try { con = null; SqlCeConnectionString = "user id=" + uid + ";password=" + password + ";initial catalog=" + database + ";data source=" + server + " "; this.Open(); } catch { return false; } return true; } /// <summary> /// 创建command对象以便执行SqlCe语句。 /// </summary> /// <param name="SqlCe">SqlCe Text.</param> /// <returns>Command object.</returns> private SqlCeCommand CreateCommand(string SqlCe) { // make sure connection is open Open(); SqlCeCommand cmd = new SqlCeCommand(SqlCe, con); cmd.CommandType = CommandType.Text; return cmd; } /// <summary> /// 创建带Prameters的Command对象 /// </summary> /// <param name="SqlCeCe">SqlCe语句</param> /// <param name="prams">SqlCeParameters参数</param> /// <returns>Command对象</returns> public SqlCeCommand CreateCommand(String SqlCe, SqlCeParameter[] prams) { Open(); SqlCeCommand cmd = new SqlCeCommand(SqlCe,con); cmd.CommandType = CommandType.Text; cmd.Parameters.Clear(); if (prams != null) { foreach (SqlCeParameter parameter in prams) cmd.Parameters.Add(parameter); } return cmd; } /// <summary> /// 执行一个无返回的SqlCe语句 /// </summary> /// <param name="SqlCe">SqlCe语句</param> /// <returns>执行结果</returns> public bool QueryExec(string SqlCe) { SqlCeCommand cmd = CreateCommand(SqlCe); try { cmd.ExecuteNonQuery(); } catch(Exception ex) { ex.Message.ToString(); return false; } finally { this.Close(); } return true; } /// <summary> /// 执行一个无返回的SqlCe语句,带parameters /// </summary> /// <param name="SqlCe">SqlCe语句</param> /// <returns>执行结果</returns> public bool QueryExec(string SqlCe, SqlCeParameter[] parms) { SqlCeCommand cmd = CreateCommand(SqlCe, parms); try { cmd.ExecuteNonQuery(); } catch(Exception ex) { ex.Message.ToString(); return false; } finally { this.Close(); } return true; } /// <summary> /// 执行一个插入记录操作,返回primary key /// </summary> /// <param name="SqlCe">insert SqlCe语句</param> /// <returns>返回的primary key</returns> public String InsertExec(string SqlCe) { SqlCe += ";SELECT @@identity AS [@@IDENTITY];"; SqlCeCommand cmd = CreateCommand(SqlCe); try { return cmd.ExecuteScalar().ToString(); } catch { return null; } finally { this.Close(); } } /// <summary> /// 执行一个插入记录操作,带parameters,返回primary key /// </summary> /// <param name="SqlCe">insert SqlCe语句</param> /// <returns>返回的primary key</returns> public String InsertExec(string SqlCe, SqlCeParameter[] prams) { SqlCe += ";SELECT @@identity AS [@@IDENTITY];"; SqlCeCommand cmd = CreateCommand(SqlCe, prams); try { return cmd.ExecuteScalar().ToString(); } catch(Exception ex) { ex.Message.ToString(); return null; } finally { this.Close(); } } /// <summary> /// 通过查询指定的SqlCe语句来获得一个返回值 /// </summary> /// <param name="SqlCe">SqlCe语句</param> /// <returns>返回值</returns> public String QueryValue(string SqlCe) { SqlCeCommand cmd = CreateCommand(SqlCe); try { return cmd.ExecuteScalar().ToString(); } catch(Exception ex) { ex.Message.ToString(); return null; } finally { this.Close(); } } /// <summary> /// 通过查询指定的SqlCe语句来获得一个返回表,带parms /// </summary> /// <param name="SqlCe"></param> /// <param name="prams"></param> /// <returns></returns> public DataTable QueryDataTable(string SqlCe,SqlCeParameter[] parms) { DataTable dataTable = new DataTable(); SqlCeCommand cmd = CreateCommand(SqlCe,parms); try { SqlCeDataAdapter dataAdapter = new SqlCeDataAdapter(cmd); dataAdapter.Fill(dataTable); } catch(Exception ex) { ex.Message.ToString(); dataTable = null; } finally { this.Close(); } return dataTable; } /// <summary> /// 通过查询指定的SqlCe语句来获得一个返回值,带parms /// </summary> /// <param name="SqlCe">SqlCe语句</param> /// <returns>返回值</returns> public String QueryValue(string SqlCe, SqlCeParameter[] prams) { SqlCeCommand cmd = CreateCommand(SqlCe, prams); try { return cmd.ExecuteScalar().ToString(); } catch(Exception ex) { ex.Message.ToString(); return null; } finally { this.Close(); } } /// <summary> /// 查询返回DATAREADER /// </summary> /// <param name="dr"></param> /// <param name="error"></param> /// <param name="SqlCeConnectionString"></param> /// <param name="SqlCe">SqlCe语句</param> public SqlCeDataReader QueryDataReader(string SqlCe) { try { SqlCeCommand cmd = CreateCommand(SqlCe); return cmd.ExecuteReader(); } catch { return null; } finally { } } /// <summary> /// 查询返回DATASET /// </summary> /// <param name="SqlCe">SqlCe语句</param> /// <returns>DataSet对象</returns> public DataSet QueryDataSet (string SqlCe) { SqlCeCommand cmd = CreateCommand(SqlCe); DataSet ds = new DataSet(); try { SqlCeDataAdapter dataAdapter = new SqlCeDataAdapter(cmd); dataAdapter.Fill(ds); } catch(Exception ex) { ex.Message.ToString(); ds = null; } finally { this.Close(); } return ds; } /// <summary> /// 通过SqlCe语句返回DataTable。 /// </summary> /// <returns>DataTable</returns> public DataTable QueryDataTable(string SqlCe) { DataTable dataTable = new DataTable(); SqlCeCommand cmd = CreateCommand(SqlCe); try { SqlCeDataAdapter dataAdapter = new SqlCeDataAdapter(cmd); dataAdapter.Fill(dataTable); } catch(Exception ex) { ex.Message.ToString(); dataTable = null; } finally { this.Close(); } return dataTable; } /// <summary> /// 包装输入参数。 /// </summary> /// <param name="ParamName">Name of param.</param> /// <param name="DbType">Param type.</param> /// <param name="Size">Param size.</param> /// <param name="Value">Param value.</param> /// <returns>New parameter.</returns> public SqlCeParameter MakeInParam(string ParamName, SqlDbType DbType, int Size, object Value) { return MakeParam(ParamName, DbType, Size, ParameterDirection.Input, Value); } /// <summary> /// 包装输出参数。 /// </summary> /// <param name="ParamName">Name of param.</param> /// <param name="DbType">Param type.</param> /// <param name="Size">Param size.</param> /// <returns>New parameter.</returns> public SqlCeParameter MakeOutParam(string ParamName, SqlDbType DbType, int Size) { return MakeParam(ParamName, DbType, Size, ParameterDirection.Output, null); } public SqlCeParameter MakeOutParam(string ParamName, SqlDbType DbType, int Size, object Value) { return MakeParam(ParamName, DbType, Size, ParameterDirection.Output, Value); } /// <summary> /// 包装Command参数。 /// </summary> /// <param name="ParamName">Name of param.</param> /// <param name="DbType">Param type.</param> /// <param name="Size">Param size.</param> /// <param name="Direction">Parm direction.</param> /// <param name="Value">Param value.</param> /// <returns>New parameter.</returns> public SqlCeParameter MakeParam(string ParamName, SqlDbType DbType, Int32 Size, ParameterDirection Direction, object Value) { SqlCeParameter param; if(Size > 0) param = new SqlCeParameter(ParamName, DbType, Size); else param = new SqlCeParameter(ParamName, DbType); param.Direction = Direction; if (!(Direction == ParameterDirection.Output && Value == null)) param.Value = Value; else Value = param.Value; return param; } } }
不好意思,到现在才将代码补充上来!今天在公司写了一天的和移动开发无关的代码,好累啊!手好冷啊!电热毯咋坏了呢!这不是欺负我没MONEY嘛。。。。。。
IP 地址: 已记录   报告
andywu8324 离线,最后访问时间: 2006-1-13 14:43:58 Andy

发帖数前150位

注册: 2006-01-06
发贴: 2
Re: 基于Pocket PC的销售管理系统(可下载)
第7楼  2006-01-06, 10:54 Reply Quote
我现在也在开发POCKET PC 的应用程序,但是当前这个项目代码量很大,程序运行的速度太慢,无法忍受,有没有好的优化方案阿?
IP 地址: 已记录   报告
Birch 离线,最后访问时间: 2006-3-10 18:19:44 Li-Birch

发帖数前150位

注册: 2006-03-09
发贴: 2
Wink [;)] Re: 基于Pocket PC的销售管理系统(可下载)
第8楼  2006-03-09, 21:12 Reply Quote

不错~刚接触Windows Mobile开发~

谢谢楼主共享,最近要做一个Smartphone平台的系统。。

还不知道怎么下手。。希望能和大家交流~!

IP 地址: 已记录   报告
rebel2004 离线,最后访问时间: 2007-12-25 16:24:27 rebel2004

发帖数前25位
男

注册: 2005-12-05
位置: 上海,杭州
发贴: 9
Re: 基于Pocket PC的销售管理系统(可下载)
第9楼  2006-04-10, 18:52 Reply Quote
代码之所以慢,是因为,代码的架够没有设计好。因为,这个代码是我第一个代码,当时没有架够的概念。不好意思!
这段时间“颓废”了一段时间——天天写论文,还是写代码舒服啊!
IP 地址: 已记录   报告
caihua207 离线,最后访问时间: 2006-5-7 20:45:03 华山一派

发帖数前500位

注册: 2006-04-18
发贴: 1
Re: 基于Pocket PC的销售管理系统(可下载)
第10楼  2006-04-20, 20:49 Reply Quote
请问楼主是用C#还是VC。net写的啊?上面的源代码好像不全啊!
IP 地址: 已记录   报告
starsoft2006 离线,最后访问时间: 2006-5-11 20:29:02 starsoft

发帖数前150位

注册: 2006-05-11
发贴: 2
Re: 基于Pocket PC的销售管理系统(可下载)
第11楼  2006-05-11, 20:09 Reply Quote
怎么我在使用using system.data.sqlserverce时不能通过呢?
IP 地址: 已记录   报告
starsoft2006 离线,最后访问时间: 2006-5-11 20:29:02 starsoft

发帖数前150位

注册: 2006-05-11
发贴: 2
Re: 基于Pocket PC的销售管理系统(可下载)
第12楼  2006-05-11, 20:10 Reply Quote
怎么我在使用using system.data.sqlserverce时不能通过呢? 是不是少了什么东西呀,请指教!谢。e-mail: xiaowenjun2004@126.com
IP 地址: 已记录   报告
dudulang971 离线,最后访问时间: 2006-5-21 20:12:53 dudulang971

发帖数前25位
男

注册: 2006-05-15
位置: 上海
发贴: 10
Re: 基于Pocket PC的销售管理系统(可下载)
第13楼  2006-05-17, 22:04 Reply Quote
顶一下
IP 地址: 已记录