小型超市收银系统的设计与实现 - 范文中心

小型超市收银系统的设计与实现

05/08

学号

题目:

作 者 届 别 院 别 专 业 指导教师职 称 完成时间

摘 要

随着销售行业竞争日益激烈,小型超市收银系统的引入显得极其重要。它不但可以提高进销存管理的工作效率,而且可以有效减少盲目采购、降低采购成本、合理控制库存、减少资金占用并提高市场灵敏度,从根本上提升超市的市场竞争力。

本系统运用计算机管理信息技术,建立数据库,对超市的进销存过程进行详细的分析, 实现了对超市的进货、销售和库存的科学管理。它主要包括以下几大模块:登录模块、商品入库模块、商品销售模块、营业统计模块、商品信息模块、供应商信息模块、用户信息模块。各模块相许独立,同时又构成统一的整体。

本文主要介绍了小型超市收银系统的环境、所用到的开发语言、功能作用、设计的方案等各方面的内容,其目的在于让使用者了解此系统,使他们能更好的运用本系统,使此系统发挥出应有的作用。另外在文中还予以指出了系统开发有待于进一步完善发展的方向。

关键词:收银系统;控件;窗体;Microsoft Office Access 2003平台

ABSTRACT

With the increasingly fierce competition in sales industry, the introduction of small

supermarket cashier system is very important. It can not only improve the working efficiency of the purchase-sell-stock management, but also can effectively reduce the blind procurement, reduce procurement cost, have the reasonable control of inventory, reduce capital that takes up and improve market sensitivity, fundamentally ascending supermarket market

competitiveness.

This system uses computer-information-management technology, establish the database of supermarket. With a detailed analysis of the supermarket, it achieves the functions of purchasing and the scientific management of sales and stock. It includes the following major modules: login module, storage module of goods, merchandise sales module, operating statistics module, product information module, the module supplier information, user

information module. Phase allowed to independently of each module, at the same time constitute a unified whole.

In this paper, a small supermarket cash register system environment, the language used in the development, function, design and other aspects of the program, which aims to allow users to understand this system so they can better use the system, so that This system play its due role. Also in the article we pointed out that the system should be with further improved development.

Key words: the cashier system; Control; Form; The.net platform

目 录

摘 要 ...................................................... I ABSTRACT .................................................... II

1 绪 论 ...................................................... 1

1.1 研究课题的目的 ............................................ 1

1.2 研究课题的意义 ............................................ 2

2 需求分析 ................................................... 3

2.1 可行性研究 . ............................................... 3

2.2 需求分析.................................................. 3

2.3 开发环境介绍 .............................................. 4

3 总体设计 .................................................. 12

3.1 设计思想................................................. 12

3.2 设计原则................................................. 12

3.3 功能模块和结构设计 ....................................... 12

3.4 数据库设计 . .............................................. 14

4 系统实现 .................................................. 17

4.1 登陆系统模块 ............................................. 17

4.2 商品信息模块 ............................................. 19

4.3 商品入库模块 .............................. 错误!未定义书签。

4.4 商品销售模块 ............................................. 21

4.5 营业统计模块 .............................. 错误!未定义书签。

4.6 供应商模块 . ............................... 错误!未定义书签。

4.7 用户信息模块 ............................................. 31

5 总结 ...................................................... 32 参 考 文 献 .................................. 错误!未定义书签。

致 谢 ...................................................... 33 附 录 ........................................ 错误!未定义书签。

1 绪 论

随着现代科学技术的迅猛发展,人们的生活方式正发生着巨大的变化。计算机技术已经渗透到各个领域,成为各个行业必不可少的工具。特别是Internet 技术的推广和信息高速公路的建立,使得IT 产业在市场竞争中越发显示出其独特的优势。科学技术是第一生产力,科学技术的发展让人类更加受益。各类信息系统应用于各行各业,不但给管理上带来了极大的便利,而且还提高了工作效率。

中小型超市在我国经济发展中具有重要地位,目前我国的中小型超市数量多,地区分布广泛,行业分布跨度大。随着全球经济一体化的发展和电子商务的兴起,中小型超市之间的竞争将越来越激烈。网络及电子商务的迅猛发展突破了时间、空间的局限性,给中小型超市带来了更多的发展机会,同时也增大了超市行业间的竞争强度。这就要求中小型超市必须改变营业管理模式,提高运营效率。目前,我国中小型超市的信息化水平还很低。随着技术的发展,电脑操作及管理日趋简化,电脑知识日趋普及,同时市场经济快速多变,竞争激烈,超市行业采用电脑管理进货、库存、销售等诸多环节也已成为必然趋势。

1.1 研究课题的目的

社会生活的现代化,使得市场的走向发生巨大变化,由于经济的发展,人民对生活的需求已经不再满足于丰衣足食的低度要求,许多人们往往不是单纯为满足生活必须去购买,而是凭着喜欢、意欲和感官去购买。如果一个商店能够打动顾客、吸引顾客,自然会顾客盈门,而近几年新兴产业中超级市场(supermarket )的现代化管理方式和便捷的购物方式,尤其是它轻松的购物环境,往往是打动顾客,吸引顾客的最主要的原因,且良好的周密的销售服务更是赢得信誉、吸引的顾客的优势所在。商品经济的高速现代化发展也促进了竞争,使一切不甘落后的商家都争先恐后地采用最新的管理方法来加强自己的竞争地位。因为,超市经营者如果不掌握当今市场发展的这一走向,不能将超市现代化经营作为奴努力开拓的目标,就无法使经营活络、财源茂盛。

现代化事业的发展,也使超市的管理数段发生前所未有的革命,计算机的运用正在发达国家的各类商店超市中普及。由于它能够准确记载和查询有关超市经营活动的大量数据,帮助超市经营者掌握和分析营销情况,及时作出正确决策,并且有利于商店内部财务、工资、人员、库存、销售情况等管理,因而大大提高了现代超市的管理水平。国外很多发达资本主义国家的有关人士都在开发超市管理系统,开发出很多大型的软件,由于本人能力有限,开发一个小型超市管理系统,它可以使我们国内新起小型超市可以更好的操作。此系统的有减少差错,节省人力、减少顾客购物时间,增加客流量,提高

顾客满意度等特点。我通过开发这个简单管理信息系统,巩固了以前所学的知识,提高了应用能力。

1.2 研究课题的意义

21世纪,超市的竞争进入到了一个全新的领域,竞争不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。技术的提升和管理的升级是超市业的竞争核心。如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市经营者努力追求的目标。为了提高物资管理的水平和工作效率,尽可能杜绝商品流通中各环节中可能出现的资金流失不明现象,商品进销存领域迫切需要引进信息系统来加以管理,而商品销售管理系统是当前应用于超市或者公司管理系统的典型代表。

从消费者的角度来说,结帐时应该准备和快速,毕竟时间就是金钱。由于传统的超市收银管理给顾客和店主带来很多不便。针对这方面的缺陷,开发这个系统可以方便快捷地查出顾客结帐情况,商品信息情况,每天的售货情况,方便了对超市商品管理、人员管理,大大提高了超市的售货速度。进而加速了社会的发展速度,提高了人民的生活水平。总之,借助于信息系统可以大大提高超市的运作效率,通过全面的信息的采集和处理,不仅辅助提高了超市的决策水平,还可以迅速提高超市的管理水平,为降低经营成本,提高效率,增强超市扩张力,提供有效的技术保障。

2 需求分析

2.1 可行性研究

系统开始和可行性研究是为系统开发做前期准备[1]。在对一个项目的开发之前,我们总是要对其进行一个可行性分析与需求分析,通过和指导老师的共同分析得出了可行性开发计划。对于需求分析我们作了如下调查分析的需求。

2.1.1 技术可行性

随着软件编程技术的不断增加,功能的不断加强,和网络技术的不断成熟,信息安全的不断完善以及开发工具的日益进步,采用计算机系统来管理超市要求数据的采集、更新能够完整、准确和及时,所以开发通用的超市收银系统已经完全可以做到。

2.1.2 经济可行性

因为通过网络传递销售信息,可以不受距离的限制,因此可以节约许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上是完全可行的。

2.1.3 操作可行性

本系统采用Windows 图形界面,是大家熟悉的操作系统,对于用户只需要具有一般的计算机知识的人员都可以轻松上手。而且整个销售系统采用最友好的交互界面,简洁明了,不需要对数据库非常了解。

由此,该系统的操作是可行的,有必要推广该系统。

综合以上三方面,该系统具有很高的开发可行性,无论是从技术上经济上还是操作上。故此,可以设计该系统流程图,建立数据字典。

2.2 需求分析

对于大型超市信息管理系统来说,通常它会把员工人事管理系统也包括在内。由于现考虑的是小型超市,其可承担的研发支费也有限[2]。所以在这个系统中,要实现的功能主要如下:

(1) 功能要求

对库存产品进行资料管理和统计;

对产品的进货单和产品的销售单进行录入管理和统计;

对进货、销售、库存情况进行查询;

对用户进行管理,通过用户名和密码进行登录;

对供应商基本信息的管理;

对赢利状况分析,进行营业统计;

(2) 数据精确度

产品的进货单和销售单中,单价、金额采用浮点数,数量都取整数。

(3) 时间特性

该系统软件从启动到进入系统登录界面的时间正常情况下少于5秒,录入并更新数据的时间正常情况下少于10秒。

(4) 适用性

该管理系统软件适用于Windows XP/Windows7中文版下运行。

2.3 开发环境介绍

该系统属于管理信息系统,管理信息系统(MIS,Management Information System)可以保存用户信息,通过对信息进行分析和处理,可以帮助用户制定计划、规范管理或提供决策依据。超市收银系统具有其特殊性,通常采用C/S结构,考虑到其为小型超市,所以在架构上面选择两层。

2.3.1 Access介绍

Access 是微软公司推出的基于Windows 的桌面关系数据库管理系统(RDBMS ,即Relational Database Management System ),是Office 系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。

Access 能够存取 Access/Jet、Microsoft SQL Server 、Oracle(甲骨文软件公司) ,或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的" 进阶用户" 则能使用它来开发简单的应用软件。虽然它支援部份面向对象(OO )技术,但是未能成为一种完整的面向对象开发工具。

[编辑本段]

发布历史

Microsoft Access 1.0 版本在1992年11月发布。

微软指定它对系统最小要求为视窗3.0配以4兆节内存.6兆节内存配以最小8兆节硬盘空间(建议最好有14兆节硬盘空间)则为建议的系统要求.当时软件以7张1.44兆节软碟发布的载体.

这个软件能够有效地处理大量记录但是测试显示在某些情况下会导致数据损毁.比如说,大小超过700MB 的文件常会出问题。(值得注意的是在1.0版广泛应用的时候大多数硬盘是小于700MB 的。)软件的使用指南指出过时的设备驱动和错误的配置可能会导致数据丢失。

Access 的最初名称是Cirrus 。它开发于Visual Basic 之前,当时的窗口引擎称作Ruby 。比尔盖茨看过Ruby 的原型后决定把这个基于Basic 语言的组件作为一个独立的可扩展应用程序与Access 联合开发。这个项目称作Thunder 。这两个项目互相独立的被作为底层的窗口引擎开发并且互不兼容。 然而,在VBA 出现后它们被合并在一起。

1995年末,access 95发布,这是世界上第一个32位关系型数据库管理系统,使得access 的应用得到了普及和继续发展。

1997年,access 97发布。它的最大特点是在access 数据库中开始支持we b 技术,这一技术上的发展,开拓了access 数据库从桌面向网络的发展。

21世纪初,microsoft 发布access2000,这是微软强大的桌面数据库管理系统的第六代产品,也是32为位access 的第三个版本。至此,access 在桌面关系型数据库的领域的普及已经跃上了一个新台阶。

2003年微软正式发布了access 2003,这是继2002年后发布的最新版本,它在继承了以前版本的优点外,又新增了一些使用功能

[]

主要用途

Microsoft Access 在很多地方得到广泛使用,例如小型企业,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的WEB 应用程序.这些应用程序都利用ASP 技术在Internet Information Services 运行.比较复杂的WEB 应用程序则使用PHP/或者/Microsoft SQL Server .

它的使用方便程度和强大的设计工具为初级程序员提供许多功能。不过,这种便于使用可能使人误解。这类开发者都是没有在应用或者数据设计方面训练的办公室从业人员。因此许多人以为这样的开发者能够创造可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导。

一些专业的应用程序开发人员使用 Access 用作 快速应用开发,特别是给街道上的推销员制作一个初型或独立应用程序的工具。可是如果是透过网络存取数据的话,Access 的可扩放性并不高.因此当程序被较多使用者使用时,他们的选择多会是倾向于一些客户端-服务器为本的方案,例如 Oracle 、DB2、Microsoft SQL Server 、Windows SharePoint Services 、PostgreSQL 、MySQL 、Alpha F ive 、MaxDB ,或者Filemaker 。无论如何,不少 Access 的功能(表单,报告,序列和VB 代码)可以用作其他数据库的后期应用,包括 JET (档案为主的数据库引擎,Access 缺省使用)、Microsoft SQL Server 、Oracle 和任何其他跟OD 这种方法允许开发者把一个成熟的应用的数据移动到一台更大功率的服务器而没有已经在适当的位置牺牲发展。

很多开发者谁使用Microsoft Access 使用Leszynski 命名约定,虽然这不普遍;它是一次编程大会,并非一个DBMS 实施的规章。

特性

一好处进入从程序员视角在它的有关兼容性有SQL-质问可能被观看并且作为SQL 语句编辑,并且SQL 语句直接在巨视和VBA 模里可以被使用操作进入桌子。用户可能混合并且使用两个VBA 并且" 宏" 编程形式和逻辑既没提供面向对象的可能性。

导入导出报表的生成程序,当时有能力和到这项任务的复杂报告创造,没有另一受欢迎数据库报表程序的生成程序充满特色和强有力-水晶报告。MSDE(微软公司SQL 服务器桌面发动机)2000,袖珍版本的MSSQL 服务器2000,被包括开发版的办公室XP 并且被用于进入可能作为除之外的另一种选择JET 数据库引擎。(尽快的*版本的MSDE 和微软公司交换服务器实际上使用这台喷气发动机处理巨大大量数据并且安置一“赝品”在它之上的那些应用的应用层。大约这事实的缺乏知识因进入/喷口家庭的软件产品而为不该受不敬做贡献,特别是关于" 大" 工程。) 进入分割和粘贴功能性能使它有用工具在其他数据库之间连结(例如,在数据或者数据库变换期间的Oracle 和微软公司SQL 服务器) 。进入与给与窗子和其他平台应用一起的积分的各种各样进口和退场门特征一起来,一经请求从应用的里面或者手工由用户其中几可以被执行。例如非常紧密SNP 完全格式化的为分享的形式与没有全部的进入软件的人们报告。它也能容易被升级到微软公司SQL 服务器。

与一般的RDBMS 完全不同,它缺乏数据库触发和预存程序。自从MS Acce ss 2000 (Jet 4.0) ,开发人员可以在查询中设定参数,这跟预存程序很相似的,但这些“预存程序”只能处理一个程序.当资料表内数据发生变化时,它确实允许形式包含被引发的代码,使用是普通的透过查询和其他技术在进入营运储存的程序在方面RDBMS 支援这些的。

进入可提供的编程语言,当时在另一个内产品Microsoft Office 家具,微软公司应用的Visual Basic 。两个数据库进入讯息库COM 组成部分被提供:这笔遗产数据存取物体(DAO),用进入和新只可提供ActiveX 数据对象(忙乱) 。

MicrosoftAccess 容易被应用于小的工程,但是如果设计的不好对大工程是无用的。

全部数据库质问,形式和报告被储存在数据库里,并且与相关的模型的理想协调,没有与他们做一个身体上组织的阶层的可能性。

一种设计技术是把进入应用在数据和计划之间进行分发。一数据库应该只包含桌子和关系,当另一个将有全部计划时,形式,报告和质问和对第一个数据库桌子的连接。令人遗憾,当连结时,进入允许没有有关的道路,因此那些发展环境作为这种生产环境有相同的道路应该(虽然你写你们自己的能" 动态连接程序" 常规在里VBA 那搜出能一定背面结束档案以透过这个目录树搜寻,如果它发现这条电流通路它不能) 。

这种技术也允许开发者在不同的档案中分申请,因此一些架构是可能的。

优缺点

Access 的优点

(1)存储方式单一

Access 管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb )的数据库文件中,便于用户的操作和管理。

(2)面向对象

Access 是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。

(3)界面友好、易操作

Access 是一个可视化工具,是风格与Windows 完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。

(4)集成环境、处理多种数据信息

Access 基于Windows 操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。

(5)Access 支持ODBC (开发数据库互连,Open Data Base Connectivit y ),利用Access 强大的DDE (动态数据交换)和OLE (对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel 表格、Word 文档,还可以建立动态的数据库报表和窗体等。Access 还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML 文件,轻松构建Internet/Intranet 的应用。

ACCESS 的缺点

ACCESS 是小型数据库,既然是小型就有他根本的局限性,以下几种情况下数据库基本上会吃不消:

1. 数据库过大,一般ACCESS 数据库达到50M 左右的时候性能会急剧下降!

2. 网站访问频繁,经常达到100人左右的在线。

3. 记录数过多,一般记录数达到10万条左右的时候性能就会急剧下降!

Access 数据库安全方式

一、密码式

给数据库起一个随机复杂的名称,避免被猜到被下载,这种方式在以前很流行,因为大家都对自己的代码很有自信。但随着错误提示对数据库地址的泄露导

致数据库被非法下载,这种方式也就越来越少人用了。

二、"#"式

在数据库名称里加上#号,从URL 上请求时#是请求地址和请求参数的一个分隔字符,如果知道了数据库名,直接请求的话,如:http://www.xx.com/access#.mdb ,WEB 服务器会认为请求的是access 而不是access#.mdb,所以会提示找不到文件,但是很遗憾,URL 中对于这些特殊的字符都会有一个特殊的表示方式, #的特殊表示就是%23,如http://www.xx.com/access%23.mdb,那么access#.mdb 将会被下载。还有如果用FlashGet 之类的下载工具也可以直接下载。

三、ASP 式

这种作法是比较专业但也是很安全的也是现在比较流行的作法,但是现在许多的人只是作了一半,只是将数据名改成ASP 而以,这样的话直接用FlashGet 之类的下载工具一样可以将数据库下载,这种方式的正确作法有两步:

第一步:在数据库内创建一个字段,名称随意,类型是OLE 对象,内容设置为单字节型的"

这段代码运行完之后将会在数据库内生成一个nodownload 表,表内字段是notdown 。如果数据库内已有同名的数据表存在请将代码内的nodownload 改成自己想要的数据表名即可。

四、asa 式

这种方式的真谛是利用IIS 对ASA 文件的保护,从而使得数据库文件不能从URL 上直接请求下载,但是这种方式被误解成只要将文件后缀改成ASA 就可以了。要知道IIS 只是对global.asa 这个文件名有请求保护,所以这种方式只能将数据库名设置为global.asa ,而且要注意的是,设置成global.asa 之后最好不要将其放在主机或虚拟目录的根目录里,不然会被IIS 当然正常的global.asa 文件进行尝试运行的。

其他意义

Open Access

Open Access (简称OA )是在网络环境下发展起来的学术界传播信息及出版学术信息的一种新模式。它的兴起为信息的交流和利用方式产生重大影响,已经受到国际学术界、出版界、图书馆学界等的广泛关注。

Open Access 通常被译作开放存取、开放获取,本文采用“开放存取”这一译法,主要是基于两个方面的考虑。一是“存取”相对于“获取”而言,不仅包括用户的“获取”,还包括作者的“存放”,所以用“存取”更能全面地覆盖OA 的内涵;二是在图书馆学及情报科学领域,access 一词译成“存取”已约定成俗。

目前被广泛接受的关于OA 的定义源于布达佩斯开放存取倡议(Budapest O pen Access Initiative ,BOAI ),即:OA 意味着用户通过公共互联网可以免费阅

读、下载、复制、传播、打印和检索论文的全文,或者对论文的全文进行链接、为论文建立索引、将论文作为素材编入软件,或者对论文进行任何其他出于合法目的的使用,而不受经济、法律和技术方面的任何限制,除非网络本身造成数据获取的障碍。对复制和传播的唯一约束,以及版权在此所起的唯一作用是,应该保证作者拥有保护其作品完整性的权利,并要求他人在使用作者的作品时以适当的方式表示致谢并注明引用出处。

推动开放存取运动的重要力量 开放存取符合作者同时也是读者的非赢利的信息传播动机和利用需求。在最近几年蓬勃兴起,主要的推动力量有:①政府部门和科研资助机构。一方面通过政策推动开放存取运动。近年来欧美一些国家政府和科研资助机构积极倡导由公共投资支持的科研成果应该为全社会所免费利用和共享,并通过制订政策来加以保障。如世界上最大的医学研究资助单位美国国立卫生院(National Institutes of Health ,NIH ) 的公共存取政策。另一方面提供资金支持。随着开放存取运动的发展,越来越多的政府部门、科研资助机构、基金会愿意为科研成果的开放存取提供资金支持。②学术科研人员。科学研究工作者是科研成果的创造者、评议者,同时还是科研成果的消费者。基于当前学术出版被商业出版者垄断,学术科研人员作为科研成果的创造者却不能自由享受科研成果的局面,科学家强烈呼吁要把学术出版的主导权和控制权夺回到科研人员手中。③大学。大学是开放存取运动的重要实践者和支持者。近年来一些知名大学纷纷推出了机构仓储,如加州大学、麻省理工、哈佛和斯坦福大学根据学校开放存取政策的要求,保存教员的研究成果,对公众免费开放并可在网络上获取。④图书馆。图书馆界是开放存取运动的积极参与者,通过成立推动开放运动的联盟、在网站上大力宣传开放资源、建立机构库等方式,致力于推动和创建服务于科学研究的基于网络环境的学术交流体系。⑤因特网。从技术的角度讲,开放存取一个重要的推动力量就是因特网。计算机和网络技术在出版领域中的应用,降低了在线出版和在线传播的总成本,使得开放存取成为有效又可行的学术出版和交流模式。

开放存取的主要影响 开放存取是一种学术交流方式的变革。开放存取的文献是数字化、在线、免费和几乎没有版权和授权的限制的,因此世界上每个人都有机会接触和共享研究成果,从而加快了学术信息传播速度,促进了科学研究的快速发展,提升了科学研究的公共利用程度。对于读者、作者、研究机构、图书馆和出版单位有不同的影响。

①对作者而言,读者群得到拓展,扩大了学术成果传播的范围,增加了学术成果参与交流和被引用的机会,提高了成果的影响力和显示度。②对读者而言,无须面对合理使用的争议或可能侵权的担忧,可以方便快捷地免费获取同行的研究成果,同时也提高了获得资料的时效性。③对于研究机构而言,一方面随着机构学术成果的广泛传播,彰显了机构的科研实力,提高了机构的知名度。另一方面作为学术成果的利用者,减少了费用支出,避免了为出版学术成果和获取学术成果的重复付费。④对于资助机构而言,他们资助的研究工作更加公开,影响更

大,科研成果得到了更广泛的传播,使得投资产生了更大的社会效益。⑤对图书馆而言,一定程度上缓解了图书馆的经费紧张,收集和整理网上的开放存取资源,扩充数字馆藏,增强了图书馆的信息保障能力。另外也分流了图书馆用户,弱化了图书馆信息中介的作用。⑥对出版商而言,OA 是一种挑战,一方面扩大了期刊论文的使用率和影响力,直接效果是提高了论文的被引频次;另一方面一定程度上影响了发行量和优质稿源,降低了利润和缩小了市场风份额。

开放存取存在的主要问题 开放存取运动虽然已经蓬勃发展,但在运作经费、质量控制、知识产权等方面存在着不成熟性。①运作经费问题。开放存取期刊、开放存取仓储的运作是需要成本的,包括审稿费用、硬件投入、资源维护等。目前尚未建立起合理有效的经费支持模式,主要有作者付费、科研机构付费、各类资助等方式,经济运行机制是最为核心的问题。②知识产权保护问题。作为一种网络出版模式,知识产权的表现形式是什么,如何指定相应的管理策略,如何保护产权人利益,如何控制读者与作者之间的权益平衡等问题都急待解决。③质量控制问题。开放存取仓储应缺少同行审稿,意味着没有衡量论文质量的客观方法,只有读者自己对内容进行评估,可能使那些已处于知识系统顶端者受益。如哈佛大学的开放存取网站可能因其世界一流的美名而吸引读者,而发展中国家某所不知名的学校或毫无名气的学者所发表的论文有可能就不那么受关注。如何制定质量控制策略,特别是如何建立行之有效的、跨机构的评审联盟制度尤为重要。④技术方面的问题。将先进的技术应用于开放存取,有助于用户更好的访问免费资源。因此如何建立全球化的联邦信息组织与服务体系结构、动态的数字对象管理体系等问题是开放存取可持续发展的重要保证。

开放存取作为一种学术出版与信息交流的新模式,其本质是自由、平等、公正地、无障碍地获得学术信息。开放存取运动的蓬勃开展,使开放存取资源越来越多,其数量、质量和学术影响力日益增强,相关问题的解决也在实践中不断探索和研究。随着“知识共享就是力量”的理念的日益张扬,开放存取运动会集聚越来越多的关注和支持。[1]

C 函数名

函数名: access

功 能: 确定文件的访问权限

用 法: int access(const char *filename, int amode);

概要

#include

int _access(const char *path,int mode) ;

描述

access 函数,当对文件使用时,判断是否存在指定的文件,以及是否能够按指定的模式进行访问。当对目录使用时,只判断是否存在指定的目录;因为在Wi

ndows 系统下所有的目录都有读和写的访问权限。

参数mode 可为以下的其中之一:

00 只存在

02 写权限

04 读权限

06 读和写权限

返回值:

如果文件拥有给定的模式则返回0,如果发生错误返回-1。

可移植性:

Windows ,Unix 及其类似系统都存在此函数。

请注意,lcc-win32同时支持_access(微软公约) 和access 。

程序例:

#include

#include

int file_exists(char *filename);

int main(void)

{

printf("Does NOTEXIST.FIL exist: %s\n",

file_exists("NOTEXISTS.FIL") ? "YES" : "NO");

return 0;

}

int file_exists(char *filename)

{

return (access(filename, 0) == 0);

}

主干道模式

access, 一种交换机的主干道模式。2台交换机的2个端口之间是否能够建立干道连接,取决于这2个端口模式的组合。常见的还有

(普通)access

(干道) Trunk

(自适应) Dynamic-auto

(期望)Dynamic-desirable

3 总体设计

3.1 设计思想

(1) 系统分成几个相对独立的模块,但这些模块都进行集中式管理。

(2) 分层的模块化程序设计思想,整个系统采用模块化机构设计。作为应用程序有较强的可操作性和扩展性。

(3) 合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。

3.2 设计原则

为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足用户的实际需要,在设计开发过程中遵循了,如下原则:

(1) 合法性原则:依据产品核算系统的工作规定以及要求,参照核算实际的工作情况,进行诸如商品进货、销售等工作。

(2) 实用性原则:适合产品信息管理工作的实际需求,并能够处理一些特殊情况的要求,此外,尽可能预留空间,以便扩充功能。

(3) 准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料(如类型匹配,长度不超限等)。

(4) 易操作原则:要求设计的系统功能齐全,接口友好,操作方便,必要的地方进行提示。

(5) 源程序可读性原则:为了便于其它设计,维护人员读懂代码或以后的代码修改,软件升级维护,既可能做好代码注释工作。

(6) 优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自定义用户对象,事件,函数,减少不必要的重复性代码,使程序简洁明了,也方便了将来的维护。

(7) 安全性原则:该系统的管理员具有可设置登陆密码,修改密码的权限。经过前面的设计,我们对整个系统有了一个初步的认识,并对各个模块进行了功能分化。

3.3 功能模块和结构设计

小型超市管理系统包括员工和店长二大角色,对应本系统中的权限,根据权限的不同,可操作的业务不同。本节将对小型超市收银系统进行总体设计,介绍系统的总体功能和模块划分。

3.3.1 系统结构

小型超市收银系统所包含的功能模块有:商品入库模块、商品销售模块、营业统计

模块、商品信息模块、供应商信息模块、用户信息模块。系统功能结构图见图3-1。

图3-1 系统功能结构图

超市收银系统的业务流程图,如图3-2所示。

图3-2 ERP系统业务流程图

3.3.2 系统各功能模块定义

(1) 商品入库模块

该模块用于实现商品的入库管理,当供应商所供商品出现问题需退货时可以实现退货管理。另外用户还可以根据条件查询相关的入库记录。

(2) 商品销售模块

该模块用于实现商品售出、收银功能。顾客倘若对商品不满意还可以进行退货处理。

(3) 营业统计模块

该模块实现商品销售情况及入库情况统计分析,让系统用户可以根据时间查询统计信息。

(4) 商品信息模块

该模块实现商品基本信息的管理,如商品的添加、修改、删除操作、条件查询。对于低于库存报警值的商品会显示出来。

(5) 用户信息模块

该模块实现用户基本信息的管理,含用户的添加、修改、删除,用户信息记录的浏览。

(6) 供应商信息模块

该模块实现供应商基本信息的管理,系统用户可以实现供应商信息的添加、删除、修改,条件查询以及查看供应商可提供的相关商品。

3.4 数据库设计

数据库在一个管理信息系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致,同时,合理的数据库也将有利于程序的实现[6]。

设计数据库系统时应该充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。

3.4.1 数据库的需求分析

SQL Server数据库的建立方法可以分成两个阶段,第一个阶段是根据要输入的数据性质,新增表并设置表的字段名称、数据类型和语句,第二个阶段是在表内输入数据。

根据上述系统功能的分析,得出系统有如下需求信息:

(1) 系统必须能够区别各种用户,如店长和员工。

(2) 系统支持用户的登录。

(3) 系统必须能够显示各种商品的信息,并允许用户使用搜索功能来查找自己所需要的商品。

(4) 系统必须能将所有商品信息进行分类。

(5) 系统支持营业情况的查询。

经过上述功能分析和需求总结,设计如下的数据项和数据结构:

(1) 用户,包括数据项:编号,用户名,密码。

(2) 商品类别,包括数据项:编号,商品名称。

(3) 商品,包括数据项:商品编号(条形码) ,商品名称,类别,库存量、售价。

(5) 销售记录,包括数据项:编号,商品编号,售价,售出数量。

3.4.2 数据库概念结构设计

得到上面的数据项和数据结构后,就可以设计出系统中的各个实体以及他们之间的关系,为后面的逻辑结构设计打下基础。本系统根据上面功能分析和需求总结设计出的实体共有下面几个,下面分别列出本系统所使用到的各基本实体和各实体之间的联系。

3.4.3 数据库逻辑设计

(1) 表设计

将数据库的概念结构设计转换成关系模型,就得到了以下的几张数据库中的表[7]:下面分别介绍这些表。

系统登录用户的基本信息保存在用户信息表里,其中对于用户编号,通过自增方式实现,无需用户手动编号,编号从1000起始。详细说明如表3-1所示。

商品种类繁多,可以划分为大范围的不同种类。对于这些种类,已事先划分并存储于数据库中,不需要用户自动添加。商品类别信息表如下表3-2。

表3-2 商品信息表(GoodsType)

商品销售信息存储在销售记录表中,流水编号也采用时间作为编号,具有唯一性。各字段的详细情况见下表3-3。

表3-3 销售记录表

4 系统实现

系统用SQL Server做后台数据库,进行基于Microsoft Office Access 2003发平台的应用程序开发,基本实现其功能。以下将描述系统几个主要功能模块的运行和测试的结果。

4.1 登陆系统模块

当我们建立了一个完整的系统时,尤其对于管理系统,对于进入每个系统的人员我们都要对他进行身份验证,我们当然不希望有任何人进入该系统进行恶意的破坏,对系统中的数据进行修改,维护该系统的系统管理员也不希望有任何麻烦,所以对系统进行安全保护显的很重要,无论对于谁,系统的安全问题是首要的[9]。

在用户登录系统时,用户只需要输入分配的用户名。为了防止他人获知用户的密码,增强系统的安全性,我们将待输入密码的文本框的PasswordChar 设为*,当用户输入密码后,系统将对所输入的密码进行检查,只有当密码正确才可进入到系统主界面,否则系统会提示错误。登录界面如图4-1所示。

图4-1 登录界面图

用户登录成功后,会记下登录该系统的用户的权限,权限的不同,进入主界面后可进行的操作而异,体现在控件的可响应用户的鼠标点击事件与否。主界面如图4-2所示。由于该用户属商品销售中的收银员,可以看到他只具有商品销售的权限。

图4-2 系统收银员主界面图

4.2商品信息模块

商品基本信息管理模块,收银员可以对商品信息加以管理,界面可交互性强,运行时的界面图如下图4-3。可以进行查询商品,修改商品,删除商品,添加商品,需要进货的商品。

图4-2-1 商品查询信息管理界面图

图4-2-2 商品添加信息管理界面图

图4-2-3 商品删除信息管理界面图

图4-2-4商品修改信息管理界面图

4.3商品销售模块

商品销售模块能处理商品销售业务过程,输入商品编号后回车确认后单击“确认”按钮就可将商品添加至待售商品列表。根据快捷键操作,修改数量。商品销售运行界面图如下图4-3所示。

图4-3-1 商品销售运行界面图

开发商品销售模块过程中,对输入的数据要进行严格控制。此时,用到较多的是TextBox 控件的KeyPress 事件和TextChange 事件,下面对这两个事件进行详细说明。

(1)

首先是在商品编号输入编号,然后点击查询,界面将商品名称,商品类别,商品价格从数据库中读出,显示在界面上,然后,你输入顾客要买的数量,点击总价,将自动算出总价,点击保存页面信息到数据库将页面信息保存到售后数据库中, 则代码的显示如下: Option Compare Database

Private Sub btnsave_Click() Dim strsql As String Dim db

Dim num As String Dim updateNum As String Dim rest As String Dim newRest As Double Set db = CurrentDb

strsql = "select * from 售后商品信息表 where [商品编号]='" +

Me![tlist].Value + "'"

Set user = db.OpenRecordset(strsql) If user.RecordCount > 0 Then rest = user![商品库存] tnum.SetFocus

newRest = Val(tnum.Text) + Val(rest)

strsql = "update 售后商品信息表 set [商品库存]='" + Str(newRest) + "'where [商品编号]='" + Me![tlist].Value + "'" db.Execute (strsql) Else

strsql = "insert into 售后商品信息表 V alues('" + Me![tlist].Value + "','" + Me![tgname].Value + "','" + Me![ttype].Value + "','" + Me![tnum].Value + "','" + Me![tprice].Value + "','" + Me![tsum].Value + "')" db.Execute (strsql) End If

strsql = "select * from 商品信息表 where [商品编号]='" + Me![tlist].Value + "'"

Set user = db.OpenRecordset(strsql) If user.RecordCount > 0 Then num = user![商品库存] tnum.SetFocus

updateNum = Val(tnum.Text) updateNum = Val(num) - updateNum End If

strsql = "update 商品信息表 set [商品库存]='" + updateNum + "'where [商品编号]='" + Me![tlist].Value + "'" db.Execute (strsql)

MsgBox "保存成功!" ttype.SetFocus ttype.Text = "" tlist.SetFocus tlist.Text = "" tgname.SetFocus tgname.Text = "" tnum.SetFocus tnum.Text = "" tprice.SetFocus tprice.Text = "" tsum.SetFocus tsum.Text = "" End Sub

Private Sub btnSearch_Click() Dim strsql As String Dim db Dim user

Set db = CurrentDb

strsql = "select * from 商品信息表 where [商品编号]='" + Me![tlist].Value +

"'"

Set user = db.OpenRecordset(strsql) If user.RecordCount > 0 Then ttype.SetFocus

ttype.Text = user![商品类别] tgname.SetFocus

tgname.Text = user![商品名称] tprice.SetFocus

tprice.Text = user![商品价格] End If

End Sub

Private Sub btnsum_Click() Dim sum As Double Dim num As Double Dim price As Double

tnum.SetFocus num = Val(tnum.Text) tprice.SetFocus price = Val(tprice.Text) sum = num * price tsum.SetFocus tsum.Text = Str(sum) End Sub

Private Sub Form_Load() End Sub

(2)

保存的信息到数据库表中,如图所示

图4-3-2 商品销售结算结果图

4.4 店长操作模块

店长作为最高的管理权限,不仅能进行增 删,修改商品信息,最重要的是

对售后信息的查询,以把握超市的运营状况,操作流程如下:

图4-4-1 店长管理运行图

图4-4-2店长查询商品售前报表信息图

图4-4-3 添加商品信息运行图

图4-4-4删除商品信息运行图

图4-4-5 修改商品信息运行图

图4-4-6查询商品售后信息运行图

图4-4-6店长查询商品售后报表信息图

修改删除可实现批量更新,而新增必须在无改删操作或者以上操作后已做保存。这得利于数据库技术中提供的对象,保持二者的同步和一致性。实现代码如下:

//保持和数据库的同步更新

Option Compare Database

Private Sub Command3_Click() DoCmd.OpenReport "商品信息表" End Sub

Private Sub ComInfoOperation_AfterUpdate() title = ComInfoOperation.Value

If ComInfoOperation.Value = "添加商品信息" Then DoCmd.OpenForm "增加信息列表界面" Else

If ComInfoOperation.Value = "删除商品信息" Then DoCmd.OpenForm "增加信息列表界面" Else

If ComInfoOperation.Value = "修改商品信息" Then DoCmd.OpenForm "增加信息列表界面" Else

If ComInfoOperation.Value = "查找商品信息" Then DoCmd.OpenForm "查询商品信息" End If End If End If End If End Sub

Private Sub Command20_Click() On Error GoTo Err_Command20_Click

Dim stDocName As String

stDocName = ChrW(21830) & ChrW(21697) & ChrW(20449) & ChrW(24687) & ChrW(-30616)

DoCmd.OpenReport stDocName, acPreview

Exit_Command20_Click: Exit Sub

Err_Command20_Click: MsgBox Err.Description Resume Exit_Command20_Click End Sub

Private Sub Command21_Click() On Error GoTo Err_Command21_Click

Dim stDocName As String

stDocName = ChrW(21806) & ChrW(21518) & ChrW(21830) & ChrW(21697) & ChrW(20449) & ChrW(24687) & ChrW(-30616) DoCmd.OpenReport stDocName, acPreview

Exit_Command21_Click: Exit Sub

Err_Command21_Click: MsgBox Err.Description Resume Exit_Command21_Click End Sub

Private Sub Form_Load() End Sub

4.5 用户信息模块

具有系统管理员的用户可打开用户信息模块对应的窗体,完成对用户信息的管理,运行界面如下图4-5。

图4-5收银员注册信息运行图

5 总结

经过三个月的努力,我终于完成了小型超市收银系统的全部设计过程,各功能模块运行流畅自然且具有一定的实用价值。

软件设计是一个精细漫长的过程。在整个过程中,都需要周密的计划和安排,每一步骤,都需要按照软件工程标准来完成。在设计中,我始终坚持理论指导实践原则,并通过实践来加强理论的学习。通过实习锻炼,我熟悉了软件的一般过程,加强了对实际问题的处理能力。在实习过程中,我也遇到了一些困难,主要表现了技术和经验的欠缺,但通过努力,终于一一克服了。由于开发者能力有限,加上时间仓促,本系统难免会出现一些不足之处,例如:本系统只适合小型超市使用,不能适合中大型超市使用;超市管理系统涉及范围宽,要解决的问题多,功能复杂,实现困难,但由于限于时间,本系统只能做出其中的一部分功能。对于以上出现的问题,我们深表歉意,如发现还有其它问题,希望老师批评指正。

该软件有待改进,体现在如下方面:其一,条形码扫描仪的引进将从根本上提高业务处理的速度,提高超市运作的速度。在这个系统中它缺少了。只因能力有限。本人亦曾查询过相关资料,了解到要实现这一功能需要涉及到的知识有:串口通信、多线程等等。再者,界面美工方面有不足之处。最后,系统的可扩展性不是特别强,因为本系统采取的C/S两层开发,虽然有用到些许的公共类,实现了代码共享,节省了系统资源,但毕竟有限且是在在两层开发的思路上设计的。希望在以后的时间里能继续完善。

致 谢

时间如梭,大学一年马上就要结束了,在这一年的学习生活中,我学习到了很多知识,专业知识方面更是有了很大的提高,是我这一生当中最宝贵的财富。在这最后的阶段,我衷心的向学校的各位老师和我的同学及其关心鼓励我的亲人表示我最衷心的感谢,感谢他们在这四年当中对我的帮助和关心。

感谢从大一到大二所有的授课教师,他们孜孜不倦的教导我们,使我们真正的学习到了知识。

感谢海天学院的图书馆,藏书丰富,我总能从中获得我想要的知识和思想。这次论文其实也是学习的过程,从图书馆中我找到很多相关学习指导书籍,才有了这次设计的顺利完成,我感谢她。

尤其要感谢的是我的设计辅导老师,许美慧老师。在他的帮助下我们才能顺利的完成这次设计。 许美慧老师多次询问并督促研究进程,而且为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励。严谨求实的态度,踏踏实实的精神给我留下了深刻的印象。这些足以让我终生受益。我祝工作顺心顺意,心想事成!

最后感谢帮助过我的每一个人,没有他们就没有我的今天。


相关内容

  • 宇宙第一定律和第二定律的定义
    宇宙第一定律和第二定律的定义 宇宙定律第一规律: 运动是因彼此间相互联系相互作用,又之间存在差别,就会产生动力而运动,使之趋于同一.完全同一的结果,使其它们的时空趋于无穷小,宇宙归零[宇宙学奇点],又产生完全不同,反事物:物极必反,时空又从 ...
  • 小型超市销售管理系统
    小型超市销售管理系统 实 验 报 告 实验课程: 信息系统分析与设计 学生姓名:曹志明 冯建明 冯伟 胡华 赖玉峰 专业班级: 信息管理041班 组 长:曹志明(6104104002) 小组成员:冯建明(6104104027) 冯 伟(61 ...
  • 超市收银系统接口实验报告
    微机接口课程设计试验报告 计算机0211班 ――超市收银系统 江浩 学号:[1**********]9 1 一.课程设计目的, 要求及条件: 掌握接口硬件开发平台的使用方法,利用现有的实验平台和PC 机, 组成一个微机模拟应用系统: 掌握基 ...
  • 中国超市现状及发展
    中国超市现状及发展 (2009/10/18 12:05) 1. 中国超市这20多年的发展可谓几起几落,一路走来也是磕磕绊绊,同国外的超市相比,处于成长期的中国超市仍有着明显的缺点和不足,主要表现为以下几个方面: 一.业态定位与功能的不完善 ...
  • 超市专业术语
    超市行业专业术语 卖场常用设备.用具 1. 货架:商场上用来存放商品.展示商品的金属架.通常有几种类型,有承重式的高达几米的,有较矮的,与人的身高差不多.每一种货架都有其专用的配件. 2. 端架:货架两断的位置,也是顾客在卖场回游经过频率最 ...
  • 百货店收银员实习总结
    篇一:百货收银员实习报告 他人也练得很带劲,有人还不停的想跟别人比赛, 看谁点的最快. 接下来的一个星期,我 们就实习了.我们首先到人力资源部进行报 道,人力资源部经理给我们讲解了一下相关的注 意点后,我们就换上绿 色的工作马甲,带上胸牌, ...
  • 银行优惠卡打折方案1
    关于*******银行 "*******卡"打折优惠卡的设计 方案 总行领导: 为了我行银行卡业务的进一步发展,不断的提高"*******卡"发卡量,提高"*******卡"市场占 ...
  • 连锁超市财务管理手册-
    连锁店财务管理实操手册 1收银机系统投入使用的操作规定 1.1收银员操作流程图 收银过程中注意事项:1.相同商品要核对全称和条码 2.每扫描一个商品要核对屏幕是否有错码或串码现象 3.盒装商品需要取出盒内实物核对 4.收款过程中要唱收唱付 ...
  • 餐饮管理系统综述文献综述
    餐饮管理系统 文献综述 专业:计算机科学与技术 班级:08级统本 作者:温盛明 指导老师:王沛礼 一.引言 随着社会的进步,人民生活水平的不断提高,餐饮酒店等消费行业得到了迅猛的发展, 现在的餐饮行业正向着规模化,集团化方向发展,传统的经营 ...
  • 主管年终总结发言稿
    主管年终总结发言稿篇一:2012年餐饮主管工作总结范文 2012年的年底已经悄然来临,在这一年中,成果是什么?问题是什么?有什么建议?餐饮主管年终工作总结里都要有所体现!这个时候餐饮主管们是不是开始烦恼怎样写年终工作总结呢?从哪里入手?有没 ...