资源预览内容
第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
第9页 / 共16页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
软件1082_第六小组_库存管理系统详细设计说明书 库存管理系统开发小组第6组(软件1082):主要设计:郑远福、吴远彬、郭镇东 日期: 2010-5-301.导言1.1 目的在概要设计说明书中,已解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的详细设计报告中将对在本阶段中对系统所做的所有详细设计进行说明。1.2 范围本文档用于软件设计阶段的详细设计,它的上游(依据的基线)是概要设计说明书,它的下游是源程序清单及单元测试计划,并为单元测试报告提供测试的依据。该范围应覆盖概要设计说明书中的功能点列表,性能点列表,接口列表。1.3术语定义(略)1.4参考资料 1 概要设计说明书 2 需求分析说明书 3 程序设计规范 4 界面设计规范 5 命名规范1.5相关文档 1 源程序清单 2 单元测试计划及报告 3 用户使用手册11 版本更新记录版本号创建者创建日期维护者维护日期维护纪要V1.0郑远福、吴远彬、郭镇东2010/5/30 2.总体设计2.1需求概要为了方便管理者管理和查询仓库货物的信息,需开发一个库存管理系统用于信息管理。本系统要做到方便对货物信息的基本资料的录入,编辑,删除等功能。2.2软件结构2.2.1、登陆注册模块登录界面主界面2.2.1.1、模块结构用户登陆 重新登陆检查输入错误信息 不合法身份认证系统首页2.2.1.2、程序描述(1)名称:LogDlg(注册登录模块)(2)功能:输入帐号密码即可登陆只界面 申明记录集过程以及开启数据库过程: 申明数据库对象,并申明一个记录集指向该对象 CDatabase m_db;/CDatabase(数据库类),CRecordSet(记录集类)和CRecordView(可视记录集类) CRecordset rs; UpdateData(TRUE);/将用户输入数据读取到成员变量中去 m_db.OpenEx(_T(DSN=MySQL;),CDatabase:noOdbcDialog);/建立和数据库的连接; rs.m_pDatabase = &m_db;/构造记录集对象指向CDatabase对象 检查用户输入数据的有效性 直接检查有没有输入用户名或密码,为空要提醒。 if(user.IsEmpty() AfxMessageBox(_T(请输入用户名!),5,5); return; if(password.IsEmpty() AfxMessageBox(_T(请输入密码!),5,5); return; 查询数据库,检查密码正确与否,正确则进入主界面。 CString sql; sql.Format(_T(SELECT Pwd FROM Users WHERE UserName=%s),user); CString psd; /存放查询结果 rs.Open(AFX_DB_USE_DEFAULT_TYPE,sql); /打开查询记录 rs.GetFieldValue(_T(Pwd),psd); /得到数据 if (psd != password)/如果密码不对则关闭 return; else/跳入主界面 stockDlg stock(this); stock.DoModal(); 2.2.2、系统菜单模块功能模块1:基本信息管理功能模块2:产品信息管理子系统1:客户前台管理功能模块3:库存操作管理功能模块4:库存警示管理网上购物系统总体结构图功能模块5:统计查询管理功能模块6:基本信息管理功能模块7:产品信息管理子系统2:后台管理功能模块8:库存操作管理功能模块9:库存警示管理功能模块9:统计查询管理功能模块9:用户2.2.2.1、基本信息模块客户信息管理框 客户编辑框仓库管理框 仓库编辑框用户管理框 用户编辑框修改密码框2.2.2.1.1:模块结构客户编辑框客户管理框 增,删 改仓库编辑框仓库管理框主界面 进入 增,删 改用户编辑框用户管理框 增,删改密码编辑框修改密码增,删改2.2.2.1.2:程序描述1客户信息管理刷新记录集,记录crescordset记录集有多少个clienteditDlg lienteditDlg(this); lienteditDlg.m_db.OpenEx(_T(DSN=MySQL;),CDatabase:noOdbcDialog);/建立和数据库的连接; lienteditDlg.rs.m_pDatabase = &lienteditDlg.m_db;/构造记录集对象指向CDatabase对象 lienteditDlg.rs.Open(AFX_DB_USE_DEFAULT_TYPE,_T(SELECT cid FROM client); /打开查询记录lienteditDlg.count=0; for(lienteditDlg.rs.MoveFirst();!lienteditDlg.rs.IsEOF();lienteditDlg.rs.MoveNext() lienteditDlg.count+; for(int i=0;ilienteditDlg.count;i+) CString str; str.Format(_T(%d),i);/将数字转换为对应的字符串发送出去 /m_C_type.SetCurSel(i); count.InsertString(i,str); / TODO: 在此添加控件通知处理程序代码添加按钮事件代码clienteditDlg clientedit(this); clientedit.DoModal();修改按钮事件代码clienteditDlg lienteditDlg(this); lienteditDlg.m_db.OpenEx(_T(DSN=MySQL;),CDatabase:noOdbcDialog);/建立和数据库的连接; lienteditDlg.rs.m_pDatabase = &lienteditDlg.m_db;/构造记录集对象指向CDatabase对象 lienteditDlg.rs.Open(AFX_DB_USE_DEFAULT_TYPE,_T(SELECT cid,cname,ctype,contact,caddress,postcode,phone,fax,memo FROM client); /打开查询记录 if(count.GetCurSel()=-1) AfxMessageBox(_T(请选择要修改的记录),5,5); return; int nIndex = count.GetCurSel();/选中当前选择项 CString present; /保存当前选择项信息 count.GetLBText( nIndex, present);/将当前选择项的值复制到字符串中去 /char* presentchar = present.GetBuffer(present.GetLength(); int presentint; presentint=atoi(CT2A)present); for(int j=1;j=presentint;j+) lienteditDlg.rs.MoveNext(); lienteditDlg.rs.GetFieldValue(1,lienteditDlg.m_cname); /得到数据 lienteditDlg.rs.GetFieldValue(2,lienteditDlg.m_ctype); /得到数据 lienteditDlg.rs.GetFieldValue(3,lienteditDlg.m_contact); /得到数据 lienteditDlg.rs.GetFieldValue(4,lienteditDlg.m_address); /得到数据 lienteditDlg.rs.GetFieldValue(5,lienteditDlg.m_postcode); /得到数据 lienteditDlg.rs.GetFieldValue(6,lienteditDlg.m_aphone); /得到数据 lienteditDlg.rs.GetFieldValue(7,lienteditD
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号