进销存管理系统设计与实现.docx

上传人:牧羊曲112 文档编号:1995381 上传时间:2022-12-30 格式:DOCX 页数:77 大小:2.35MB
返回 下载 相关 举报
进销存管理系统设计与实现.docx_第1页
第1页 / 共77页
进销存管理系统设计与实现.docx_第2页
第2页 / 共77页
进销存管理系统设计与实现.docx_第3页
第3页 / 共77页
进销存管理系统设计与实现.docx_第4页
第4页 / 共77页
进销存管理系统设计与实现.docx_第5页
第5页 / 共77页
点击查看更多>>
资源描述

《进销存管理系统设计与实现.docx》由会员分享,可在线阅读,更多相关《进销存管理系统设计与实现.docx(77页珍藏版)》请在三一办公上搜索。

1、本 科 毕 业 论 文论 文 题 目 :进销存管理系统设计与实现指 导 老 师 :xxx学 生 姓 名 :xxx学 号 :xxx院 系 :网络教育学院专 业 :计算机科学与技术写 作 批 次 : 2014秋原 创 承 诺 书我承诺所呈交的毕业论文是本人在老师指导下进行的研究工作及取得的研究成果。据我查证,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果。若本论文及资料与以上承诺内容不符,本人愿意承担一切责任。 毕业论文作者签名:_xxx_ 日期:2014 年 10月 一八 日目 录摘要IAbstractII1 概述12 总体设计22.1 项目规划22.2 系统功

2、能结构图32.3 开发及运行环境32.4 编码设计32.5 系统流程图42.6 数据库表设计53 系统详细设计73.1系统需求分析73.2系统角色说明83.3系统主要功能模块83.3.1客户信息83.3.2 销售订单123.3.3 生产通知单213.4主要程序清单304 测试与运行305 结束语335.1论文主要工作与结果335.2问题与展望336 致谢34参考文献34附录一 客户信息34附录二 销售订单40附录三 生产通知单57 摘要中小企业在我国经济发展中具有重要地位,目前我国的中小企业数量多,地区分布广泛,行业分布跨度大。我国中小企业的信息化水平还很低,相比国外企业,还只处于刚开始始用的

3、阶段。随着技术发展,电脑操作及管理日趋简化,电脑知识日趋普及,同时市场经济快速多变,竞争激烈,企业采用电脑管理进货、库存、销售等诸多环节也已成为趋势及必然。 从系统开发的实际情况出发,经过对采购、销售、物管部门需求调研分析,以及大数据的分析,确立了本系统采用C/S架构,外部访问用VPN,数据库:SQL Server 2008R2,服务器:Jboos4.2,开发工具:NetBeans IDE 6.9.1,开发技术:JDK1.6+Swing+EJB3.0。本文概括了总体设计、项目规划、系统功能结构图、开发及运行环境、编码设计、系统流程图、数据库表设计、详细设计。实现客户的资料管理,销售订单管理,生

4、产通知单管理。开通系统权限的用户可以通过客户端输入用户名、密码进入系统,实现时时查看到客户的资料联系人信息,客户的合同订单信息、客户的产品生产信息,生产进度查询和统计打印。测试表明,该系统运转正常,能使客户资料、合同管理、生产管理工作清晰简单,极大提高工作效率。关键词:进销存管理系统、产品采购、产品销售、产品库存 AbstractSmall and medium-sized enterprises in our country has the important status in the economic development, the number of small and medium

5、-sized enterprises at present in our country, region are widely distributed, industry distribution span.Information level of small and medium-sized enterprises in our country is still very low, compared with foreign enterprises, still only at the first beginning with the stage.With the development o

6、f technology, the computer operation and management of increasingly simplified, increasingly popularization of computer knowledge, at the same time, fast changing market economy, the competition is intense, enterprise use computer manage stock, inventory, sales, and many other link also has become a

7、 trend and necessity. Starting from the actual situation of system development, through the tube department of procurement, sales, demand analysis, research and data analysis, established this system USES C/S architecture, external access to use VPN, database, SQL Server 2008 r2, Server: Jboos4.2, d

8、evelopment tools: NetBeans IDE 6.9.1, development technology: JDK1.6 + EJB3.0 +Swing.This article summarizes the overall design, project planning, system function structure, the development and running environment design, coding, system flow chart, database table design, detailed design.To reach the

9、 customer information management, sales order management, order management.Opened system permissions users can through the client input user name and password to enter system, implementation always check the information to the customer contact information, customer order information of the contract,

10、 the customer product information, print production schedule query and statistics.Tests show that the system operating normally, can make the customer information, contract management, production management work clear and simple, greatly improve work efficiency.III1 概述经济大环境的变化使得规模经济的优势不再突出。固定的硬设备、人员

11、数量、大量资金等资源投入占企业效益的比重变少,而软投入如管理、人力资源价值、服务、品牌附加值、渠道等要素资源的投入却能增加企业的效益。“速度冲击规模”的速度经济概念已经向企业提出,目前,我国中小企业的信息化水平还很低,相比国外企业,还只处于发展阶段。 那么对于日益发展壮大的企业集团,怎样才能找到一套功能强大可任意拓展、低运行成本、安全可靠的管理解决方案,来跟上企业的发展,跟上时代的发展呢? 我们认为最好的办法是利用Internet这个工具,架构自己的供需链管理平台,使无处不在的互联网为你所用,实现无处不在的管理目标。让Internet像电一样融入到企业的管理之中,提高企业在新经济时代的核心竞争

12、力,通过对Internet的高效率使用,在激烈的市场竞争中,首先打赢第一仗“信息战”。正是基于对Internet的这种深刻认识,针对中国企业特点提出了基于Internet的网络商务管理解决方案企业进销存管理系统。 22 总体设计2.1 项目规划企业进销存管理系统是一个典型的数据库开发应用程序,由基础信息模块、采购管理模块、库存管理模块、产品销售模块、查询统计模块、系统设置模块等部分组成,规划系统功能模块如下:q 基础信息模块该模块主要管理产品信息、客户信息、供应商信息、出入库类型、行业类型、地区管理、 销售类型、部门、员工资料。q 采购管理模块该模块主要管理请购单、采购订单、采购报验、采购退货

13、、供应商价格对照表。q 库存管理模块 该模块主要管理库存查询、调拨管理、期初入库、采购入库、其它入库、领料出库、销售出库、其它出库。q 产品销售模块该模块主要管理销售订单、生产通知单、发货通知单、销售退货报验、销售价格对照表。q 查询统计模块该模块主要管理销售订单明细查询、销售订单跟踪查询、出入库明细查询、采购退货明细查询、采购订单跟踪。q 系统设置模块该模块主要管理模块管理、角色管理、工作流、单据类型、功作流角色、公司信息设置、修改密码。2.2 系统功能结构图企业进销存管理系统功能结构如图1所示。 图1 系统功能结构图2.3 开发及运行环境硬件平台:q CPU:P41.8GHz。q 内存:2

14、56MB以上。软件平台:q 操作系统:Windows 7/Windows XP/ Windows 2000。q 数据库:SQL Server 2008R2。q 服务器:Jboos4.2。q NetBeans IDE 6.9.1q JDK1.6+Swing+EJB3.0q VPNq 分辨率:最佳效果1024768像素。2.4 编码设计编码设计是数据库系统开发的前提条件,是系统不可缺少的重要内容。编码是指与原来名称对应的编号、符号或记号。它是进行信息交换、处理、传输和实现信息资源共享的关键。编码也用于指定数据的处理方法、区别数据类型,并指定计算机处理的内容等。本系统内部信息编码采用了统一的编码方式

15、情况。(1)采购编号为字母“C”、单据分类(两位)+年(后两位)+月+日+4位流水号。例如,C011205010001。(2)入库单据编号为字母“W”、单据分类(两位)+年(后两位)+月+日+4位流水号。例如,W011205010001。(3)出库单据编号为字母“W”、单据分类(两位)+年(后两位)+月+日+4位流水号。例如,W021205010001。(4)销售单据编号为字母“X”、单据分类(两位)+年(后两位)+月+日+4位流水号。例如,X011205010001。2.5 系统流程图销售流程图图2 销售流程2.6 数据库表设计表1:客户信息表(bi_client)字段名类型(长度)允许空默

16、认值说明idnumeric(19,0)NidcodeVARCHAR(100)N客户编号fullNameVARCHAR(255)N客户全称shortNameVARCHAR(255)N客户简称addressVARCHAR(500)N地址telVARCHAR(50)Y电话faxVARCHAR(50)Y传真contactVARCHAR(50)Y联系人mobilePhoneVARCHAR(20)Y手机natureOfFirmsVARCHAR(50)Y企业性质area_idnumeric(19,0)N区域dataDictVARCHAR(100)Y行业信息salesPerson_idnumeric(19,0

17、)Y销售人clientCategoryVARCHAR(100)N客户类别memoNUMBER(一八,2)Y备注deleteFlagtinyintN假删除表2:客户联系人表(bi_clientcontact)字段名类型(长度)允许空默认值说明Client_idnumeric(19,0)N客户IDnameVARCHAR(20)N联系人telVARCHAR(一五)Y固定电话mobileVARCHAR(11)Y手机departementVARCHAR(50)Y部门positionVARCHAR(50)Y职位emailVARCHAR(100)YEmail表3:销售订单表(so_salesOrder)字段

18、名类型(长度)允许空默认值说明idnumeric(19,0)NiddocCodeVARCHAR(20)N单据编号Creator_idnumeric(19,0)N制单人idcreateDatedatetimeN制单日期Client_idnumeric(19,0)N客户Area_idnumeric(19,0)Y区域orderDatedatetimeY订单日期deliveryDatedatetimeY交货日期salesPerson_idnumeric(19,0)Y销售人员idDepartment_idnumeric(19,0)Y部门idarea_idnumeric(19,0)N区域discountn

19、umeric(12,2)Y折扣depositnumeric(12,2)Y定金moneyNameVARCHAR(100)N货币名称moneyIdentifyingVARCHAR(100)N原币标识exchangeRatenumeric(12,2)N原币与本币汇率taxRatenumeric(12,2)N税率contractNoVARCHAR(100)N合同号orderCategoryVARCHAR(100)N销售类型craftClaimVARCHAR(100)N工艺要求memoNUMBER(一八,2)Y备注deleteFlagtinyintN假删除表4:销售订单明细表(so_salesOrder

20、Item)字段名类型(长度)允许空默认值说明idnumeric(19,0)NidsalesOrder_idnumeric(19,0)N销售订单idPart_iddatetimeN产品idquantityfloatN销售数量originalCurrencyPricefloatN原币单价unitPricefloatN本币单价taxRatefloatN税率discountPercentfloatN折扣率memoNUMBER(一八,2)Y备注deleteFlagtinyintN假删除表5:生产通知单表(pp_productionInformOrder)字段名类型(长度)允许空默认值说明idnumeri

21、c(19,0)NiddocCodeVARCHAR(20)N单据编号Creator_idnumeric(19,0)N制单人idcreateDatedatetimeN制单日期parentDocCodeVARCHAR(20)N被引用单据编号part_idnumeric(19,0)N产品quantityfloatN数量completeDatedatetimeN发货日期salesPerson_idnumeric(19,0)Y销售人员idcontractNoVARCHAR(100)N合同号orderCategoryVARCHAR(100)N销售类型craftClaimVARCHAR(100)N工艺要求sp

22、ecialRequireVARCHAR(1000)Y特殊要求cardInformationVARCHAR(1000)Y贴牌信息colorClaimVARCHAR(1000)Y颜色要求packInformationVARCHAR(1000)Y包装信息sendMachineStateVARCHAR(100)Y发机状态memoNUMBER(一八,2)Y备注deleteFlagtinyintN假删除表6:生产通知单配置明细表(pp_productionInformOrderItem)字段名类型(长度)允许空默认值说明idnumeric(19,0)NidproductionInformOrder_idn

23、umeric(19,0)N生产通知iddataDict1VARCHAR(100)N配置名称dataDict2VARCHAR(100)N配置选项memoNUMBER(一八,2)Y备注deleteFlagtinyintN假删除3 系统详细设计3.1系统需求分析通过调查,要求系统需要具有以下功能:q 由于操作人员的计算机知识普遍较差,要求有良好的人机界面。q 由于该系统的使用对象多,要求有较好的权限管理。q 方便的数据查询,支持多条件查询。q 基础信息管理与查询(包括产品信息、客户信息、供应商信息)。q 通过计算机,能够直接“透视”仓库存储情况。q 完善的产品采购信息、产品销售信息进行管理。q 方便

24、、健全的结账功能。q 产品销售统计。q 当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。q 数据计算自动完成,尽量减少人工干预。q 系统退出。3.2系统角色说明系统使用者角色定义,并说明其工作内容、注意事项、以及能够通过系统获得的数据与相关信息。1) 系统管理员:负责系统模块、角色、单据类型、工作流、公司信息、销售管理模块、所有相关模块、审批流程定义。2) 订单文员:负责销售管理模块的客户信息、销售订单、生产通知单、发货通知单的录入、修改、删除、查询。3.3系统主要功能模块3.3.1客户信息 操作人员:订单文员 描述:订单文员通过业务员提供的成交客户录入客户信息,客户

25、信息添加会验证客户是否存在。 操作界面:基础资料/客户信息 客户信息列表:可按客户名、客户编码、联系人信息、地址查询。 图3 客户信息列表客户信息新增:点击新增按钮,系统出现如下输入栏目,客户编码以C+6位流水号自动生成,客户全称、简称、企业性质、客户类型、行业类别、联系人、x等红色字体必填。 图4 客户信息新增客户信息新增:添加联系人界面,可添加多个联系人,填写完后按保存按钮。 图5 客户信息新增添加联系人客户信息列表查询,较完整代码请参见“附录”:/* * 客户列表管理 * xauthor agh */public class ClientList_Panel extends WorkSp

26、aceBase_Panel private FreeTableModel tableModel = null;/表模型 private List list = null; /客户列表 private HashMap keywords = new HashMap(); private DefaultTreeModel dtm = null; /所在地区树模型 private DefaultMutableTreeNode currentNode = null;/所在地区树模节点 private User selectEmp = null; /销售员 public ClientList_Panel(

27、) /构造方法 initComponents(); setupTable(); private void setupTable() /设置表模型 this.tableModel = new FreeTableModel(Pub.tableConfigDir + baseinfo/Client.xml, Client, this.jTable_list); public void refreshToolbar() /权限控制 AppMain.enableForwardButton(false); AppMain.enablePrintButton(false); if (AppMain.isIn

28、Power(/BaseInfoModule/ClientManager/Create, false) /新增权限 AppMain.enableCreateButton(true); else AppMain.enableCreateButton(false); if (AppMain.isInPower(/BaseInfoModule/ClientManager/Delete, false) /删除权限 AppMain.enableDeleteButton(true); else AppMain.enableDeleteButton(false); AppMain.setForwardButt

29、onText(前进); AppMain.enableBackButton(false); AppMain.enableReloadButton(true); AppMain.enableSaveButton(false); AppMain.enableSearchButton(true); AppMain.enableCloseButton(true); /查询方法 public void loadFromDB() this.keywords = new HashMap(); String keyword = this.jTextField_keyword.getText().trim();

30、if (!.equals(keyword) this.keywords.put(keyword, keyword); this.list= EJBClientRemote.getClientSessionRemote().getClientList(keywords); public void load() /加载方法 int i = 1; if (this.list != null) List newItems = new ArrayList();/设置序列号 for (Client bean : list) bean.setSerNum(i); i+; newItems.add(bean)

31、; this.tableModel.load(newItems); xOverride public boolean beforeDelDocument() /删除方法前提示是否删除 return (this.tableModel.confirmRemove(AppMain.getMainFaceFrame().getFrame(); xOverride public boolean delDocFromDB() /删除方法 List dellist = this.tableModel.getPendingRemovalItemList(); List removalList = new Ar

32、rayList(); for (Iterator it = dellist.iterator(); it.hasNext();) Object obj = it.next(); removalList.add(Long.valueOf(Client) obj).getId(); /调用EJB3.0远程方法删除 EJBClientRemote.getClientSessionRemote().removeClients(removalList); AppMain.refreshCurrent(); return true; 3.3.2 销售订单 操作人员:订单文员 描述:订单文员通过业务员提供的

33、成交销售合同录入销售订单,审核结案后会生成生产通知单。 操作界面:销售管理/销售订单 销售订单列表:可按签单日期、发货日期、单号、合同号、销售员、客户名查询。 图6 销售订单列表销售订单新增:点击新增按钮,系统出现如下输入栏目,单据信息(单据编号、制单人、制单日期、审批人、审批日期、单据状态)保存后自动生成,下单日期、合同号、销售类型、发机日期、工艺要求、客户、联系人、付款方式、办事处、所属区域销售员等红色字体必填。 图7 销售订单新增销售订单明细新增:添加订单明细界面,可添加多条明细,填写完后按保存按钮。 图8 销售订单明细新增销售订单列表查询,较完整代码请参见“附录”:/* * 销售订单列

34、表 * xauthor agh */public class SaleOrderList_Panel extends WorkSpaceBase_Panel implements SaveButton_Interface, SelectSingleObject_Interface private FreeTableModel tableModel = null;/表模型 private List itemList = null; /销售订单列表 private DataSet dataSet = null; /通用查询集合 private QueryConditionSetting query

35、Setting = null;/查询条件设定 private int state = 0;/0为待审核,1为已审核 /* Creates new form RoleList_Panel */ public SaleOrderList_Panel() initComponents(); this.jInputDatePanel_endDate.setParentFrame(this);/申请日期 this.jInputDatePanel_startDate.setParentFrame(this);/申请日期 setupTable(); /单据类型 vouchType = EJBClientRe

36、mote.getWorkflowSessionBeanRemote().getVouchTypeName(销售订单); if (vouchType != null) /审批工作流 AuditWorkflow auditWorkflow = EJBClientRemote.getWorkflowSessionBeanRemote().getAuditWorkflowId(vouchType.getAuditWorkflow().getId(); /单据状态:下拉菜单设值 for (AuditWorkflowItem auditWorkflowItem : auditWorkflow.getAud

37、itWorkflowItems() jComboBox_state.addItem(auditWorkflowItem.getDocQueryStatus(); private void setupTable() String configFile = Pub.tableConfigDir + /sale/SalesOrder.xml; this.tableModel = new FreeTableModel(configFile, SalesOrder, this.jTable_Part); /权限处理 public void refreshToolbar() AppMain.enableF

38、orwardButton(false); /AppMain.enablePrintButton(false); AppMain.enableBackButton(false); if (AppMain.isInPower(/SaleModule/SalesOrder/Create, false) /新增权限 AppMain.enableCreateButton(true); else AppMain.enableCreateButton(false); if (AppMain.isInPower(/SaleModule/SalesOrder/Delete, false) /删除权限 AppMa

39、in.enableDeleteButton(true); else AppMain.enableDeleteButton(false); AppMain.getDeleteButton().setText(作废); AppMain.enableReloadButton(true); AppMain.enableSaveButton(false); AppMain.enablePrintButton(false); AppMain.enableSearchButton(true); AppMain.enableCloseButton(true); AppMain.enableWorkflowButton(false); public void clear() throw new UnsupportedOperationException(Not supported yet.); public void beforeLoad() if (que

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号