商品销售管理系统毕业论文doc-34页(DOC 33页)

上传人:痛*** 文档编号:211291610 上传时间:2023-05-19 格式:DOC 页数:38 大小:367.50KB
收藏 版权申诉 举报 下载
商品销售管理系统毕业论文doc-34页(DOC 33页)_第1页
第1页 / 共38页
商品销售管理系统毕业论文doc-34页(DOC 33页)_第2页
第2页 / 共38页
商品销售管理系统毕业论文doc-34页(DOC 33页)_第3页
第3页 / 共38页
资源描述:

《商品销售管理系统毕业论文doc-34页(DOC 33页)》由会员分享,可在线阅读,更多相关《商品销售管理系统毕业论文doc-34页(DOC 33页)(38页珍藏版)》请在装配图网上搜索。

1、商品销售管理系统毕业论文(doc 34页)吉林省高等教育自学考试毕 业 论 文论文题目:商品销售管理系统专 业:计算机应用软件准考证号:010208101127学生姓名:曹伟伟指导教师:卢奕南2012年 3 月 1日摘 要在信息飞速发展的今天,无论是小型企业还是大中型企业,都逐渐采用计算机对商品的销售进行了管理,不在使用过多的人力对商品信息、商品进出库信息、商品销售信息等进行记录、核对、计算等等。企业对商品的销售管理已经日益的重要,商品销售管理系统已然成为了不可或缺的企业管理软件。一个优秀的企业管理软件,不仅需要含有大量的数据信息,还需要具有对这些息息相关的数据信息进行综合分析、整理的功能。本

2、文简要介绍了商品销售管理系统的项目背景和意义,着重阐述了该系统开发过程,从系统的需求分析、方案论证、关键技术设计、数据库设计、模块设计到系统实现等各个环节都进行了详尽的分析和描述。该系统运用SQL SERVER 2005数据库系统和VC+技术开发实现的,包括了商品的入库信息、商品的销售信息和商品的库存信息,可以通过简单的增、删、改、保存等操作对该商品信息进行管理。该系统的界面友善、灵活性好、且系统的安全性高、运行稳定等功能,是一个企业的商品销售必备的管理软件。关键词:商品销售管理系统,SQL Server 2005,数据库, 需求分析AbstractToday, the rapid devel

3、opment of information, whether small or large and medium-sized enterprises, the gradual introduction of computers to management on the sale of goods, not using too much manpower for commodity information, goods in and out of the library information, sales information, recording, verifying, calculati

4、ng, and so on .Enterprise sales management has become increasingly important for commodities, merchandising management system has become an integral part of the enterprise management software. A good enterprise management software, requires not only contains large amounts of data, you also need to h

5、ave a comprehensive analysis, consolidation of information is closely related to the function of.This article briefly describes the project background and significance of the merchandise management system, highlights the systems development process, from system requirements analysis, design, databas

6、e design, plan, key technology module design to system implementation and other links for a detailed analysis and description.Using the SQL SERVER 2005 database system and the system VC+ technology development, including product storage information, merchandise sales and inventory information on goo

7、ds, through simple operations increased, by deleting, modifying, saving on the product information management. The system interface is friendly, good flexibility, and security features such as high and stable operation of the system, is the sale of goods of an enterprise management software.Keyword:

8、 sales management system, SQL Server 2005, the database, and needs analysis目录第1章 绪论1.1 本课题的研究意义公司随着业务的不断发展,商品销售的数量也不断增加,商品销售的流程也就更为复杂,传统的商品销售管理在商品的统计和管理上不但麻烦,而且还十分耗费人力和时间。而商品管理系统对商品的进货、退货、存货和销售情况等进行了综合统计和管理,使管理人员通过对销售所涉及到的商品、订单、销售商、供应商等资料的录入,便可以轻松实现商品销售流程的管理。方便管理人员更快更便捷的得到自己想要的信息。1.2 商品销售管理系统的发展十年来国

9、内软件工程方面的进展有目共睹,在软件需求方面,我们看到在大多数组织中已经建立起了一级或两级需求体系(业务需求和软件需求),在某些组织中,需求分析员已经成为一种专门的职位;甚至在某个大型国有商业银行已经成立一个专门的部门来负责需求分析工作。应该来说,这是一些非常可喜的进步1。商品销售管理系统随着软件工程的不断发展,也在逐渐发展,从一个只是用于小型企业小型数据录入、简单的销售处理过程的一个实现功能,发展到可以录入大量数据信息,并且可以快速智能的处理复杂的销售、销售退货、入库、入库退货以及与供应商之间的关系维护和与客户之间的关系维护等等过程,在商品销售管理系统的帮助下,大型企业的销售流程已经日益信息

10、化、简单化。在这个金融时代给企业带来了较高的利益,使得企业飞速的发展。现在的商品销售管理系统已经在各个领域各个方面都具有较高的可行性5,如:(1)经济可行性:即是否能取得很好的经济效益,要考虑开发成本是否能承受。信息管理系统的规模不是很大,人力资源,经费要求都很少,只要有技术人员参与开发即可,很容易实现。当系统投入运行后可以为节约大量的人力,物力,所带来的效益远远大于系统软件的开发成本。信息管理系统在经济上完全可行。(2)时间可行性:即系统本身的适用范围,本系统包括了商品交易管理系统所必需的各个环节,具有相对稳定性。因此,在世界上是可行的。(3)操作可行性:本信息管理系统在界面设计时充分考虑到

11、管理人员的习惯,采用下拉菜单窗体模块,简明易懂,一目了然,使得操作简单:数据录入迅速、规范、可靠:信息统计准确:制表灵活:适应力强:容易扩充。(4)社会可行性:面对当今注重速度、效益的时代,本软件的社会可行性是显而易见的。它提高了工作效率,缩短了经费过程所需的时间,增大了信息传递的准确性、及时性、快速性,节约了人力、物力,具有一定的社会价值。1.3 本课题的研究内容由于商品销售管理系统是一个用来帮助使用者管理商品销售流程的软件。使用者通过对销售过程中涉及到的商品,订单,销售商等资料的录入,便可以轻松实现商品销售流程的管理6。因此,从业务需求方面考虑,公司的商品销售管理系统这个课题的研究内容应该

12、包括以下几点:(1) 大量数据信息的录入;(2) 项目开发环境的选择;(3) 数据信息存放的软件选择;(4) 商品销售管理的处理过程;(5) 系统安全性的管理。第2章 系统设计2.1 系统目标设计商品销售管理系统以帮助使用者轻松实现商品销售的流程为设计目标,加以强大的数据库管理功能,此管理系统大大的提高了商品销售的效率。本系统在设计时应满足一下几点:(1) 采用人机对话的操作方式,信息查询灵活、方便、快捷、准确、数据存储安全可靠。(2) 实现信息管理的添加、修改和删除功能。(3) 可以录入商品信息、库房信息、客户和供应商等信息。(4) 对往来账的管理。(5) 系统运行稳定、安全可靠。2.2 系

13、统功能结构设计通过上面的需求分析,可以总结出,在该商品销售管理系统中,应具备如下功能结构图2,如图2.1所示。2.1 功能结构图(1)基础信息管理模块,在该系统中,基础信息管理模块主要实现了操作员信息、商品信息、供应商信息、客户信息、商品库存信息的现实,以及添加和保存。(2)入库管理模块,在该系统中,入库管理模块主要实现了商品入库的管理和入库退货的管理的信息显示、添加和保存等。(3)销售管理模块,在该系统中,销售管理模块主要实现了商品销售的管理和销售退货管理的信息显示、添加和保存等。(4)查询管理模块,在该系统中,查询管理模块主要实现了入库查询、入库退货查询、销售查询和销售退货查询的信息显示、

14、添加和保存等。(5)往来账管理模块,在该系统中,主要实现了供应商结款和客户结款管理的功能。第3章 数据库设计3.1 数据库分析商品销售管理系统使用了Microsoft SQL Server 2005数据库满足系统的要求,数据库的名称为SellManage,在数据库中创建了18张表用于存储各种不同的信息,如图3.1所示。图3.1 数据库系统表3.2 数据库结构设计表下面给出商品销售管理系统的几张主要表的表信息。1、tb_operator(操作员信息表)操作员列表数据表中,存放着对该软件使用的操作员的姓名、密码以及操作员的级别,操作员的级别在数据表中为0,表示普通管理员,若为1表示系统管理员。该表

15、主要用于保存管理员的信息3,如图3.2所示。图3.2 操作员数据表2、tb_merchandiseinfo(商品信息列表)商品信息列表数据表中,存放着商品的id、商品姓名、商品的规格、商品的助记码、厂家等等信息。该表主要用于保存商品的信息3,如图3.3所示。图3.3 商品信息列表3、tb_providerinfo(供应商信息列表)供应商信息列表中,包括供应商名称、法人姓名、负责人、联系电话、详细地址等等。该表主要用于保存供应商信息3,如图3.4所示。图3.4 供应商信息列表4、tb_customerinfo(客户信息列表)客户信息列表中,包括客户名称、负责人、联系电话等客户的信息。该表主要用于

16、保存客户信息3,如图3.5所示。图3.5 客户信息列表5、tb_merchandisestorage(库存信息列表)库存信息列表中包括库存编号、库存名称、库存数量这三类信息,该表主要用于保存上述提到的这三类信息3,如图3.6所示。图3.6 库存信息列表7、tb_cancelsell_main(销售退货列表)销售退货列表中包括退货单号、客户、操作员、折扣等信息,该表主要用于记录销售退货的信息3,如图3.7所示。图3.7 销售退货列表3.3 应用技术在此销售管理系统中,主要采用了ADO技术操作数据库,在这个系统的设计过程中通过导入ADO Com接口实现对SQL Server 2005的操作,为了操

17、作的方便,将数据库的各种操作封装在一个自定义的CDataBase类中。在实现数据库的过程中,首先要创建一个新类CDataBase,然后再向新创建的该类中添加一个成员函数和成员变量。在程序连接和操作数据库时,需要设置数据库连接的相关信息,该系统是通过一个数据库配置的INI文件,与数据库进行连接的,当系统启动时,首先从INI文件中获取数据库的配置信息,如若系统所在的服务器与数据库发生变化,只需要修改INI文件中的配置信息即可,无需再改动代码。在CDataBase类中,自定义了一个初始化数据库连接的函数,主要用于获取INI文件中的链接信息,如主机名、用户名、密码、默认库。如果该初始化函数调用成功,即

18、连接成功,则返回1,否则返回0,即表示连接数据库失败4。该初始化函数为InitData(),实现代码如下:int CDatabase:InitData()char m_szConnect512;char m_szTmp1024= ;char m_szHost20, m_szUser20, m_szPwd20, m_szDef20 ;GetPrivateProfileString(数据库, 主机名, NULL, m_szHost, sizeof(m_szHost), IniFile) ;GetPrivateProfileString(数据库, 用户名, NULL, m_szUser, sizeo

19、f(m_szUser), IniFile) ;GetPrivateProfileString(数据库, 密码, NULL, m_szPwd, sizeof(m_szPwd), IniFile) ;GetPrivateProfileString(数据库, 默认库, NULL, m_szDef, sizeof(m_szDef), IniFile) ;try/连接XdDataHRESULT hr = m_Connection.CreateInstance(_uuidof(Connection);sprintf(m_szConnect,provider = sqloledb;server=%s;dat

20、abase=%s;, m_szHost, m_szDef);hr=m_Connection-Open(_bstr_t(m_szConnect),_bstr_t(m_szUser),_bstr_t(m_szPwd),-1);sprintf(m_szTmp, 数据库连接成功!);/连接XdDatacatch(_com_error & e) sprintf(m_szTmp, 数据库打开失败,错误原因:%sn,LPCTSTR(e.Description();return 0 ;return 1 ;第4章 系统模块设计与实现4.1 登录模块设计与实现用户登录模块是所有管理系统所应具备的基础模块之一,该模

21、块主要用于实现系统的检验工作,只有具有相应权限的管理员用户可以使用这个系统,增加了系统的安全性,该系统用户登录的界面如图4.1所示。图4.1 系统登录模块用户登录系统是整个系统中最先显示的一个窗体,在运行一个系统时,要首先通过这个窗体,以管理员的身份进入该系统,若输入用户名与密码正确,则进入此系统,若输入错误,则无法进入此系统。在登录窗体创建的同时应该创建数据库的连接,与数据库连接这个过程,需要在应用程序类的初始化方法(CMerchandiseSellApp)中实现,连接数据库的操作代码如下:if(!m_hDatabase.InitData()MessageBox(NULL, 数据库访问失败,

22、程序异常关闭!, 出错啦, MB_OK) ;exit(1) ;/login CDlgLogin m_hDlg ;/*定义登录对话框类的对象*/if(m_hDlg.DoModal() = IDOK)/*显示登录对话框*/else/exit(1) ;CMerchandiseSellDlg dlg;/*定义应用程序主窗体*/m_pMainWnd = &dlg;int nResponse = dlg.DoModal();/*显示主窗体*/if (nResponse = IDOK)/ TODO: Place code here to handle when the dialog is/ dismisse

23、d with OKelse if (nResponse = IDCANCEL)/ TODO: Place code here to handle when the dialog is/ dismissed with Cancel用户登录模块的实现主要经过如下几步:(1)创建一个对话框,设置相应的对话框属性,在对话框中添加静态文本控件、编辑框控件和两个按钮控件。由于显示密码的编辑框中输入的密码是看见的,因此,在密码相对应的这个编辑框需要设置特别的属性,即在Styles这个属性中,勾选Password这个属性。如图4.2所示。图4.2 密码编辑框的特殊属性(2)在对话框窗体的初始化方法中设置对话框

24、的按钮背景图,以及相对应的图标,实现代码如下:BOOL CDlgLogin:OnInitDialog() CDialog:OnInitDialog();/ TODO: Add extra initialization herem_hBtnOk.SetIcon(IDI_ICON_OK);/*设置确定按钮的图标*/m_hBtnOk.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnOk.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnCancel.SetIcon

25、(IDI_ICON_CANCEL);/*设置取消按钮的图标*/m_hBtnCancel.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnCancel.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);return TRUE; / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return FALSE(3)在“确定”按钮的事件中实现用户名和密

26、码的验证。在“确定”按钮的实现过程中,首先获取该对话框的编辑控件中的文本信息,即输入的姓名、密码,然后,将获取的姓名、密码字符串,复制给定义的数据库中的操作员姓名和密码的成员变量,如果与数据库操作员信息表中的数据相匹配,则登录成功,否则,登录失败,“确定”按钮的实现代码如下:void CDlgLogin:OnOK() char m_szName30, m_szPwd30 ;GetDlgItemText(IDC_EDIT_NAME, m_szName, sizeof(m_szName) ;/*获取用户名*/GetDlgItemText(IDC_EDIT_PWD, m_szPwd, sizeof(

27、m_szPwd) ;/*获取密码*/switch(m_hDatabase.IsVerifyUser(m_szName, m_szPwd, m_szLevel)case 1:/成功strcpy(m_szOpName, m_szName) ;break ;case 0:/失败MessageBox(登录失败,用户名/密码错误!) ;m_hEditName.SetFocus() ;return ;case -1:/数据库操作异常MessageBox(数据库操作异常,请与系统管理员联络!) ;exit(0) ;break ;CDialog:OnOK();4.2 入库管理模块设计与实现商品入库管理模块是销

28、售过程中的重要处理过程,在入库的过程中,主要有两部分,一部分是商品的入库信息登记与显示,还有一部分是入库退货信息的录入与显示功能。4.2.1 商品入库管理入库的商品主要需要记录商品的入库单号、操作员、供应商、单价、入库时间等等信息,在该模块可以添加、修改、删除这些入库的信息。商品入库管理信息的录入功能,如图4.3所示。图4.3 商品入库录入商品入库管理模块的实现过程主要有如下几点:(1)添加一个商品入库管理模块的对话框资源,设置该对话框的属性,设置ID值,将标题改为“商品入库管理”。(2)向对话框中添加按钮控件,标签控件,静态文本框控件,文本编辑框控件以及时间选择控件,每一个控件设置相应的属性

29、信息。(3)商品入库管理中主要有两方面内容,在对话框中通过标签控件进行设置,一面是录入入库单号等基本信息,一面是显示入库信息列表。因此,在商品入库管理模块中实现了对列表信息的初始化操作,相应代码如下:void CDlgSprk:InitCtrlData()m_hTabSprk.InsertItem(0, 商口入库基本信息) ;/插入信息m_hTabSprk.InsertItem(1, 商口入库信息列表) ;m_hTabSprk.ShowWindow(TRUE) ;/设置窗口显示方式m_hEditZk.ShowWindow(TRUE) ;m_hEditYfje.ShowWindow(TRUE)

30、;m_hEditSpbh.ShowWindow(TRUE) ;m_hEditSl.ShowWindow(TRUE) ;m_hEditSfje.ShowWindow(TRUE) ;m_hEditRkdh.ShowWindow(TRUE) ;m_hEditHj.ShowWindow(TRUE) ;m_hEditGys.ShowWindow(TRUE) ;m_hEditDj.ShowWindow(TRUE) ;m_hEditCzy.ShowWindow(TRUE) ;m_hEditCkmc.ShowWindow(TRUE) ;m_hListSprk.ShowWindow(FALSE) ;m_hLis

31、tSprk.InsertColumn(0, 入库单号, LVCFMT_CENTER, 80) ;/插入列信息m_hListSprk.InsertColumn(1, 供应商, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(2, 操作员, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(3, 折扣, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(4, 合计, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(5, 应付金额, LV

32、CFMT_CENTER, 80) ;m_hListSprk.InsertColumn(6, 实付金额, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(7, 仓库名称, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(8, 商品编号, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(9, 单价, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(10, 数量, LVCFMT_CENTER, 50) ;m_hListSprk.Ins

33、ertColumn(11, 金额, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(12, 时间, LVCFMT_CENTER, 80) ;/设置列表的扩展风格m_hListSprk.SetExtendedStyle(m_hListSprk.GetStyle() | LVS_EX_FULLROWSELECT);m_hBtnOk.SetIcon(IDI_ICON_CLOSE);/设置关闭按钮对应的图标m_hBtnOk.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnOk.SetColo

34、r(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.SetIcon(IDI_ICON_OK);m_hBtnSave.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnSave.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.EnableWindow(FALSE) ;m_hBtnDel.SetIcon(IDI_ICON_DEL);m_hBtnDel.OffsetColor(CButtonS

35、T:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnDel.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnAdd.SetIcon(IDI_ICON_ADD);m_hBtnAdd.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnAdd.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnMod.SetIcon(IDI_ICON_MOD);m_hBtnMod.Offs

36、etColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnMod.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnFind.SetIcon(IDI_ICON_FIND);m_hBtnFind.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnFind.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);TabCtrlOfSelect(1) ;在上述代码中

37、,实现了对话框的一个界面信息的现实,为了增加界面的美观性,还是用了带有图标的按钮。(4)处理“增加”按钮的单击事件,将商品的入库信息录入到数据表中,在录入数据时,程序会检查数据的合法性,如果输入的信息不符合相应的条件,例如,没有输入或者重复等,则会出现提示信息。该按钮的实现代码如下:void CDlgSprk:OnBtnAdd() / TODO: Add your control notification handler code hereswitch(m_hTabSprk.GetCurSel()/获取标签控件的当前选中项case 0:break ;case 1:TabCtrlOfSelect

38、(0) ;break ;m_hEditZk.SetWindowText() ;/设置编辑框的信息为空,初始化状态为空m_hEditYfje.SetWindowText() ;m_hEditSpbh.SetWindowText() ;m_hEditSl.SetWindowText() ;m_hEditSfje.SetWindowText() ;m_hEditRkdh.SetWindowText() ;m_hEditHj.SetWindowText() ;m_hEditGys.SetWindowText() ;m_hEditDj.SetWindowText() ;m_hEditCzy.SetWin

39、dowText() ;m_hEditCkmc.SetWindowText() ;m_hEditRkdh.SetFocus() ;/对指定的窗口设置键盘焦点m_hBtnSave.EnableWindow() ;/保存按钮的现实状态(5)处理“保存”按钮的单击事件,将录入的商品入库信息保存。该事件的实现方法如下:void CDlgSprk:OnBtnSave() / TODO: Add your control notification handler code here/定义字符数组类型存放编辑框中的数据信息char ID30+1, provider30+1, ooperator50+1, re

40、bate10+1, sumtotal10+1, paymoney10+1, factmoney10+1, intime20+1=, merchandiseID30+1, unitPrice10+1, numbers10+1, stockname30+1 ;/获取文本编辑框中的数据信息,m_hEditRkdh.GetWindowText(ID, sizeof(ID) ;m_hEditGys.GetWindowText(provider, sizeof(provider) ;m_hEditCzy.GetWindowText(ooperator, sizeof(ooperator) ;m_hEdit

41、Zk.GetWindowText(rebate, sizeof(rebate) ;m_hEditHj.GetWindowText(sumtotal, sizeof(sumtotal) ;m_hEditYfje.GetWindowText(paymoney, sizeof(paymoney) ;m_hEditSfje.GetWindowText(factmoney, sizeof(factmoney) ;m_hEditSpbh.GetWindowText(merchandiseID, sizeof(merchandiseID) ;m_hEditDj.GetWindowText(unitPrice

42、, sizeof(unitPrice) ;m_hEditSl.GetWindowText(numbers, sizeof(numbers) ;m_hEditCkmc.GetWindowText(stockname, sizeof(stockname) ;m_hDtCtrl1.GetWindowText(intime,sizeof(intime);/保存修改,更新数据库m_hDatabase.UpdateSprkData(ID,provider,ooperator,rebate,sumtotal,paymoney,factmoney,intime,merchandiseID,unitPrice,

43、numbers,stockname) ;m_hBtnSave.EnableWindow(FALSE) ;其他的按钮单击事件的处理方法,请参照源码,在此不作过多介绍。4.2.2 入库退货管理入库管理模块除了上面的商品入库管理信息功能,还有入库退货的信息录入与修改等功能,如图4.4所示。图4.4 入库退货功能商品入库退货管理的设计中,也对对话框的信息进行了初始化,大体设计方法如商品入库管理中的初始化操作,除此之外,还对添加、保存、修改等按钮进行了实现,按钮的实现方案,在此不做过多介绍,详细设计代码请参照本项目。4.3 销售管理模块设计销售管理模块是销售过程中的重要处理过程,在销售的过程中,主要有两

44、部分,一部分是商品的销售信息登记与显示,还有一部分是销售退货信息的录入与显示功能。销售的商品主要需要记录商品的销售单号、操作员、供应商、单价、销售时间等等信息,在该模块可以添加、修改、删除这些销售的信息。商品销售管理信息的录入功能,如图4.5所示。图4.5 商品销售管理图4.6 商品销售退货管理商品销售管理模块的实现方法同入库管理模块类似,实现过程主要有如下几点:(1)添加一个商品销售管理模块的对话框资源,设置该对话框的属性,设置ID值,将标题改为“商品销售管理”。(2)向对话框中添加按钮控件,标签控件,静态文本框控件,文本编辑框控件以及时间选择控件,每一个控件设置相应的属性信息。(3)商品销

45、售管理中主要有两方面内容,在对话框中通过标签控件进行设置,一面是录入入库单号等基本信息,一面是显示入库信息列表。初始化这些数据信息的实现方法如下:void CDlgSell:InitCtrlData()m_hTabCancelSell.InsertItem(0, 商品销售基本信息) ;m_hTabCancelSell.InsertItem(1, 商品销售信息列表) ;m_hTabCancelSell.ShowWindow(TRUE) ;/m_hListCancelSell.InsertColumn(0, 销售单号, LVCFMT_CENTER, 80) ;m_hListCancelSell.I

46、nsertColumn(1, 客户, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(2, 操作员, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(3, 折扣, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(4, 总计, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(5, 应付金额, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertCo

47、lumn(6, 实付金额, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(7, 仓库名称, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(8, 商品编号, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(9, 单价, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(10, 数量, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColum

48、n(11, 金额, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(12, 时间, LVCFMT_CENTER, 80) ;m_hListCancelSell.SetExtendedStyle(m_hListCancelSell.GetStyle() | LVS_EX_FULLROWSELECT);/INIT BUTTON CTRLm_hBtnOk.SetIcon(IDI_ICON_CLOSE);m_hBtnOk.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnOk.Se

49、tColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.SetIcon(IDI_ICON_OK);m_hBtnSave.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnSave.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.EnableWindow(FALSE) ;m_hBtnDel.SetIcon(IDI_ICON_DEL);m_hBtnDel.OffsetColor(CBu

50、ttonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnDel.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnAdd.SetIcon(IDI_ICON_ADD);m_hBtnAdd.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnAdd.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnMod.SetIcon(IDI_ICON_MOD);m_hBtnMod

51、.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnMod.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnFind.SetIcon(IDI_ICON_FIND);m_hBtnFind.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnFind.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);/-TabCtrlOfSelect(1)

52、;BOOL CDlgSell:OnInitDialog() CDialog:OnInitDialog();/ TODO: Add extra initialization hereInitCtrlData() ;return TRUE; / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return FALSE(4)处理商品销售管理模块的“增加”按钮的单击事件,将商品的销售信息录入到数据表中,在录入数据时,程序会检查数据的合法性,如果输入的信息不符合相应的条件,例

53、如,没有输入或者重复等,则会出现提示信息。该按钮的实现代码如下:void CDlgSell:OnBtnAdd() / TODO: Add your control notification handler code hereswitch(m_hTabCancelSell.GetCurSel()case 0:break ;case 1:TabCtrlOfSelect(0) ;break ;m_hEditUnitPrice.SetWindowText() ;m_hEditSumTotal.SetWindowText() ;m_hEditStockName.SetWindowText() ;m_hE

54、ditRebate.SetWindowText() ;m_hEditPayMoney.SetWindowText() ;m_hEditOperator.SetWindowText() ;m_hEditMerchandiseID.SetWindowText() ;m_hEditFactMoney.SetWindowText() ;m_hEditCustomer.SetWindowText() ;m_hEditCancelID.SetWindowText() ;m_hEditNumbers.SetWindowText() ;m_hEditCancelID.SetFocus() ;m_hBtnSav

55、e.EnableWindow() ;其他的按钮单击事件的处理方法都大体相似,详细实现方法请参照源码。4.4 项目发布在项目设计完成后,下面就开始编译、运行以及调试该程序,首先按F5编译应用程序,并运行生成的可执行文件,最终进入该系统的一个运行界面。通常编译运行之后的项目比较大,执行效率较低,而且往往还需要mfc提供的动态连接库,如MFC42D.DLL,MFCCO42D.DLL等。为了能够提供给用户一个简单的可执行文件,在工程设计完成并调试无误后,需要将程序发布,生成一个发行版本的应用程序。选择Build/Set Active Configuration命令,在列表中选择Release选项即可,

56、单击OK按钮完成设置。然后按F5编译并运行该程序,就可以生成一个发行版本的可执行文件。第5章 项目总结本文介绍了有关商品销售的工作流程的功能模块的实现过程,如商品销售、销售退货、商品入库、入库退货、供应商往来帐等。通过Visual C+6.0集成开发环境开发了个性化以及人性化的美观界面,并且结合SQL Server 2005数据库实现了大量数据的录入功能。为了完成本文,我在图书馆查阅大量的相关参考资料,并且结合了网上丰富的计算机资源,让我对VC+对话框程序开发技术和数据库系统开发技术都有了一定的了解,使得本次毕业设计能够完美完成。在实现该项目时,才发现自己在专业知识的学习上了解的并不深入,基础

57、知识掌握的不扎实,导致在项目的实现时困难重重,多次通过网上的资源解决项目开发过程中遇到的错误。自己主要是缺乏项目开发的经验,没有掌握项目开发的整体架构,让自己在完成项目时走了很多弯路,最后,在老师与同学的帮助下,才得以顺利完成该项目。今后,我会努力在以后的工作与学习道路上继续充实自我,完善自我。参考文献1.Visual C+ 6.0 入门与提高,人发邮电出版社,作者:王超龙、陈志华。2.Visual C+ 6.0 数据库系统开发实例导航,人发邮电出版社,作者:李闽溟、吴继刚、周学明。3.成基华,范玉青,袁国平,逄淑荣。CAD/CAM开发平台及其发展趋势J。机辅助设计与图形学学报,2000,12

58、(2):154-159。4.范彦斌,沈自林,冯心海。基于参数化的冲裁模计算机辅助设计J。模具工业,1997,(6):3-5。5. Visual C+系统数据库开发完全手册,人民邮电出版明日科技编著。6.Visual C+开发实战宝典,清华大学出版社,作者宋坤。致 谢通过这次毕业设计,使我对大学四年所学的专业知识和专业技能有了更深一层的认识,并且提高了分析和解决实际问题的能力。在这次毕业设计中对选题、设计项目的发展前景研究分析、项目的需求分析等做了详细的分析,在做了充足的前期规划后,开始着手设计项目的实现流程图,直到最后项目设计完成,并同时完成了论文的编写。在实现项目设计过程中,使我对综合知识的

59、应用,Visual C+编程语言的基本思想,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。为日后成为合格的应用型人才打下良好的基础。这次在指导老师的帮助下,在同学的帮助下,基本上完成了设计任务,在软件的设计方面也有了一定的提高,熟练掌握了使用Visual C+语言实现基于MFC的项目管理系统的编程技巧,为今后走上工作岗位打下了专业基础。在这次的毕业设计中,让我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。最后,我要衷心感谢马跃平老师在我的毕业设计中给予我的极大帮助,使我能够及时、顺利地完成此次毕业设计。同时,也要感谢我的同学们在本系统的设计过程中给予我的支持和帮助。同时向四年来教育我帮助我的全体老师表示深深的感谢!是你们大家共同助我塑造了我的新的人生!让我为大学生活画上完美的句号。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!