毕业设计(论文)—_基于VC++语言软件设计——商店管理助手的分析与设计_第1页
毕业设计(论文)—_基于VC++语言软件设计——商店管理助手的分析与设计_第2页
毕业设计(论文)—_基于VC++语言软件设计——商店管理助手的分析与设计_第3页
毕业设计(论文)—_基于VC++语言软件设计——商店管理助手的分析与设计_第4页
毕业设计(论文)—_基于VC++语言软件设计——商店管理助手的分析与设计_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、四川理工学院毕业设计(论文)基于VC+语言软件设计商店管理助手的分析与设计学 生:王强南学 号:07051050114专 业:信息管理与信息系统班 级:2007级1班指导教师:何小利四川理工学院计算机学院二O 一一年六月The Design based onVisual C + + Language Analysis and Design of Shop Management Assistant ABSTRACTThis design software is for these small shops assistant design a new software for the system

2、 to achieve management in commercial activities all data records and management facilitates data acquisition, quotation analysis purposes. Its main task is to use Visual C+ + 6.0 development platform development this software, Microsoft SQL Server 2000 through create database, using ADO technology t

3、o achieve the database access and operation and in Visual c + + better use Crystal reports (about) software provides a space display statements. This software is mainly by the account login module, management module, into the sales module, and statements management module, commodities management mod

4、ule, basic information management module six modules. This paper introduced the analysis and the module design, so that readers can fully familiar with the system structure and the various modules can realize the function and system function of the implementation steps.Keywords: ShopManagementAssist

5、ant; Design; Analysis;Module目录第1章概述11.1 前言11.2系统开发所需工具简介21.2.1 SQL Server 2000简介21.2.2Visual C+6.0简介2水晶报表(Crystal Reports)简介4第2章系统分析52.1 需求分析52.1.1 系统开发需求背景52.1.2 系统构架52.1.3. 功能需求52.1.4.界面要求52.1.5.数据库要求62.1.6.软硬件平台62.1.7 开发工具62.1.8 报表工具62.2 系统分析62.2.1 系统功能分析62.2.2 系统模块设计72.2.3 系统用户权限分析72.2.4 对象

6、分析82.3数据流程图11第3章数据库设计123.1数据库需求分析123.2 数据库逻辑设计12第4章系统详细设计154.1 选择数据库程序开发技术154.2新建项目154.3 添加ADO封装类和ADO控件154.4用户登录模块设计16登陆对话框界面设计164.4.2 登陆对话框代码设计174.5主窗口菜单界面设计194.6用户管理模块设计204.6.1 修改密码窗口界面设计20用户信息管理界面设计214.3.3 用户管理模块代码设计224.7 基本信息管理模块设计304.7.1 供应商信息管理模块设计304.7.2 VIP客户信息管理模块、员工信息管理模块界面设计33供应商信息管理模块代码设

7、计334.8商品信息管理模块设计394.9进销信息管理模块设计394.9.1 销售管理394.10进货管理模块设计494.11统计报表模块设计494.11.1 员工业绩报表49商品销售业绩报表、盈亏统计报表设计52第5章结论53致谢54参考文献55第1章概 述1.1 前言随着全球信息化时代的到来,信息技术对社会发展和经济增长的作用愈来愈明显。充分利用信息技术和信息资源,为社会创造更多的财富,将成为社会进步的重要标志。对于作为连接生产与消费的纽带和桥梁的商店,应用信息技术进行管理不仅可以提高商店自身在市场中的竞争能力,同时还可以提升商店管理者对商品进销的管理能力。各类商店有效地采用信息

8、技术手段进行管理,是加速商业领域的发展与进步,促进信息化建设,提高商店管理水平、谋求生存、参与市场竞争的必由之路。为了能在这种竞争激烈的环境下求的生存,为了能更充分的利用所拥有的信息资源,越来越多企业发展适合本企业需要的管理系统。通过利用先进信息化技术,大大提高了企业生产计划、库存管理、客户管理、采购管理等环节的效率,为企业节省开支,创造更多的价值。目前,企业信息化管理系统包括ERP系统、CRM系统、供应链管理系统、财务软件管理系统、办公自动化系统、人力资源管理系统等,随着信息化的深入,这些系统将会逐渐被各种类型的商店所不同程度的选择性的接受。这些系统不但可以提升商店管理者的工作效率,辅助商店

9、管理者进行日常的经营管理工作,而且还可以提升商店整体的管理水平和经济效益。但由于我国的企业在管理系统的应用方面起步比较的晚,即使一些企业拥有的自己的管理系统,也存在着很多的不足,如:(1)数据计算用手工,工作人员劳动强度大,效率低;(2)许多重复数据进行重复的登记和转移,造成人力和资源的浪费;(3)数据查询靠手工,查询不及时,易出错;(4)多种报表上报不及时,影响管理决策;(5)维护不及时,安全性不高;(6)现有的计算机系统没有充分利用。随着计算机和信息技术的不断推广,这些不足将逐渐被克服。我们商店管理助手信息系统的设计,为了能够更好满足公司的需求,就向以下几个方面努力的:(1)方便、简单的操

10、作方式、界面明朗易懂,易于员工学习掌握和操作,大大降低员工培训时间,减少人力资源成本、提升工作效率和效益;(2)清晰明了的各类数据分析,及时、准确、直观地反映企业经营成果,为商店的预测、规划发展方向提供理性的依据;(3)具有稳定性,开放性,可成长性等优势。1.2系统开发所需工具简介SQL Server 2000简介1. SQL Server 2000发展简介SQL Server 2000是一个关系数据库管理系统,最初是由Microsoft、Sybase和Ashton-Tate这3家公司共同开发的,并与1989年推出了了第一个OS/2版本。SQL Server 2000是Microsoft公司在

11、推出的该系列数据库管理系统的又一个版本,它继承了7.0版本的优点的同时又增加了许多其他更加先进的功能,具有使用方便、可伸缩性好以及与相关软件集成程度高等优点,成为目前常用的中型数据库系统1。2.SQL Server 2000的主要工具简介SQL Server 2000提供了一系列的管理工具,用于设置和管理数据库。安装完该软件后,选择【开始】|【所有程序】|【Microsoft SQL Server】|命令,可以看到该软件的主要工具,其中,最常见的有“企业管理器”、“服务管理器”、“查询分析器”和“导入导出数据”。下面简单介绍几个常用工具的功能:企业管理器:企业管理器是最重要的管理工具,它用于配

12、置SQL Server系统环境,创建和管理所有数据库和服务器对象。服务管理器:服务管理器用于启动、暂停或停止数据库服务器。查询分析器:用户可以利用查询分析器输入和执行Transaction-SQL命令,以便查询、分析或处理数据库中的数据。查询分析器对于掌握SQL语言的数据库管理员或SQL Server程序开发人员来讲,使用它来配置和管理该软件会更方便、快捷。数据导入、导出工具:数据导入导出工具是一个向导程序,用于在不同的SQL Server 2000服务器之间传递数据也用于在与其他数据库管理系统或其他数据格式之间交换数据。事件探查器:SQL事件探查器是图形工具,使系统管理员的一件事SQL Se

13、rver服务器中的时间。可以捕获每个时间的数据并其保存到文件或数据库的表中以供以后分析。1.2.2 Visual C+6.0简介 1. Visual C+6.0简介Visual C+是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C+1.0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。 虽然微软公司推出了Visual C+.NET(Visual C+7.0),但它的应用的很大的局限性,只适用于Windows 2000,Windows XP和Windows NT4.0。所以实际中,更多的是以Visual C+6.0为

14、平台。 Visual C+6.0不仅是一个C+编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C+6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。 Visual C+大概可以分成三个主要的部分:Developer Studio、MFC和Platform SDK。因为本文主要用到MFC的部分,所以这里只对MFC做介绍。从理论上来讲MFC并不

15、是只是专用于Visual C+,用Borland C+、C+Builder和Symantec C+同样可以对MFC进行。同时,用Visual C+编写代码也并不意味着一定要用MFC,只要愿意,用Visual C+来编写SDK程序,或者使用STL、ATL一样是可行的。但是,Visual C+本来就是为MFC打造的,Visual C+中的语言扩展和许多特征都是为MFC而设计的,所以用Visual C+而不用MFC就等于是抛弃了Visual C+中很大的一部分功能2。2.Visual C+ 6.0的开发过程Visual C+ 6.0编译器是负责将C+源代码编译成汇编文件,然后使用连接器将相关的中间文

16、件连接在一起,最后生成可执行的二进制文件。整个过程如下:(1)源程序经过预处理后交给编译器。(2)确认代码无误后,编译器将代码生成汇编程序,再生成若干个目标程序(obj文件)。(3)链接器负责将目标程序进行连接,最后生成可执行的程序。图1-1详细地描述了常见Windows应用程序的开发过程3。图1.1 Windows应用程序开发的过程1.2.3 水晶报表(Crystal Reports)简介目前市场上的报表软件很多,其中水晶报表(Crystal Reports)是被国内外广泛使用的一款功能强大的软件,它是由加拿大Crystal Decisions公司开发的一款专业级报表分析和报表生成软件,主要

17、用于连接数据源、检索数据、建立报表,为用户解决现实中各种各样的商业问题。Crystal Reports能够帮助用户组织、归类、过滤、汇总及安排信息,并且能够以多种格式输出报表,如微软的Word、Excel格式,Adobe的PDF格式等。与其他报表创建和等系软件相比,水晶报表具有较高的稳定性和可伸缩性以及应用平台广泛等优点。目前Crystal Decisions公司已经被Business Obiect公司收购,最新的水晶报表产品为Crystal Reports XI(11),本课题就是选用安装Crystal Reports XI英文版进行使用。第2章 系统分析2.1 需求分析 系统开发需求背景对

18、于从事贸易活动的小型商店或者业务中包含进货/销售的任何小型个体单位来说都希望把贸易活动中的各项数据、基础信息进行详细而有效地记录和管理,从而有利于数据的获取、行情的分析,以提高交易的效率和利润降低贸易活动中的成本。本课题所设计的商店管理助手就是为小型商店提一个简单的MIS应用程序,对收支、进货、销售、人员、客户、供应商以及商品信息等情况进行管理,能够登记信息、查询数据,并在一定程度上提供对数据的汇总功能。 系统构架由于主要是针对小型商店设计的一款信息管理系统软件,小型商店规模一般较小,可以把全部管理内容的输入和存储、管理都集中在一台计算机上,不需要计算机网络分布处理,因此是一个典型的桌面数据库

19、应用系统。. 功能需求账户管理:为不同用户设定不同的使用权限。管理员可以对整个系统及账户实施管理;一般用户只限于使用与其业务相关的功能;各账户可以设置本账户密码。进销管理:主要对进货、销货的货品信息(包括品种、数量、进价/售价等)进行登记、统计、查询;其中包括了进货登记、销售登记和进货信息、销售信息模块。基础信息管理:主要对商业活动中的一些基本数据的登记、记录、查询、管理等操作,包括客户信息、供应商信息、员工的信息管理。商品管理:主要包括对商品名、库存的数量等信息进行管理,在进销活动中对商品信息进行相应的修改、查询、增加等操作。统计报表管理:主要是对在经营过程中系统所提供的不同类型的数据进行一

20、定程度的汇总,并把结果用报表的形式提供给用户,便于用户进行数据分析、绩效分析、制定决策。.界面要求系统提供图像用户界面,操作简便,数据显示清晰,并以报表方式输出统计数据。.数据库要求本实例属于桌面数据库应用系统,可以采用Windows 9x/Windows 2000/Windows XP操作系统;应采用安全的数据库管理系统(DBMS),本例采用的是Microsoft SQL Server2000。.软硬件平台本实例较为简单,数据流量不大,对实时性无较高要求。在这里暂时不考虑长期运行、数据热备份及复杂多任务的需求,所以对软、硬件要求不高,能够满足SQL Server2000正常运行即可。具体如表

21、2.1,表2.2所示。表2.1 运行SQL Server 2000的硬件要求硬 件最低要求计 算 机Intel或兼容机Pentium 166MHz或更高内 存企业版:至少64MB,建议128MB或更多,标准版:至少64MB硬盘空间SQL Server 数据库组件:95270MB,一般为250MB监 视 器VGA或更高分辨率表2.2 运行SQL Server 2000的操作系统要求SQL Server版本操作系统要求企业版Windows NT Server 4.0,Windows 2000 Server/Advanced Sever标准版Windows NT Server 4.0,Windows

22、 2000 Server/Advanced Sever个人版Windows Me, 98, NT, 2000 Professional 等开发工具使用Visual C+6.0。 报表工具使用Crystal Reports XI(11),运行环境要求如下:操作系统:Windows2000、Windows XP、Windows2003 Server。CPU:最少133MHz。内存:最少128MB,建议256MB。硬盘控件:320MB。2.2 系统分析 系统功能分析通过需求分析应该能够确定该系统需要完成的功能,系统所要完成的详细功能如下所示:用户登录功能:为了保证系统的安全,需要提供用户登录的功能,

23、只有输入正确的用户名和密码才能够进入系统进行操作。此外,还需要提供不同级别的用户,不同身份的用户,能够使用系统权限也不同。员工信息管理:系统主要维护、记录雇佣员工的基本信息。VIP客户信息管理:VIP客户是对于稳定的客户所办理的会员客户对象,其信息主要包括客户编码、客户姓名、联系电话、身份证等信息。供应商信息管理:供应商是进货源,要管理的信息包括供应商编码、供应商名称、联系人、联系电话、公司地址、备注等基本信息。进货登记:系统要记录每一次的进货详细资料,包括时间、处理进货的员工、进货商品 、数量、单价及金额等。销售登记:类似于进货记录,每一次销售活动 也要进行相应的信息登记。各种查询信息的功能

24、:对上述的各项信息,系统应该能够提供有用的查询功能,对于不同的信息,查询条件是不同的。汇总报表:系统要提供一定程度的汇总数据的功能个,并把结果用报表的形式提供给用户。 系统模块设计对于上述列出的这些功能,如果能够分为不同的模块,能够把问题分析得更清楚,系统实现起来也更容易。该系统可以分为六个模块,每个模块完成系统中不同的功能,如图2.1所示。图2.1 系统模块设计 系统用户权限分析按照系统的功能要求和用户类型,可以设计该课题系统如图2.2所示。图2.2 小商店管理助手设计图系统设置三类账户:系统管理员账户名为Admin,拥有对系统最高级的控制权与使用权Admin身份登录系统后能使用系统提供的所

25、有功能。 店长与系统管理员的操作权限一样,账户名可以根据情况进行设置。 雇员账户名为雇员代码,雇员可以修改本账户密码,以雇员身份登录成功后可以根据身份不同使用不同的权限功能。2.2.4 对象分析1.按照系统的功能要求建立如表2.3所示的对象分析列表。表2.3 小商店管理系统对象列表对 象所 需 信 息所 需 处 理账户管理账户、密码、登录身份 l 登录:按照账户名和密码、登录身份,核对密码表l 修改账户密码l 设置、修改用户登录身份l 增加、删除用户进货信息登记货品编号、货品名称、供应商,进货数量、进价、进货时间、员工编号、进货员姓名l 进货登记l 更新商品信息对 象所 需 信 息所 需 处

26、理销售信息登记货品编码、货品名称、销售数量、售价、折扣率、VIP客户代码、销售员编号、销售员编号、销售时间l 销售登记l 更新商品信息,若商品数量不足销售数量则报错进货信息查询供应商、商品名、进货员编号、进货时间l 查询、删除进货记录销售信息查询购买客户、商品名、销售员、销售时间l 查询、删除销售记录商品信息管理商品的编号、商品名称、供应商、商品描述l 对商品基本信息进行登记l 显示商品基本信息以及目前库存数量l 查询供应商信息供应商信息管理供应商编号、名称、地址、联系人、联系电话l 增加供应商信息l 修改供应商信息l 删除供应商信息l 查询VIP客户信息VIP客户信息管理VIP客户编号、姓名

27、、身份证号、性别、年龄、电话号码l 添加新VIP客户l 修改VIP客户信息l 删除VIP客户信息l 查找VIP客户信息员工信息管理包含雇员编号、姓名、性别、年龄、员工职位、联系电话l 添加新雇员记录l 修改雇员信息l 删除雇员信息l 查询员工信息员工销售业绩报表员工编号、员工姓名、员工销售数据l 各员工的商品销售明细统计的数据显示商品销售报表商品编号、商品名称、商品销售数据l 不同商品销售情况统计明细数据显示盈亏统计报表日期、商品编号、进货金额、销售金额、盈利额l 对谁选取的时间段的盈亏统计显示用户登录用户名、密码、登录身份l 实现用户登录功能2.各对象之间存在如图2.3所示的关系。图2.3

28、各模块对象之间的关系图用户登录对所有模块存在一个约束作用,只有同过用户登录实现登录功能用户才可以对其拥有操作权限的模块进行操作。密码管理和用户管理同时也约束着用户登录,只有用户的用户名、密码、登录身份正确才能够实现登录功能。员工信息的管理影响销售登记和进货登记的记录,在销售登记和进货登记的操作中需要对操作的员工的姓名、员工的编号进行登记。销售信息登记受进货信息和VIP客户信息管理模块的信息数据影响,销售的商品必须是商品信息管理模块中有效并且有库存的商品,同时在销售商品时商品的数量会有减少,商品信息管理中的库存显示数据也应该相应减少这样就与商品信息管理模块中起到关联,在销售过程中会涉及VIP客户

29、的信息登记,在员工销售商品时会进行一些必要信息的登记,这就使得销售信息登记会对员工销售业绩报表、商品销售业绩报表以及盈亏统计报表的数据显示起到约束作用。销售信息登记直接营销销售信息的查询功能,所以约束了销售信息查询模块的数据显示。进货信息登记是要建立在商品信息管理模块中已经建档的商品信息,在商品进货后相应的增加商品信息管理模块中的库存数量,在进货登记需要记录供应商信息、员工编号、员工姓名等信息,这就受到供应商信息和员工信息管理模块的约束。进货信息的登记直接会影响进货信息的查询。2.3数据流程图数据流程图(DataFlowDiagram,简称DFD)是S方法中用于表达系统逻辑模型的一种工具,它以

30、图形的方式描绘数据在系统中流动和处理的过程,由于它只是反应系统必须完成的逻辑功能,所以它只是一种功能模型。数据流程图由数据量、加工(又称为数据处理)、数据存储(又称为文件)、数据源点或终点4四种基本成分组成。要表达数据处理过程的数据加工情况,用一个数据流图是不够的。为表达稍微复杂的实际问题,需要按照问题的层次结构进行逐步分解,并以分成的数据流图反映这个结构关系。这个数据处理过程堪称一个加工,它的输入数据和输出数据实际上反映了系统与外界环境的借口。这就是分层数据图的顶层,也称作整体图。在这里,将整个系统看成是一个加工做出一个商店管理助手的系统总体数据流程图如图2.4所示。图2.4 商店管理助手系

31、统总体数据流程图第3章 数据库设计设计数据库时应该首先充分了解用户各方面的需求,包括现有的以及将来可能增加的需求。用户的需求具体体现在各种信息的提供、保存、更新和查询等方面。这就要求数据库结构能够充分满足各种信息的输入和输出。一般数据库设计要利用实体关系模型,分析出实际应用中的实体数据库设计的关键,每个实体具有其属性,根据属性就可以确定数据模式,从而设计出数据库表。下面就各处本课题的实体分析以及数据库的逻辑设计,为创建数据库打下基础。3.1数据库需求分析在本系统中主要有以下实体:员工、商品、供应商、客户、系统用户、销售活动、及进货活动。在进行逻辑设计时主要根据这些实体设计表。按照实体分析和对象

32、分析需要为系统建立以下数据表:账户信息表:包含账户名、密码、登录身份等字段。其中用户名为主键。员工信息表:包含雇员编号、姓名、性别、年龄、身份证号、员工职位、联系电话字段,主键为雇员编号。VIP客户信息表:包含VIP客户编号、姓名、性别、年龄、身份证号、电话号码字段,主键为VIP客户代码。供应商信息表:包含供应商编号、供应商名称、联系人、联系电话、地址。进货信息表:包含商品品编号、商品名称、生产商、进货数量、进价、总计金额、进货员编号、进货时间字段。以商品编号为主键。销售信息表:包含商品代码、商品名称、销售数量、售价、VIP客户代码、售货员编号、销售时间字段。以商品编号为主键。商品信息表:包含

33、商品编号、商品名称、目前数量、商品备注。主键为商品编号。3.2 数据库逻辑设计通过需求分析和对象分析,在这一部分给出系统数据逻辑设计,表3.1到3.7 为数据库的逻辑设计。每个表格对应数据库中的一个表,在SQL Server中创建数据库时要以此为基础建立表。表3.1 账户信息表字段列名可否为空数据类型备注用 户 名UserNameNOT NULLVARCHAR(6)PK用户密码PasswordNOT NULLVARCHAR(6)用户身份TypeNOT NULLVARCHAR(20)表3.2员工信息表字 段列名可否为空数据类型备注员工编号EmployeeIDNOT NULLVARCHAR(6)P

34、K姓 名NameNOT NULLVARCHAR(20)性 别EmployeeSexNOT NULLVARCHAR(1)年 龄EmployeeAgeNOT NULLInt联系电话EmployeeTelNOT NULLVARCHAR(11)表3.3 VIP客户信息表字 段列名可否为空数据类型备注VIP客户编号VIPNoNOT NULLVARCHAR(6)PK姓 名VIPNameNOT NULLVARCHAR(20)性 别VIPSexNOT NULLVARCHAR(1)年 龄VIPAgeint身份证号VIPIDNOT NULLVARCHAR(12)电 话VIPTelVARCHAR(6)居住地址VIP

35、AddressVARCHAR(50)表3.4 供应商信息表字 段列名可否为空数据类型备注供应商编号SupplierIDNOT NULLVARCHAR(6)PK供应商名称FactoryNameNOT NULLVARCHAR(50)联系人姓名ContactNameVARCHAR(20)联系电话ContactPhoneNOT NULLVARCHAR(11)公司省份ProvenceNOT NULLVARCHAR(50)公司城市CityNOT NULLVARCHAR(50)表3.5进货信息表字 段列名可否为空数据类型备注进货记录编号BuyIDNOT NULLVARCHAR(6)PK进货日期时间BuyDa

36、teNOT NULLdatetime商 品 编 号ProductIDNOT NULLVARCHAR(6)进货数量QuantityNOT NULLint进货单价PriceNOT NULLmoney进货金额AmountNOT NULLmoney供应商编号SupplierIDNOT NULLVARCHAR(6)进货员编号EmpIDNOT NULLVARCHAR(6)表3.6 销售信息表字 段列名可否为空数据类型备注销售记录编号SellIDNOT NULLVARCHAR(6)PK销售日期时间SellDateNOT NULLdatetime商 品 编 号ProductIDNOT NULLVARCHAR(

37、6)销售数量QuantityNOT NULLint销售单价PriceNOT NULLmoney销售金额AmountNOT NULLmoneyVIP客户编号VIPNoNOT NULLVARCHAR(6)销售员编号EmpIDNOT NULLVARCHAR(6)表3.7 商品信息表字 段列名可否为空数据类型备注商品编号ProductIDNOT NULLint商品名称NameNOT NULLVARCHAR(50)目前数量CurAmountNOT NULLint商品描述DescripionVARCHAR(200)第4章 系统详细设计本课题设计的小商店管理助手系统,要求在需求分析和数据库设计完成的基础上设

38、计美观大方、清晰明了、简单方便的操作界面,选择合适的数据库程序开发技术、完成项目的建立以及各模块实现的代码设计。4.1 选择数据库程序开发技术我们知道要使用ADO技术进行数据库开发有多种技术可以选择。可以直接使用ADO对象、使用ADO封装类、使用微软提供的各种ADO控件,还能够利用ADO Extention技术绑定数据从而简化对字段的存取。在开打程序的过程能够中,需要根据实际应用的具体需求和读者对上述技术的掌握情况进行选择。在本课题设计中,选用ADO封装类和ADO控件来完成数据库方面的操作。4.2新建项目首先,在Visual C+中创建新项目,并构建项目的基本框架。具体步骤如下:(1)选择【F

39、ile】|【New】命令,打开【New】对话框。在【Project】选项卡中,选择【MFC AppWizard(exe)】,输入项目名“商店管理助手”,选择路径,单击【OK】进入向导。(2)在第一步中选择【Single document】当选按钮。(3)在25步骤中保留默认。在向导第6步中,为视图类CMyView选择基类,在【Base class】下拉列表中选择CForm View类。其他保留默认设置后单击【finish】按钮,完成项目新建。4.3 添加ADO封装类和ADO控件前面提及到在本课题设计中选择使用ADO封装类和ADO控件实现数据可操作的功能。这就需要把封装类的文件添加到项目中,以及

40、添加ActiveX控件。(1)在【Fileview】中的Source Files和Header Files两个文件夹中分别新建两个文件ado.cpp和ado.h文件并且编入封装类代码。(2)完成添加后可以在项目工作区的类视图【Class View】中可以看见增加了两个类“CADODatavase”和“CADORecordset”。(3)选择【Project】|【Add ToProject】|【Components and Controls】命令,在弹出的【Components and Controls Gallery】对话框中,打开【Registered ActiveX Controls】文件

41、夹,找到“Microsoft ADO Data Control 6.0(SP4) (OLEDB)”控件和“Microsoft DataGrid Control 6.0(Sp5)(OLEDB)”控件分别插入项目中。在【Confirm Classes】中所有包装类都选中。插入控件后在对话框编辑器的工具栏中会增加两个控件对应的图标。在类视图【Class View】中也会看到增加的控件包装类。4.4用户登录模块设计用户在使用系统时应首先通过登陆界面输入正确的用户名、用户密码、登陆身份才能进行登录打开系统界面。登陆对话框界面设计在登陆界面中应该包含用户名、用户密码、登录身份以及其对应的编辑框和组合框,设

42、计界面如图4.1所示。图4.1 登录界面对话框资源详细设置如表4.1所示。表4.1登录对话框信息ID标题对应的类IDD_DIALOG_LOG登 录CLoginDlg控件的详细信息如表4.2所示。表4.2 登录对话框控件设置ID对应的变量变量长度IDC_EDIT_USERNAMECstring m_UserName20IDC_EDIT_PWDCstring m_Pwd6IDC_COMBO_TYPECstring m_Type 登陆对话框代码设计添加【确定】按钮相应函数OnOk(),在函数中进行用户、密码和登录身份的判断。void CLoginDLG:OnOK() / TODO: Add extr

43、a validation here/ Check UserName VadilatyUpdateData(true);m_strUserName.TrimRight(" ");if ( ""=m_strUserName )AfxMessageBox(_T("请填写用户名"), MB_ICONEXCLAMATION); return; /验证是否输入用户名_variant_t Holder, strQuery;strQuery = "select UserName,Password,Type from 账户信息表where U

44、serName='"+m_UserName+"'"theApp.ADOExecute(theApp.m_pADOSet, strQuery);int iCount = theApp.m_pADOSet->GetRecordCount();if ( 0=iCount ) theApp.m_iLoginCount+;if ( theApp.m_iLoginCount>2 ) AfxMessageBox("没有这个用户n三次输入均不正确,请核对后再来", MB_ICONEXCLAMATION);CDialog:OnCanc

45、el(); return;AfxMessageBox("没有这个用户,请重新输入用户名", MB_ICONEXCLAMATION); return; /核对用户名验证说输入的用户名是否存在并且正确CString sPWD;theApp.m_pADOSet->MoveFirst();Holder = theApp.m_pADOSet->GetCollect("Password");m_Pwd = Holder.vt=VT_NULL?"":(char*)(_bstr_t)Holder;if ( 0!=sPWD.Compare(

46、m_Pwd) )theApp.m_iLoginCount+;if ( theApp.m_iLoginCount>2 ) AfxMessageBox("输入密码不正确n三次输入均不正确,请核对后再来", MB_ICONEXCLAMATION);CDialog:OnCancel(); return;AfxMessageBox("输入密码不正确,请重新输入", MB_ICONEXCLAMATION); return; /验证所输入得密码是否正确CString sTYPE;theApp.m_pADOSet->MoveFirst();Holder =

47、theApp.m_pADOSet->GetCollect("Type");m_Type= Holder.vt=VT_NULL?"":(char*)(_bstr_t)Holder;if ( 0!=sPWD.Compare(m_Type) )theApp.m_iLoginCount+;if ( theApp.m_iLoginCount>2 ) AfxMessageBox("用户身份选择不正确n三次选择均不正确,请核对后再来", MB_ICONEXCLAMATION);CDialog:OnCancel(); return;Afx

48、MessageBox("用户身份选择不正确,请重新选择", MB_ICONEXCLAMATION); return; /核对登陆身份是否正确/ Get Login UsertheApp.m_sCurrentUser = m_sUSER;CDialog:OnOK();4.5主窗口菜单界面设计设置一系列菜单和子菜单,以打开各项管理功能,运行界面如图4.2所示。图4.2程序运行主界面在视图资源中每个下拉菜单下添加各项子菜单,详细设置表4.3所示。表4.3菜单设置下拉菜单(标明)子菜单(标明)子菜单ID用户管理修改密码ID_MENU_CHANGEPWD用户管理ID_MENU_USE

49、RMAN基础信息管理VIP客户信息管理ID_MENU_CUSTOMER供货商信息管理ID_MENU_SUPPLIER员工信息管理ID_MENU_EMPLOEE进销信息管理进货信息登记ID_MENU_BUYENTRY销售信息登记ID_MENU_SELLENRY进货信息查询ID_MENU_BUY销售信息查询ID_MENU_SELL商品信息管理商品信息管理ID_MENU_PRODUCT统计报表员工销售业绩报表ID_MENU_PEPORTEMP商品销售业绩报表ID_MENU_PEPORTPROD盈亏统计报表ID_MENU_PEPORTPROFIT4.6用户管理模块设计 修改密码窗口界面设计要实现修改密

50、码的功能要提供修改密码的对话框界面,在这一部分首先创建修改密码对话框资源,然后通过修改数据库中的数据来实现对用户密码的修改,主要包括用户名、输入旧密码、输入新密码、确认新密码等相关信息的操作。界面设计如图4.3所示。图4.3 修改密码界面修改密码对话框信息设置如表4.4所示。表4.4 修改密码对话框信息ID标题对应的类IDD_DIALOG_CHANGEPWDD修改密码CChangPwdDlg主要控件的信息如表4.5所示。表4.5 密码修改控件设置控件类型ID对应变量Edit BoxIDC_EDIT_OLDCString m_OldPwdEdit BoxIDC_EDIT_NEW1CString

51、m_NewPwd1Edit BoxIDC_EDIT_NEW2CString m_NewPwd2StaticIDC_STATIC_USERNAMECString m_UserName用户信息管理界面设计 1用户信息管理开窗口界面设计用户信息管理包括查看用户列表、添加、删除用户和修改用户身份。新建对话框资源,并添加其对应的类,该对话框信息设置如表4.6所示。表4.6 用户管理对话框信息ID标题对应的类IDD_DIALOG_USERMAN用户信息管理CUserManDlg 添加控件对应的变量时,详细控件设置如表4.7所示。表4.7 用户管理对话框控件设置控件类型ID对应变量ListIDC_LIST_

52、USERCListCtrlm_UserListButtonIDC_BUTTON_ADDUSERCButton m_ButAddButtonIDC_BUTTON_CHANGETYPECButton m_ButChangeButtonIDC_BUTTON_DELETECButtonm_ButDel添加控件,设计完成后,界面设计如图4.4所示。图 4.4 用户信息管理界2添加用户界面窗口设置要实现添加用户功能,需要在新建一添加用户对话框资源,对话框设计如图4.5所示。图4.5 添加用户界面添加用户对话框信息设置如表4.8所示。表4.8 添加用户对话框信息设置ID标题对应的类IDD_DIALOG_AD

53、DUSER添加用户CAddUserDlg添加用户对话框控件设置,如表4.9所示。表4.9 添加用户控件设置控件类型ID对应的变量Combo BoxIDC_COMBO_TYPECcomboBox m_ComboTypeEdit BoxIDC_EDIT_NAMECString m_Name 用户管理模块代码设计1.添加用户类CUser(1)在CUser类中添加变量成员函数,类定义如下:class CUser public:CUser();virtual CUser();private:CString m_userName;CString m_Pwd;CString m_type; /分别对应账户信

54、息表中的三个字段public:void DeleteUser(CString cName);void AddUser();CString GetUserName()return m_userName;void SetUserName(CString cUserName)m_userName=cUserName;CString GetPwd()return m_Pwd;void SetPwd(CString cPwd)m_Pwd=cPwd;CString GetType()return m_type;void SetType(CString cType)m_type=cType;/*以下是需要的数据库操作*/判断指定用户名在数据库中是否存在/*void sql_insert(); void sql_delete(CString cUserName);*/void UpdatePwd(CString cUserName);/读取所有字段值void GetData

温馨提示

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

最新文档

评论

0/150

提交评论