当前位置:文档之家› 毕业论文--《销售管理系统》

毕业论文--《销售管理系统》

毕业设计论文

论文题目:销售管理系统

所在系部:

计算机工程系应用专业

姓名:周俊

学号:20050572

指导教师:钟文龙

重庆电子职业技术学院

完成日期:2008-3-8

目录

1.前言 (2)

2.系统需求分析 (3)

2 要求分析: (3)

2.1 用户定位分析: (3)

2.2 功能需求分析 (3)

2.2.1 问题定义及可行性研究 (3)

2.2.1.1 问题定义 (3)

2.2.1.2 (4)

2.2.2 (4)

2.3 性能需要分析 (4)

3.环境平台分析 (5)

3.2程序的功能设计 (5)

3.3程序流程设计 (6)

3.4 系统设计 (6)

3.5 数据库设计 (7)

4. 系统的详细设计 (9)

4.1系统模块设计及程序流程图 (9)

4.2程序单元设计以及编码及其开发 (11)

5. 系统实现 (11)

5.1 应用程序主界面的实现 (12)

5.1.1添加菜单 (13)

5.1.2系统与数据库的连接 (14)

5.1.3添加公共模块入引用 (15)

5.1.4添加代码 (16)

5.2 交易管理的实现 (16)

5.2.1进货登记的实现 (16)

5.2.2 销售登记的实现 (18)

5.2.3 退货登记的实现 (18)

5.3 进货统计的实现 (19)

6. 结论与展望 (20)

7.参考文献 (21)

1.前言

随着科学技术的进步,计算机行业的迅速发展,大大提高人们的工作效率。

计算机信息处理系统的引进已彻底改变了许多公司的经营管理。甚至附近的一个小店主也可能正在用计算机来控制销售、记账以及其他活动。在一些大公司里,电子信息处理系统监测全部工作设备的操作与运行。

销售管理系统是企业管理机制中的重要组成部分,通过对企业销售管理系统的销售管理机制进行调查研究,开发了销售管理系统。本系统中解决了企业管理事务中的进货、销售、退货等情况的问题以及相关统计工作。本系统中包含七个功能模块:系统登录、交易管理、进货统计、销售铳计、业绩查看、报表查看和帮助。

本系统使有Microsoft公司推出的visual basic 进行前端开发,VB是基于WINDOWS的面向对象的可视化开发工具。它采用了当今软件设计的最新技术,具有开发效率高、设计灵活、生成的软件界面友好美观等特点。本系统中通过VB 的ADO和数据库进行无缝连接,大量应用了VB中的控件和触发事件。后端的开发工具是Microsoft Access 2000,整个数据库都是相互关联的,使数据库具有较高的完整性,一致性和安全性。

在现代化企业中,信息管理工作将发挥越来越重要的作用。企业信息管理工作已经渗透到企业日常工作的许多方面,无论是其自身还是所发挥的作用,都为企业的创新、发展以及经济效益,做出了显著的贡献。

因此,企业必须加强自身的信息基础设施建设,通过企业基础数据的信息化、企业基本业务流程和事务处理的信息化、企业内部控制及实施控制过程的信息化、人的行为规范管理等企业基础管理信息化工程,确保企业在规模不断扩大和业务迅速发展的过程中保持坚实的管理基础和繁殖内核,促进企业的可持续发展。

企业的销售管理是企业发展的关键环节,一个好的销售管理体制将给企业带来很可观的经济效益。无论是一个销售公司还是一个销售商店,都有很多的销售数据需要管理。手工管理这些纷繁复杂数据的方式已经不适应时代的潮流,实现数据规范化、自动化的电脑管理,是一个管理规范、动作高效的企业单位的必然要求。

本系统是为中小型企业的销售管理系统,专为中小型企业的销售管理系统的需求而开发。系统具有交易管理、进货及销售统计、预览数据表等功能,界面友好、操作简便。

开发此项目,能够将所学的理论知识与实际应用相结合,并尝试应用最新流行的开发工具,以达到掌握新技术、进一步提高程序开发能力的目的。

2.系统需求分析

2 要求分析:

尽早地对软件项目的可行性做出细致而谨慎的评估,以避免在项目开发过程中浪费大量的人力、物力、财力。

2.1 用户定位分析:

进入二十一世纪,信息化的进程进一步加快,向着网络化、智能化方向发展,计算机行业飞速向前发展,信息化深入到社会的各行各业。微机化管理的广泛应用,使工作效率显著提高。

通过可行性分析,我决定为中小型企业开发销售管理系统。企业规模的不断扩大,客户不断增加,销售业务也随之猛增,手工管理纷繁复杂的销售数据已经不能满足需要。所以销售管理的规范化、自动化已经是必然的要求。

2.2 功能需求分析

2.2.1 问题定义及可行性研究

在讨论具体的需求分析之前,我想先对两个问题给予简单的说明。这两个问题虽然简单,但却是软件开发周期中不可缺少的两个阶段。

2.2.1.1 问题定义

问题定义阶段必须回答的关键问题是“要解决的问题是什么?”。显然,这个问题解决整个软件开发周期中起着指导性作用。软件开发应该有这样一条鲜明的

线索贯穿始终,否则我们的所有工作都是盲目的。现在我们应该明确问题定义阶段的主要任务:我们要建立一个销售管理系统,以解决企业销售事务的基本情况,来摆脱传统的手工记账,实现管理自动化,从而提高工作效率。同时该系统应不可避免的涉及到库存商品基本信息、供应商信息、客户信息的维护和处理及进货统计、销售统计等统计及查询处理。

2.2.1.2可行性研究

这个阶段要解决的关键问题是“对上一阶段所确定的问题有无行得通的解决办法”。从而导出系统的逻辑模型,然后从系统逻辑模块出发探索若干种可供选择的系统实现方案。由于实际条件的制约,对可行性研究我们不再多说,但我们必须明确,现在我们所讨论的问题从各方面来说都行得通。在明确了这两个简单问题之后,我们的问题应该步入正题了。需求分析阶段是软件定义时期的是后一个阶段,这一阶段的中心任务是准确的回答“系统必须做什么?”这个问题。其结束的标准是通过需求分析应该得出有数据流程图、ER图、数据字典等描绘的精确的系统逻辑模型。

下面我们就紧紧围绕需求分析阶段的中心任务和目标展开计论。

2.2.2 销售管理系统具体任务要求和运行过程

系统的功能要求即用户对目标系统数据处理功能所提出的要求,主要考虑以下销售管理需求:

★进货时入库登记,以便日后查看和统计进货情况。

★销售时把相应数量的商品从现存商品库中减去,并记录于另外的一个销售库中,以便日后查看和统计销售信息。

★是销售就难免会有顾客退货情况发生,因此还需建立一个相应的退货管理,把退回来的货加入现存商品库,再从销售库中减去,进行退货登记。

★还要能够随时查看各种信息表,如员工信息、进货信息、销售信息、退货信息等。

★除了以上一些基本的需求外,实际上公司用来进行决策和管理分析的数据才是用得最多的数据。因此还需要有一些相应的关于以上基本信息的统计信息。如希望看各个时间段(如今日、本月、本和度、本年度等)的进货或销售情况,以便对一个的动作进行一个准确的预测和正确的决断。

★为了调动员工的积极性,员工的薪水应该和他的销售业绩挂钩,因此还需要能够查询各员工的销售业绩,以便对他的业绩进行考核和评比。

2.3 性能需要分析

公司规模的不断扩大,与客户间的往来业务也越来越多,手工管理这些纷繁复杂数据的方式已经不适应企业发展的要求,实现数据规范化、自动化的电脑管理,是一个管理规范、动作高效的企业单位的必然要求。因此我们开发并应用此

系统,能够适应企业发展的需要,提高了工作效率,很好地实现了信息数据的规范化管理。

3.环境平台分析

1、由于Windows2000操作系统是有人机变互的友好界面,很容易掌握及操作,程序界面相对较容易实现等特点,加之目前基于Windows2000操作系统的软件开发工具也很多,易于学习、开发及应用。

2、同时由于销售管理业务事务种类繁多,结合铁岭香河商贸有限公司的实际情况,销售业务量及管理人员的素质等因素,Windows2000操作系统易学易用,而且可以满足需求,故决定采用Windows2000平台开发。

3、采用Microsoft Access 型数据库系统作为销售管理系统的后台数据库,Access数据库使用与Windows2000完全统一的风格,采用面向对象的方式对数据库进行管理与操作,大大简化了用户的开发与维护工作,另外小型数据库的灵活性、安全性、易用性为数据库编程提供了良好的条件。

4、由于Microsoft公司的Visual Basic 6.0具有面向对象可视化编程的特点,是创建Windows98应用程序最简便、最快捷的开发工具之一,是集先进性、实用性于一体的现代化软件开发工具,故采用Visual Basic6.0为开发工具。

硬件:中央处理器(CPU):

软驱:

内存:

显示器:

打印机:

此系统操作简单,使用人员无需具有专业的计算机操作基础,因此对工作人员来说应用此系统是不成问题的。

本系统开发经费并不是很多。对于规模不很大,经费有限的单位在经济上是可以接受的,并且本系统实施后可以显著提高效率,很快就可以体现经济效益。

投入:除软件开发成本,一台中等电脑,现价4000元左右,完全可以良好的运行系统,完成硬件平台的要求,而且经济实用。

综上所述,无论是从技术方面还是经济方面看开发此系统均是可行的。

3.2程序的功能设计

总体设计阶段的基本目的是用比较抽象概括的方确定系统如何完成参定的任务,也就是说,应该确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构。因此,总体设计阶段由两个小阶段组成。首先需要进行系统设计,从

数据流图出发设想完成系统功能的若干种合理的物理方案,最后选择一个最佳方案。然后进行软件结构设计,确定软件由那些模块组成以及这些模块之间的动态调用关系。

3.3程序流程设计

本系统开发时使用的系统只是普通的PC机,操作系统为Windows2000 版本。数据库的建立使用的是office XP中的Microsoft Access 。数据访问方法为使用ADO(Active数据对象Active Data Objects)通过ODBC的方法同数据库接口。使用这种方式访问数据,可以使用任何一种ODBC数据源,即不止适合于SQL Server Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。

此系统总体的功能是实现销售管理的系统化、规范化和自动化。

系统总体框图如下:

3.4

销售管理系统不简单的是一个软件,它覆盖了企业销售管理的职能,是企业

管理事务中关键环节。是一个将销售管理思想以及当今最新计算机技术完美统一

起来,实现科学化、自动化管理的集成应用系统。

.在功能方面,系统面向企业各个层次用户的需求,即企业领导和管理人员以及保障系统运行的系统管理员。为企业销售管理提供全面、及时、准确的信息和可靠的依据。

.在通用性设计方面,以标准化为基础,通过信息流程和管理过程的合理模型化、管理对象的模型化,使得系统具有一定的通用性和规范性。

.在系统开放性方面,按照软件工程开发规范实现系统的开放性,既便于扩充又便于升级,以适应今后企业管理发展及销售体系改革的需求。

.在系统和数据的安全性方面,系统采用数据库级用户权限和应用程序级运行权限的双重控制机构,提供了统一的基于角色的用户管理手段,通过数据库系统的数据安全机制,具有完善的系统和数据安全的保障体系。

.在操作性方面,采用图形用户界面技术,使系统能够以多得图形窗口和丰富便利的操作界面,通过鼠标或键盘的操作,为用户提供最简洁的使用方法。

3.5 数据库设计

上面提到的各种功能的实现都离不开数据库的支持,因此数据库设计作为本系统设计的一部分不可缺少。数据库设计在整个程序设计过程中占据非常重要的地位,也是整个程序设计的基础。把数据库从整个程序中分离出来,单独进行,有很大的好处,即使程序设计分工明确,也方便程序员在详细设计师不必考虑数据库的结构,只需知道数据名及表名和表中的字段名就能进行编码设计,体现面向对象设计的思想。其实在需求分析阶段,我们的很大一部分讨论始终都没离开用户所要求的数据。如果把前面的讨论看成是数据库的逻辑设计,下面的问题将是数据库的具体物理实现。

我们使用的数据库系统是Windowa Access 2000。从上面的功能分析看出本系统需要建立以下几个数据表:员工表(employee)表、现存货表(goods)表、已售商品表(sell表)及废品表(badgoods)表和使用用户表(userdb表)。

图3-2 数据库各数据表间关系第四章系统的详细设计

4. 系统的详细设计

4.1系统模块设计及程序流程图

此系统的采用划分独立模块,自顶向下逐步求精的方法设计。这里仅列举两个典型程序流程图。

退货登记过程比较复杂,退货登记模块的程序流程图如下图4-1所示:

登录模块的流程图如下图4-2所示:

4.2程序单元设计以及编码及其开发

本系统总体的功能是实现铁岭香河商贸有限公司销售管理的系统化、规模化和自动化,具体包括如下功能模块:

(1)系统登录:包括用户登录、修改密码、添加新用户、退出系统等。

(2)交易管理:包括进货登记、销售登记、退货登记等。其中进货登记中还包含进货厂商的登记,如果是新地进货厂商,可以在此登记入库。销售登记中还包括进货客户的登记,如果是新的客户,可以在此登记入库。进货和销售的主要交易都是在此进行。

(3)进货统计:包括今日进货统计、本月进货统计、本季度进货统计、本年度进货统计等。其中每次进行进货统计都是按进货厂商和进货金额顺序排列的。使用一个表格显示所选时间段的全部进货数据,包括进货编号、商品名、生产厂商、产品型号、单价、数量、总金额、进货日期、业务员编号等。再使用另一表格显示分别从各个厂商进货的金额,还有一个文本框用于显示此时间段的总进货金额。

(4)销售统计:包括今日销售统计、本月销售统计、本季度销售统计、本年度销售统计等。其中每次销售统计都是按照产品厂商和销售金额顺序排序的,用户可以一目了然的看出各种型号产品的销售额。使用一个表格显示所选时间段的的全部销售数据,包括销售编号、商品名、生产厂商、产品型号、单价、数量、总金额、销售日期、业务员编号等;再使用另一表格分别显示各个厂商产品的销售金额,还有一个文本框用于显示此时间段的总销售金额。

(5)业绩查看:实现各员工销售情况的查看,可以一次性显示所有员工的销售情况,也可以根据员工编号查看单个员工的销售情况。

(6)查看数据表:实现各种数据表的浏览,包括进货表、销售表、退货表、员工表、进货商、客户表。浏览时此表数据的所有信息项全部显示。如果是员工信息或进货商信息有变化,还可以对员工表和进货商表可以进行修改数据,其他的表则不能进行修改,防止有人制造假数据。

(7)帮助:提供系统信息及系统应用提示。

5. 系统实现

5.1 应用程序主界面的实现

系统主界面是程序运行的起始点,负责整个程序的开启和关闭。系统主界面的最终效果图如图5-1所示。

图5-1 程序预览

运行程序后首先出现登录界面,您需要在用户名称的下拉列表中选择您所使用用的用户名,然后键入密码,点击[登录]按钮或直接按回车键,就根据您的权限进入铁岭香河商贸有限公司销售管理系统。如果你所输入的密码与所选择的用户名不符,就会显示错误信息,提示重新输入。输入成功后,会根据你的权限对你的操作进行了如指掌制,在此系统中设有3种权限,在系统测试中在进行详细介绍。

本系统的主界面是一个多文档(MDI)窗体,使用MDI窗体可以使程序条理清晰,井然有序,因为MDI窗体是父窗体,它负责整个程序的启动和关闭,其他的窗体都是它的子窗体。一个应用程序只能有一个MDI窗体,但可以拥有多个子窗体。

单击“工程”→“添加MDI窗体”菜单,在弹出的对话框中单击“打开”按钮则为当前项目添加了一个MDI窗体。

添加好MDI窗体后,按照表5~1所示设置其各个属性。

表5~1 MDI窗体属性

5.1.1添加菜单

使用菜单编辑器为本主窗体添加如图5-2所示的多级菜单。

其中进货统计菜单下有今日进货量、本月进货量、本季度进货量、今年进货量4个子菜单:销售统计菜单下有今日销售量、本月销售量、本季度销售量、今年销售量4个子菜单:业绩查看菜单无子菜单:查看数据表菜单下有现存货表、各级菜单的Caption和Name属性如表5-2所示。

5.1.2系统与数据库的连接

ODBC(开放式的数据库连接,Oper Database Connectivity)是一种公认的关系数据源的接口界面。它提供统一的接口界面,ODBC对任何数据源都未作优化。本程序中使用ADO通过ODBC的方法同数据库接口,ADO通过其内部的属性和方法提供统一的数据访问接口。

打开“控制面板”进入“管理工具”双击“数据源(ODBC)”图标,进入如图5-3

图5-3 数据源管理器

单击“添加”按钮,进入创建新数据源窗体,选择其中的Microsoft AccessDriver (*.mdb)如图5-4所示。

图5-4 创建数据源

单击“完成”按钮,进入如图5-5所示的ODBC Microsoft Access安装窗口,在“数据源名”中输入此数据源名称,单击下面的“选择”按钮,选择所要创建数据源的数据库名。可以单击“高级按钮”,进入设置高级选项窗口,设置使用此

5.1.3添加公共模块入引用

由于程序中对数据库连接串是整个程序共用的,所有窗体都是用它连接数据源,而且还有一些跨窗体的变量,所以应该使用公共模块来存放这些全避变量。

单击“工程”→“添加模块”菜单,打开一个公共模块,在其中添加如下代码:

Option Explicit

Public conn As New ADODB.Connection

由于要使用ADO连接数据源,因此在添加代码之前应添加上“Microsoft Active Data Objects 2.0 Library”项。

5.1.4添加代码

主窗体中主要是负责打开和关闭对数据库的连接,其他的代码则主要是实现单击某个菜单选项即弹出相应窗体的语句,添加以下代码以打开数据库连接:Private Sub MDIForm_Load()

Dim strCnn AS String

StrCnn=”Provider=MSDASQL .1;Persist Security Info=False; Data

Source=SellSystem”

Conn.Open strCnn

End Sub

上面的strCnn被赋予的值是ADO的连接串属性,其中Provider是数据源的提供者,中间一部分表示使用此数据源不用账号和密码,最后的Data Source 部分是前面建立的ODBC数据源的名称。

再添加以下代码,使得关闭程序的同时关闭对数据库的连接;

Private Sub MDIForm_unload (Cancel As Integer)

End Sub

5.2 交易管理的实现

交易管理模块下有进货登记、销售登记、退货登记3个子模块。5.2.1进货登记的实现

重要控件及其属性

进货登记应用界面中重要控件的属性如表5-3年示。

(2)具体实现方法

首先在MDIfrmMain 主窗体代码中添加如下代码,以使单击“进货登记”子菜单后进入本窗体:

Private Sub mnbuy log_dlick()

FrmAddGoods.Show

End Sub

然后考虑“添加商品”框中的相应代码。由于上下两个框都要使用ADODB.Recordset 变量,因此先加入以下代码定义5个窗体范围的ADODB.Recordser变量在代码窗体的上端:

Dim rs_supply As New ADODB.Recordset

Dim rs_name As New ADODB.Recordset

Dim rs_addfc As New ADODB.Recordset

Dim rs_add As New ADODB.Recordset

Dim rs_addfcname As New ADODB.Recordset

首先需要检测是否所有待填字段都已填写相应信息,不允许有空,如果为空则弹出“请填写*****!”窗口提示用户。

检测完用户输入信息后,再使用上面定义的RecordSet对象变量打开goods表,这样才能添加记录到库中。代码如下:

Private Sub cmdadd_click()

……

Dim sq1 As String

Sq1=“select * from goods”

rs_add.Open sq1,conn,adOpenKeyset,adLockPessimistic

……

End Sub

5.2.2 销售登记的实现

(1)重要控件及其属性

销售登记应用界面中重要控件的属性如表5-4所示。

(2)具体实施方法

首先在MDIfrmMain主窗体代码中添加如下代码,以使单击“销售登记”子菜单后进入本销售登记窗体:

private Sub mnsell_Click()

frmSell.Show

End Sub

在添加销售登记窗体的代码时也需要加入以下代码定义四个窗体范围的ADODB.Recordset变量在代码窗体的上端:

Dim rs_custom As New ADODB.Recordset

Dim rs_supply As New ADODB.Recordset

Dim rs_add As New ADODB.Recordset

5.2.3 退货登记的实现

(1)重要控件及其属性

退货登记应用界面中重要控件及其属性如表5-5所示。

表5-5 退货登记窗体重要控件属性设置

(2)具体实现方法

首先在MDIdfrmMain主窗体代码中添加如下代码,以使单击“退货登记”子菜单后进入本退货登记窗体:

private Sub mnselllog_Click()

FrmRetreat.Show

End Sub

退货操作需要进行以下4个操作:检测是否确实已销售,从销售表中减去,加入退货表,返回加入现存货表或废商品库表。检测和从销售表中减去都是对销售表的操作,因此可以用同一个游标。所以需要加入以下代码定义6个窗体范围的ADODB.Recordset变量在代码窗体的上端:

Dim rs_custom As New ADODB.Recordset

Dim rs_supply As New ADODB.Recordset

Dim rs_back As New ADODB.Recordset

Dim rs_check As New ADODB.Recordset

Dim rs_buy As New ADODB.Recordset

Dim rs_buybad As New ADODB.Recordset

5.3 进货统计的实现

进货统计模块下有4个子模块,分别是今日进货量、本月进贷量、本季度进货量、今年进货量。由于它们的应用界面非常相似,本系统中使用一个SSTab控件以选项卡形式在一个应用界面中实现以上4个子模块。

进货统计应用界面中最重要的一个控件是一个SSTab控件,其属性设置如表5-6和表5-7所示。

表5-6 SSTab控件属性设置

相关主题
文本预览
相关文档 最新文档