已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
商品销售管理系统目录一、前言1二、系统的分析与实现21). 需求分析 22).可行性分析2 3)数据库设计分析24)销售管理系统的分析 35)系统结构3三、系统的设计 41).数据库设计 42)数据库的连接 53)主要功能 5四、系统实现及代码清单6五、总结 14六、参考文献 15前言前程无忧最近几年的薪酬报告显示,软件测试工程师一般起薪从2000至5000元月不等,若有三年工作经验的话,薪资在8000元月左右。质量是产品的灵魂,作为软件质量的把关者,软件工程师在企业中的地位也越来越重要,其工作相对更加稳定,而且随着项目经验的不断增长,对不同行业背景了解的不断深入,软件工程师的水平将会越来越高. 在谈及测试人员的薪酬待遇时,企业方介绍:“目前大多数公司给软件人员提供了双轨制的培训和广阔的发展平台。薪金方面也比较丰厚,具有一定经验的人员的薪水在5千到8千不等”。前程无忧的薪酬报告显示,软件工程师在IT行业中越来越受到重视,其薪资也节节高升。初级软件工程师的起薪从2000至5000元月不等,若有三年工作经验的话,薪资在8000元月左右,具体视不同地域、不同性质企业、工程师的不同能力而定。以3.5年左右从业经验的软件工程师各地薪资情况来看:北京地区该职位的平均年薪逾5.8万元,其中外商独资企业的年薪为全国之最,将近8.5万元,而其余各类型企业的年薪都在5万至6万元。上海地区软件工程师的平均年薪为6.3万元,欧美独资和欧美合资企业的薪资不相上下,分别为7.9万和7.7万元。以上种种迹象表明,软件已成为IT职场上炙手可热的新“黄金职业”.三、系统的分析与实现需求分析十年来国内软件工程方面的进展有目共睹,在软件需求方面,我们看到在大多数组织中已经建立起了一级或两级需求体系(业务需求和软件需求);在某些组织中,需求分析员已经成为一种专门的职位;甚至在某个大型国有商业银行已经成立一个专门的部门来负责需求分析工作。应该来说,这是一些非常可喜的进步。然而,目前大多数的项目参与者都对需求工程的现状不满,这又是为什么呢?首先,我们必须承认市场快速变化而带来的需求变化的确对项目带来了很大的挑战,为此许多项目应用了迭代化开发来应对这样的变化。但根据我们对客户的访谈,更多的需求变化是由于需求沟通不力造成的,也就是说,参与需求沟通的各方并没有达成真正的共识,这又是什么原因呢?根据我们的分析,这主要是由于缺少一个可以被各方真正理解和沟通、并可以被逐步精化的需求体系。可行性分析(1) 经济可行性:即是否能取得很好的经济效益,要考虑开发成本是否能承受。信息管理系统的规模不是很大,人力资源,经费要求都很少,只要有技术人员参与开发即可,很容易实现。当系统投入运行后可以为节约大量的人力,物力,所带来的效益远远大于系统软件的开发成本。信息管理系统在经济上完全可行。(2) 时间可行性:即系统本身的适应范围。本系统包括了商品交易管理系统所必需的各个环节,具有相对稳定性。因此,在时间上是可行的。(3) 操作可行性:本信息管理系统在界面设计时充分考虑到管理人员的习惯,采用下拉菜单窗体模块,简明易懂,一目了然,使得操作简单;数据录入迅速、规范、可靠;信息统计准确;制表灵活;适应力强;容易扩充。(4) 社会可行性:面对当今注重速度、效益的时代,本软件的社会可行性是显而易见的。它提高了工作效率,缩短了经费过程所需的时间,增大了信息传递的准确性、及时性、快速性,节约了人力、物力,具有一定的社会价值。数据库设计分析用户的需求具体体现在各种信息的提供、保存、更新和查询等方面。这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为下一步的数据库具体设计做好充分的准备。在仔细分析调查有关物资管理系统需求的基础上,将得到如图4.1所示的本息台所处理的数据流程。针对一般物资管理系统的需求,通过对物资调配工作过程的内容和数据流程分析,设计如下所示的数据项和数据结构:物资基本信息,包括的数据项有:物资编号、物资名称、类别和计量单位等。入库物资信息,包括的数据项有:物资编号、物资名称、规格型号、类别、计量单位、数量、单价、金额、入库时间、经办人、保管人、仓库和备注等。出库物资信息,包括的数据项有:物资编号、物资名称、规格型号、类别、计量单位、数量、单价、金额、入库时间、经办人、保管人、仓库和备注等。物资余额信息,包括的数据项有:物资编号、物资名称、规格型号、类别、计量单位、数量、金额和仓库等。销售管理系统的分析 由于商品销售管理系统是一个用来帮助使用者管理商品销售流程的软件。使用者通过对销售过程中所涉及到的商品,订单,销售商等资料的录入,便可以轻松实现商品销售流程的管理。所以,此系统必须向使用者提供一下一些具体功能:。1:软件必须向使用者提供商品基本的录入,删除,修改,保存信息等基本功能2:鉴于商品的不同销售方式(分为订单销售和代理商销售两种形式),软件必须向使用者提供商品销售环节中的基本管理功能,因此必须有订单分销模块和代理商分销模块。3:软件必须向使用者提供基本的查询功。4:由于是销售管理软件,所以系统安全性必须是要考虑的问题。因此,必须实现以下两点:(1):系统操作员机制。对系统的使用者,按等级开放管理权限,这样可以在一定程度上保证数据库系统的安全性,避免数据被泄漏,非法更改等。(2):销售数据直接反映了一个销售单位的盈亏状况,鉴于销售数据的重要性,所以必须对这些数据加以保护,在系统崩溃时或者误操作等情况下,可以对数据进行恢复。这就需要系统提供备份功能。 系统结构四、系统的设计1).数据库设计根据本系统的实际需要,结合实际一共建立了用户信息、商品信息、销售信息、供应商信息、入库信息五个表。具体设计如下:供应商信息字段名称属性Gysmc(供应商名称)文本Gysren文本Gysdh文本gysdz文本操作员信息字段名称属性Username文本Password文本商品信息字段名称属性Spbh文本Spmc文本Spjj数字(单精度)Spsj数字(单精度)Spsl数字(整型)销售信息字段名称属性Xsczy文本Xsspbh文本Xsspmc文本Xsspsl数字(整型)Xsspdj数字(单精度)Xsspje数字(单精度)Xsspsj日期/时间入库信息字段名称属性Rkdh文本Rkgys文本Rkczy文本Rkspbh文本Rkspmc文本Rkspdj数字(单精度)Rkspsl数字(整型)Rkspje数字(单精度)Rkspsfje数字(单精度)Rssj日期/时间2)数据库的连接void CDataBase:InitData():CoInitialize(NULL);m_conn.CreateInstance(_uuidof(Connection);CString connstr;connstr=Driver=microsoft access driver (*.mdb);dbq=db1.mdb;m_conn-Open(_bstr_t(connstr),0);3).主要功能有:1. 对操作员的管理。如修改,删除等。2. 物品基本信息的查询,如商品编号,名称,进价,售价,数量等。3. 物品基本信息的修改。4. 物品的入库信息的录入,包括物品编号,名称,单价,数量,供应商等。5. 入库物品基本信息的查询,修改,删除等。6. 销售物品信息的输入查询,修改,删除等。7. 库存信息的查询。8. 对供应商的管理。9. 供应商结款信息查看,删除。五、系统实现及代码清单1首页主要代码清单:int CMainFrame:OnCreate(LPCREATESTRUCT lpCreateStruct)if (CFrameWnd:OnCreate(lpCreateStruct) = -1)return -1;if (!m_wndStatusBar.Create(this) |!m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT)TRACE0(Failed to create status barn);return -1; / fail to createreturn 0;BOOL CMainFrame:PreCreateWindow(CREATESTRUCT& cs)if( !CFrameWnd:PreCreateWindow(cs) )return FALSE;/ TODO: Modify the Window class or styles here by modifying/ the CREATESTRUCT cscs.style &= FWS_ADDTOTITLE; cs.lpszName=商品销售管理系统;HICON hicon1;hicon1=AfxGetApp()-LoadIcon(IDI_ICON1);cs.lpszClass=AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW,0,0,hicon1);return TRUE;2基本信息管理操作员信息管理主要代码清单:void CCzyDlg:InitCtrlData()m_tab.InsertItem(0,操作员信息);m_tab.InsertItem(1,操作员列表);m_tab.ShowWindow(1);m_list.InsertColumn(0,姓名,LVCFMT_CENTER,100);m_list.InsertColumn(1,密码,LVCFMT_CENTER,100);m_list.SetExtendedStyle(m_list.GetStyle() | LVS_EX_FULLROWSELECT);TabOfSel(1);void CCzyDlg:TabOfSel(int index) CStatic * s1=(CStatic *)GetDlgItem(IDC_STATIC1); CStatic * s2=(CStatic *)GetDlgItem(IDC_STATIC2); switch(index) case 0: m_tab.SetCurSel(0); m_nameedit.ShowWindow(TRUE); m_passedit.ShowWindow(TRUE); s1-ShowWindow(TRUE); s2-ShowWindow(TRUE); m_list.ShowWindow(FALSE); /m_b4.WindowEnable(TRUE); break; case 1: m_tab.SetCurSel(1); m_nameedit.ShowWindow(FALSE); m_passedit.ShowWindow(FALSE); s1-ShowWindow(FALSE); s2-ShowWindow(FALSE); m_list.ShowWindow(TRUE); /m_b4.SetWindowEnable(FALSE); break; :CoInitialize(NULL);_RecordsetPtr m_rs; m_rs.CreateInstance(_uuidof(Recordset); CString sql; _variant_t v(0L); sql=select * from tb_user; m_rs=db.m_conn-Execute(_bstr_t(sql),&v,adCmdText); m_list.DeleteAllItems(); while (!m_rs-adoEOF) v=m_rs-GetCollect(username); int i=m_list.InsertItem(m_list.GetItemCount(),_bstr_t(v); v=m_rs-GetCollect(password); m_list.SetItemText(i,1,_bstr_t(v); m_rs-MoveNext(); m_rs-Close();基本信息管理商品信息基本信息管理供应商管理基本信息管理库存信息3入库管理商品入库4销售管理商品销售5账目管理供应商账目管理供应商窗口控件初始化代码(其他窗口类似):void CGYS:InitCtrlData()m_tab.InsertItem (0,供应商信息);m_tab.InsertItem (1,供应商信息列表);m_tab.ShowWindow (1);m_list.InsertColumn (0,供应商名称,LVCFMT_LEFT,160);m_list.InsertColumn (1,供应商人,LVCFMT_LEFT,120);m_list.InsertColumn (2,供应商电话,LVCFMT_LEFT,120);m_list.InsertColumn (3,供应商地址,LVCFMT_LEFT,200);TabOfSel(1);void CGYS:TabOfSel(int index)switch (index) case 0: m_savebtn.EnableWindow(TRUE); m_tab.SetCurSel(0); m_gysmcedit.ShowWindow(1); m_gysrenedit.ShowWindow(1); m_gysdhedit.ShowWindow(1); m_gysdzedit.ShowWindow(1); m_list.ShowWindow(0); break; case 1:m_savebtn.EnableWindow(FALSE); m_tab.SetCurSel(1); m_gysmcedit.ShowWindow(0); m_gysrenedit.ShowWindow(0); m_gysdhedit.ShowWindow(0); m_gysdzedit.ShowWindow(0); m_list.ShowWindow(1);break;:CoInitialize (NULL);_RecordsetPtr m_rs;m_rs.CreateInstance (_uuidof(Recordset);_variant_t v(0L);CString sql; sql=select *from tb_gysxx;m_rs=db.m_conn ;m_rs=db.m_conn-Execute(_bstr_t(sql),&v,adCmdText);m_list.DeleteAllItems ();while(!m_rs-adoEOF )v=m_rs-GetCollect (gysmc);int i=m_list.InsertItem (m_list.GetItemCount(),_bstr_t(v);v=m_rs-GetCollect (gysren);m_list.SetItemText (i,1,_bstr_t(v);v=m_rs-GetCollect (gysdh);m_list.SetItemText (i,2,_bstr_t(v);v=m_rs-GetCollect (gysdz);m_list.SetItemText (i,3,_bstr_t(v);m_rs-MoveNext(); m_rs-Close();总结通过这次编程,我从里边发现了一些问题,并且有了一定的解决方法,现总结出以下几点:1、 前期需求不明,造成设计时目的不明确,开发时时常会因需求问题而困惑,而由于已经开发完成,所以改动起来比较困难。 改进办法:需求要完全明确是很难做到,但在局部相对独立功能上应该要尽量明确。如:尽量能明确变量的使用、控件的使用、处于什么范围、列表显示哪些字段、查询需要什么条件有明确的说明,这样可以在后期测试时少掉一半的错误.2、 设计要慎重,应该要足够的考虑,系统中有一些数据库表的结构和字段都值得商榷,如果前期工作做好,也许很多问题可以在后来避免。 改进办法:没有人能一次就设计出完美的东西,也就是说,在编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025内蒙古森工集团招聘高校毕业生114人(第二批)笔试历年参考题库附带答案详解
- 2025云南省现代农业发展集团有限责任公司招聘21人笔试历年参考题库附带答案详解
- 2025中国石油化工股份有限公司安庆分公司招聘20人笔试历年参考题库附带答案详解
- 2025中国华电科工集团有限公司所属部分基层企业面向系统内外招聘25人笔试历年参考题库附带答案详解
- 2025上半年山东“才聚齐鲁成就未来”水发集团社会招聘391人笔试历年参考题库附带答案详解
- 河北省秦皇岛市昌黎县2025-2026学年度第二学期八年级语文期中考试题
- 2026届安徽六安市独山中学下学期高一4月月考英语试卷(含答案无听力音频无听力原文)
- 2026 三年级上册语文《金色的草地观察》课件
- 2026届湖南省百师联盟高三下学期3月阶段检测地理含答案
- 2025管道配件(采购供应)合同
- 电缆采购投标方案(技术方案)
- 工业区物业服务手册
- 知道网课智慧树《哲学导论(湖南师范大学)》章节测试答案
- JBT 3341-2024 蓄电池托盘堆垛车(正式版)
- 天津市基坑倾斜桩无支撑支护技术规程
- GJB9001C质量保证大纲
- DB37∕T 3487-2019 山东省钢质内河浮桥承压舟建造规
- 中铁二局 综合投资报告
- 近代物理实验指导书
- 人文地理学课件
- LY/T 2837-2017云南松抚育技术规程
评论
0/150
提交评论