完美的超市进销存管理系统论文.docx

上传人:b****5 文档编号:29901567 上传时间:2023-08-03 格式:DOCX 页数:111 大小:519.64KB
下载 相关 举报
完美的超市进销存管理系统论文.docx_第1页
第1页 / 共111页
完美的超市进销存管理系统论文.docx_第2页
第2页 / 共111页
完美的超市进销存管理系统论文.docx_第3页
第3页 / 共111页
完美的超市进销存管理系统论文.docx_第4页
第4页 / 共111页
完美的超市进销存管理系统论文.docx_第5页
第5页 / 共111页
点击查看更多>>
下载资源
资源描述

完美的超市进销存管理系统论文.docx

《完美的超市进销存管理系统论文.docx》由会员分享,可在线阅读,更多相关《完美的超市进销存管理系统论文.docx(111页珍藏版)》请在冰豆网上搜索。

完美的超市进销存管理系统论文.docx

完美的超市进销存管理系统论文

 

1绪论

1.1系统概述

1.1.1业务介绍

什么是POS业务?

POS是英文PointofSales的缩写,意为销售点终端。

销售点终端通过网络与主机系统连接,工作时,将信用卡在POS机上“刷卡”并输入有关业务信息(交易种类、交易金额、密码等),由POS机将获得的信息通过网络送给主机进行相应处理后,向POS机返回处理结果,从而完成一笔交易。

1.1.2功能介绍

目前,国内谈论的POS系统有两种说法:

一种是商业应用的POS系统(PointofSales),成为销售点时实系统,它是由电子收款机和计算机联机构成的商店前台网络系统。

该系统对商店零售柜台的所有交易信息进行加工整理,时实跟踪销售情况,分析数据、传递反馈、强化商品营销管理。

另一种是指银行应用的POS机或POS系统(ElectronicFundTransferPointofSalesSystem),称为销售点电子转帐服务作业系统,它是由银行设置在商业网点或特约商户的信用卡授权终端机和银行计算机系统通过公用数据交换网联机构成的电子转帐服务系统。

它的功能是提供持卡人在销售点购物或消费,通过电子转帐系统直接扣帐或信用记帐的服务。

1.1.3方案策划

进销存解决方案是实现企业的物流、资金流、信息流一体化管理的系统,主要针对企业存货的收发存业务进行核算,以便及时、准确的掌握商品的库存情况,并可动态反映存货资金的增减变动,为企业的决策提供基础数据。

本系统主要包括六个功能模块:

基础资料设置、入库管理、出库管理、库存管理、财务管理、数据库管理六大模块。

1.2开发方法

1.2.1面向对象设计介绍

面向对象编程(ObjectOrientedProgramming,OOP,面向对象程序设计)是一种计算机编程架构。

OOP的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。

OOP达到了软件工程的三个主要目标:

重用性、灵活性和扩展性。

为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。

OOP主要有以下的概念和组件:

    组件-数据和功能一起在运行着的计算机程序中形成的单元,组件在OOP计算机程序中是模块和结构化的基础。

    抽象性-程序有能力忽略正在处理中信息的某些方面,即对信息主要方面关注的能力。

    封装-也叫做信息封装:

确保组件不会以不可预期的方式改变其它组件的内部状态;只有在那些提供了内部状态改变方法的组件中,才可以访问其内部状态。

每类组件都提供了一个与其它组件联系的接口,并规定了其它组件进行调用的方法。

    多态性-组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据实际调用的类型。

    继承性-允许在现存的组件基础上创建子类组件,这统一并增强了多态性和封装性。

典型地来说就是用类来对组件进行分组,而且还可以定义新类为现存的类的扩展,这样就可以将类组织成树形或网状结构,这体现了动作的通用性。

  由于抽象性、封装性、重用性以及便于使用等方面的原因,以组件为基础的编程在脚本语言中已经变得特别流行。

Python和Ruby是最近才出现的语言,在开发时完全采用了OOP的思想,而流行的Perl脚本语言从版本5开始也慢慢地加入了新的面向对象的功能组件。

用组件代替“现实”上的实体成为JavaScript(ECMAScript)得以流行的原因,有论证表明对组件进行适当的组合就可以在英特网上代替HTML和XML的文档对象模型(DOM)。

1.2.2面向对象设计方法原则

[1]构造和分解相结合的原则。

构造是指由基本对象组装成复杂或活动对象的过程;分解是对大粒度对象进行细化,从而完成系统模型细化的过程。

    [2]抽象和具体结合的原则。

抽象是指强调事务本质属性而忽略非本质细节;具体则是对必要的细节加以刻划的过程。

OO方法中,抽象包括数控抽象和过程抽象:

数据抽象把一纽数据及有关的操作封装起来,过程抽象则定义了对象间的相互作用。

    [3]封装的原则。

封装是指对象的各种独立外部特性与内部实现相分离,从而减少了程序间的相互依赖,有助于提高程序的可重用性。

    [4]继承的原则。

继承是指直接获取父类己有的性质和特征而不必再重复定义。

这样,在系统开发中只须一次性说明各对象的共有属性和服务,对子类的对象只须定义其特有的属性和方法。

继承的目的也是为了提高程序的可重用性。

所谓服务,指的是对象收到消息后所执行的操作。

1.2.3面向对象设计步棸

    [1]设计阶段

构造问题空间。

面向对象方法构造问题空间时使用了人们认识问题的常用方法,即:

    区分对象及其属性,例如区分一棵树和树的大小或位置;

    区分整体对象及其组成部分,例如区分一棵树和树枝,在面向对象方法中把这一构造过程称为构造分类结构;

    不同对象类的形成及区分,例如,所有树的类和所有石头的类的形成和区分。

在面向对象方法中把这一构造过程称为组装结构。

    根据上述分析的主要法则,首先利用信息模型(实体关系图等)技术识别出问题域中的对象实体,标识出对象间的关系,然后通过对对象的分析,确定对象属性及方法,利用属性变化规律完成对象及其关系的有关描述,并利用方法演变规律描述对象或其关系的处理流程。

分析阶段得到的模型是具有一定层次关系的问题空间模型,这个模型是相对有弹性,且易修改、易扩充的。

    [2]设计阶段

这一阶段主要利用面向对象技术进行概念设计。

值得注意的是面向对象的设计与面向对象的分析使用了相同的方法,这就使得从分析到设计的转变非常自然,甚至难以区分。

可以说,从OOA到OOD是一个积累型的扩充模型的过程。

这种扩充使得设计变得很简单,它是从增加属性、服务开始的一种增量递进式的扩充。

这一过程与结构化开发方法那种从数据流程图到结构图所发生的剧变截然不同。

    一般而言,在设计阶段就是将分析阶段的各层模型化的"问题空间"逐层扩展,得到下个模型化的特定的"实现空间"。

有时还要在设计阶段考虑到硬件体系结构,软件体系结构,并采用各种手段(如规范化)控制因扩充而引起的数据冗余。

    [3]实现(编码)阶段

这一阶段主要是将OOD中得到的模型利用程序设计实现。

具体操作包括:

选择程序设计语言编程、调试、试运行等等。

前面两阶段得到的对象及其关系最终都必须由程序语言、数据库等技术实现,但由于在设计阶段对此有所侧重考虑,故系统实现不会受具体语言的制约,因而本阶段占整个开发周期的比重较小。

1.3功能特点

[1]功能齐全

  系统提供多种商品外购入库、销售出库、盘盈盘亏、商品调拨、借进借出、数据备份、数据恢复、期初建账等多项业务,对企业商品进行全面的控制和管理。

  [2]查询方便

  结合erp理念,进行信息重组功能,将离散、单一的信息通过有机组合,提供准确、及时的决策数据,可按商品类别查询,清楚地反映商品的库存量及商品分布情况;可按单据类型或编号查询,随意查阅企业所发生的业务历程;也可按往来单位查询,了解企业与各往来单位的业务情况;还可按库位、经办人、附加说明、单据摘要等进行查询。

  [3]简单易用

  本系统采用人性化设计理念,直观的图形界面模拟手工格式、完善的流程向导、即见即得的单据录入格式、无需记忆的代码组合,任何人员无需进行专业培训也能灵活操作。

特有的草稿单据功能,可进行单据修改或重用,减轻录入工作量。

  [4]通用性强

  使用于各种销售单位和商场。

  [5]安全可靠

  严密的流程控制有效保证制单的正确性,严格的分权体系有效防止逾权使用。

数据备份/恢复及断点保

护功能及时排除故障并恢复现场数据。

  [6]强大支撑

  采用数据库Access,海量级数据管理,充分满足企业业务数据备份和跟踪。

server(服务端)/client(客户端):

胖服务端/瘦客户端模式有效提高应用系统运行和网络传输速度,及时(纳秒级)响应业务各环节请求。

 

2系统设计

2.1可行性分析

2.1.1调查分析

系统的初步调查是系统设计规划阶段的第一项活动,也是整个系统开发的第一项活动,主要目标就是了解组织机构、工作现状。

正式开发管理信息系统之前进行调研是非常必要的,其必要性主要表现在以下几个方面。

[1]明确用户的要求,以根据调查结果进行可行性分析,确认系统的开发是否可行。

[2]提出新系统的人员并不都是系统研究人员,有些人对功能和处理数据的方法没明确的认识。

它们只是根据自已业务工作的需要提出了要求,系统开人员要对此进行详细的调查和分析,确认用户的要求可以通过现有的计算技术实现,保证开发的管理信息系统的功能与用户提出的要求相吻合。

[3]商品进销存管理系统的现行系统可能是手工系统,也可能是使用和计算机的系统,无论是何情况,都要详细地调查现行系统中信息处理的具体情况,系统内部功能结构,以便设计也一个合理的、好的新系统逻辑模型,为新系统的设计工作打好基础,保证整个系统开发的质量。

通过对整个进销存信息管理系统目前主要管理业务的了解,主要工作是由管理员负责完成的。

首先管理员手工录入目前所有产品或配件信息,并负责对其进行管理和维护;建立详尽的客户信息,并对进出货进行登记,便于随时查询销售状况,以及利润状况。

总之,必需对现行系统进行详细调查,明确用户需求,保证开发的新系统的功能与用户的要求相吻合,避免耗费大量的人力、物力、财力,新系统的开发却失败的悲剧发生。

2.1.2必要性分析

随着销售数据规模的日益庞大,商品数目也在呈指数级的增长,这样就造成了:

[1]产品库存量大,工作人员为产品进出库登记时的工作负荷重、效率低。

[2]进出货过程中,时常会出现错误,增加了业务成本。

[3]对进出货数据进行查询时,需要手工翻阅大量的票据,大大降低了查询效率,而查询的结果有尽人意。

以上缺点直接或间接地降低了工作效率,最终影响了商品进出库的管理。

2.1.3可行性分析

由于本系统管理的对象单一,都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。

因此,比较适合于采用数据库管理。

且学校用于学生管理的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。

在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。

本系统的设计是在Windows98中文版操作系统环境下,使用VisualC++6.0中文版开发成功的。

数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数据库管理是一个重要的问题,目前,数据库产品较多,每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围,本系统选用的数据库语言介绍如下:

VisualC++是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。

它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础。

在VisualC++环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、动态数据访问(ADO)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。

总的来说,VisualC++具有以下特点:

[1]可视化编程:

用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。

如果对界面的效果不满意,还要回到程序中修改。

有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。

VisualC++提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。

只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。

VisualC++自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。

[2]面向对象的程序设计

4.0版以后的VisualC++支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C++)不完全相同。

在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而VisualC++则是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。

在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualC++自动生成对象的程序代码并封装起来。

每个对象以图形方式显示在界面上,都是可视的。

[3]结构化程序设计语言

VisualC++是在C++语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。

VisualC++语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。

VisualC++是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。

在设计VisualC++程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离VisualC++环境,直接在Windows环境下运行。

[4]事件驱动编程机制

VisualC++通过事件来执行对象的操作。

一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。

例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击“(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。

在用VisualC++设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。

这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。

[5]访问数据库

VisualC++具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能。

同时,VisualBasic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro,Paradox等,这些数据库格式都可以用VisualBasic编辑和处理。

VisualC++提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer,Oracle等。

在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。

[6]动态数据交换(DDE)

利用动态数据交换(DynamicDataExchange)技术,可以把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。

当原始数据变化时,可以自动更新链接的数据。

VisualBasic提供了动态数据交换的编程技术,可以在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应用程序之间进行通信。

[7]对象的链接与嵌入(OLE)

对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而可以得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件。

OLE技术是Microsoft公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看做是一个对象进行链接和嵌入,是一种应用程序一体化的技术。

利用OLE技术,可以方便地建立复合式文档(compounddocument),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作。

[8]动态链接库(DLL)

VisualC++是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。

但它可以通过动态链接库技术将C/C++或汇编语言编写的程序加入到VisualC++应用程序中,可以像调用内部函数一样调用其他语言编写的函数。

此外,通过动态链接库,还可以调用Windows应用程序接口(API)函数,实现SDK所具有的功能。

2.1.4开发目标

开发建立一套数据库应用系统——进销存信息管理系统,用于管理商品的录入、运转、查询以及进库、出库等信息。

系统为C/S结构。

另外,一个界面友好、操作方便的进销存信息管理系统能够更好地解决产品繁琐的统计工作。

2.2需求分析

2.2.1编写目的

本软件对超市的采购、销售、仓库、资金、帐务等实际运作流程均实现了动态的计算管理,使得超市经营者能够迅速的掌控公司的实际运作状况、合理做出公司的战略决策。

软件提供的商品入库流水帐、商品销售流水帐、商品台帐、会计帐及各种报表在提高公司工作效率、减少人为的差错、最大限度堵塞漏洞的基础上很好的减轻了采购、销售、仓库、财务等环节工作人员的劳动强度,全面体现了现代企业管理理论所倡导的工作高效、环境轻松的氛围。

2.2.2功能分析

[1]支持单仓/多仓或总店/分店管理体系,可以管理任意分仓或分店、任意品种的库存。

[2]支持条形码功能。

您可以自定义条形码,设计、打印各种规格的条码标签,省去了购买条码打印机的开支。

[3]员工提成方式多样,可针对每个商品设置提成三种提成方式:

数量提成率、销售额提成率及销售毛利提成率,员工的业绩及提成一目了然。

[4]操作权限设置功能强大。

既可以设置各种菜单级别的操作权限,也可以设置“成本管理权”、“会员管理权”、“单据删除权”、“销售退货权”、“售价调整权”及“销售反确认权”等权限。

[5]订货功能功大。

软件可根据商品资料中设置的最高库存、最低库存及当前库存自动升级定货清单,也可以通过提取补货数据生成定货清单,让您的订货工作轻松、方便。

[6]独创的单据确认与反确认功能,方便用户对单据输入、修改。

[7]批发价、零售价可自动生成,减轻了定价的工作量。

[8]功能强大的各类统计报表,为您提供详尽的营业报告,让您对商品进、销、存及利润等财务状况了如指掌。

[9]所有单据、报表均可以在打印前预览,并且可以导出为Excel文件,然后根据您的实际需要进行特别编排处理。

所有单据的打印格式均可以重新设计。

[10]有专业的前台Pos销售功能.

[11]“傻瓜化、人性化”设计的财务管理,简单易用,不懂会计、计算机也能轻松应对编制记帐凭证、登记记帐凭证、记帐凭证查询、会计帐册查询、损益表查询、资产负债表查询等操作。

[12]常用工具软件丰富。

迷你计算器、帐套数据的导入导出、帐套初始化及帐套压缩或修复等为维护系统的正常运行提供了强有力的保障。

2.2.3数据分析

[1]超市:

名称、性质、联系方式、地址、备注。

[2]分机:

编号、名称、备注。

[3]供应商:

编号、名称、性质、联系人、联系方式、地址、备注。

[4]商品档案:

分类编码、条形码、编码、助记码、拼音码、名称、规格、单位、库存上限、库存下限、进货价、销售价、会员价、业务提成、供应商。

[5]商品分类:

编号、名称、备注。

[6]管理员:

编号、姓名、身份证号、密码、权限、联系方式、地址。

[7]销售单:

编号、销售商品、数量、销售单价、经办人、分机号、销售日期。

[8]进货单:

编号、销售商品、数量、进货单价、经办人、分机号、进货日期。

2.2.4原理框图

图2.2.4-1原理框图

2.3模块设计

2.3.1模块介绍

[1]基本资料:

用于建立系统正常运行所必需的基础资料,如:

本超市、员工(操作员)、计量单位、往来单位(供货商、客户)、分店、商品大类、商品类别等资料。

正式使用本软件前,必须先进行基础信息设置,然后才能顺利的开展工作。

[2]进货管理:

用于登记入库商品的名称、单价、数量及入库日期、供货商、经办人、存放分店等资料。

期初库存也在此输入

[3]销售管理:

用于登记销售商品的名称、单价、数量及销售日期、客户、业务员、销售分店等资料。

[4]库存管理:

用于查询商品适(当)时的库存情况。

库存过多、过少商品报警的查询。

[5]财务管理:

用于根据已确认的原始单据(入库单、销售单、收款单、付款单等)自动编制记帐凭证,营业员的提成查询、各分机的销售情况汇总、日营业额的查询等。

[6]数据库管理:

数据库备份、恢复、期初建账等。

2.3.2模块框图

2.4概要设计

2.4.1数据库-ER图

E-R是实体-联系方法是来描述现实世界的概念模型,它可以方便、准确地表述出信息世界中的常用概念,是抽象和描述现实世界的有力工具。

下面是该系统的E-R图:

2.4.2模块功能分析

[1]基本信息:

"超市基本信息":

超市基本信息的输入和修改。

"POS分机档案登记":

分级信息的输入、修改和删除。

"商品分类":

商品分类信息的输入、修改、删除。

"商品档案":

商品档案信息的输入、修改、删除和库存的增减。

"供应商档案":

供应商信息的输入、修改、删除。

"价格自动生成设置":

进货价、零售价、会员价、业务提成的整体调整。

"商品分类统计":

分类信息的统计报表。

"商品档案统计":

商品档案信息的统计报表。

"供应商档案统计":

供应商信息的统计报表。

"超市分机统计":

分机信息的统计报表。

[2]进货管理:

"进货开单":

进货开单、商品的添加、进货价的调整等。

"进货退货":

进货退回。

"进货单汇总":

进货单统计报表。

"退货单汇总":

退货单统计报表。

"所有进货商品汇总":

所有进货商品的统计报表。

"所有退货商品汇总":

所有退回商品的统计报表。

"所有无退货进货商品汇总":

所有无退货进货的统计报表。

"月度结算":

本月内的所有进货汇总。

[3]销售管理:

"销售开单":

销售开单、商品的添加、零售价的调整等。

"销售退货":

销售退回。

"销售单汇总":

销售单统计报表。

"退货单汇总":

退货单统计报表。

"所有销售商品汇总":

所有销售商品的统计报表。

"所有退货商品汇总":

所有退回商品的统计报表。

"所有无退货销售商品汇总":

所有无退货销售的统计报表。

"月度结算":

本月内的所有销售汇总。

[4]库存管理:

"非进货入库":

其他入库。

"非进货出库":

其他出库。

"库存查询":

库存统计报表。

"非进货入库单统计":

其他入库单统计报表。

"非进货出库单统计":

其他出库单统计报表。

"非进货入库商品统计":

其他入库商品统计报表。

"非进货出库商品统计":

其他出库商品统计报表。

"所有过少报警商品统计":

所有库存过少的报警统计。

"所有过多报警商品统计":

所有库存过多的报警统计。

"月度结算(非进货出库)":

本月内的所有出库汇总。

"月度结算(非进货入库)":

本月内的所有入库汇总。

[5]财务管理:

"收银员提成查询":

按经办人统计业务提成

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 哲学历史

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1