ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:874.13KB ,
资源ID:9381571      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9381571.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(进销存管理系统的设计.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

进销存管理系统的设计.docx

1、进销存管理系统的设计课程设计说明书设计名称: 数据库系统原理课程设计 题 目: 进销存管理系统的设计 学生姓名: 专 业: 班 级: 学 号: 指导教师: 日 期: 2013 年 03 月 10 日 课程设计任务书 网络工程 专业 10 年级 2 班 许冰滢 一、 设计题目 进销存管理系统的设计二、 主要内容通过对典型的小型流通型企业的进货、销售、库存的业务流程进行分析,完成具有进货管理、销售管理、库存管理等相关功能的小型数据库管理应用系统。三、 具体要求1. 根据任务要求完成有关表的设计(表的设计需要遵循3FN)。2. 完成进货单(盘盈)、出货单(盘亏)的维护(一般含增、删、改、查等操作)。

2、3. 实现库存表的浏览查找。 4. 实现库存结转功能。5. 按时间、按商品类别、顾客、供应商进行进、出货单的统计。6. 完成库存表的按时间、按类别进行统计。7. 完成客户、供应商的管理。四、 进度安排 2月25日-2月26日:资料查找、系统分析,数据流程分析,概要设计。 2月27日-2月28日:系统详细设计、功能设计。 3月1日-3月6日:算法实现、编程调试。 3月7日:功能演示、资料整理、课程设计说明书编写。五、 完成后应上交的材料 1、课程设计说明书(数据流程图、E-R关系图、功能模块图、数据库表结构、核心算法等) 2、相关源程序文件六、 总评成绩指导教师 签名日期 年 月 日系 主 任

3、审核日期 年 月 日佛山科学技术学院课程设计用纸佛山科学技术学院课程设计用纸一、设计任务分析进销存系统是对企业生产经营中进货、出货、批发销售、付款等进行全程跟踪管理,从接获订单合同开始,进入物料采购、入库、领用到产品完工入库、交货、回收货款、支付原材料款等,每一步都为您提供详尽准确的数据。有效辅助企业解决业务管理、分销管理、存货管理、营销计划的执行和监控、统计信息的收集等方面的业务问题。因此,我们所设计的进销存系统的主要功能包括如下。1、商品基本信息的管理:用来处理进出库的商品信息,包括新建、修改、删除和查询等。2、订单信息的处理:是整个系统的工作流程的起点,包括订单的增减、查询,以及订单在处

4、理过程中(如发货确认等)状态的改变。3、产品入库出库管理:完成记录,修改商品入出库信息,并有库存报表功能。4、查询功能:允许管理员可以按编号、日期对进货商的销售信息进行查询;对入库的产品信息进行详细的查询,包括编号、名称、入库时间等。2、系统需求分析设计2.1需求分析 1、将订单、商品、供应商、客户、商品、进货、销售等信息录入管理系统,提供修改和查询。 2、能够对各类信息提供查询。 3、能够统计进出库的各类信息,对进库、销售、库存进行汇总,协调各部门的相互工作。2.2模块设计 1、系统的基本配置模块:包括产品、供应商、客户的基本资料的录入。 2、产品进出库处理模块:主要包括对订单信息的处理和采

5、购单的处理,一般产品入出库的处理。 3、查询模块:对系统中的各类信息,如供应商资料、出入库详细资料等进行查询,支持多个条件的复合查询。4、报表显示模块:根据用户的需要和查询结果来生成报表。3、数据库结构的设计 3.1数据表结构需求分析 在本系统中,我们设计了10张数据表,各个表存储的信息如下所示。 1、“管理员”表:存放系统管理人员信息,一般是企业管理人员的用户 名和密码。 2、“产品信息”表:存储产品的基本信息,如产品编号、产品名称、规 格型号、计量单位、供应商编号、产品类别等。 3、“供应商”表:存放产品供应商的相关信息,比如供应商编号、供应 商名称、联系人姓名、联系人职务、业务电话、电子

6、邮件等。 4、“客户”表:记录客户的基本信息,比如客户编号、客户姓名、客户 地址、联系电话、电子邮件、备注等。 5、“订单”表:记录订单的基本信息,如订单编号、客户编号、产品编号、供应商编号、销售单价、订购数量、订单金额、预定时间、订单时间等基本预订信息。 6、“订单处理明细”表:除了订单基本信息外,还要增加付款信息和发 货信息,如付款方式、付款时间、发货地址、发货时间、发货人等。 7、“入库记录”表:存放产品入库的信息。 8、“出库记录”表:存放产品出库的信息。 9、“业务类别”表:记录进出库的业务类型。 10、“库存”表:记录产品的库存信息。3.2建立空数据库系统 建立一个“进销存管理系统

7、.accdb”空白数据库。3.3创建数据表 1、“管理员”表 2、“产品信息”表 3、“供应商”表 4、“客户”表 5、“订单”表 6、“订单处理明细”表 7、“入库记录”表 8、“出库记录”表 9、“业务类别”表 10、“库存”表3.4定义数据表之间的关系 建立“产品信息”表和“出库记录”表之间的表关系。 数据库表中,各种表关系如下表所示。4、窗体的实现4.1“登录”窗体 属性值设置如下表所示。 完成后的“登录”窗体如下图所示。 4.2“切换面板”窗体 各个控件的属性设置如下表所示。 完成后的结果如下图所示。4.3“订单处理”窗体 下表所示主要控件的属性。 完成后的界面如下图所示。4.4“发

8、货确认”窗体 属性见下表所示。 完成后的“发货确认”窗体如下图所示。 4.5“产品进库”窗体 最终的创建效果如下图所示。 4.6“供应商查询编辑”窗体 属性设置见下表所示。 完成后的窗体如下图所示。 4.7“进货资料查询”窗体 属性值具体情况如下表所示。 完成了“进货资料查询”窗体的创建,最终效果如下图所示。 4.8“密码管理”窗体 “密码管理”窗体控件如下表所示。 完成后的“密码管理”窗体如下图所示。 “新密码”窗体控件如下表所示。 完成后的“新密码”窗体如下图所示。5、查询的实现5.1“订单处理查询”的设计 5.2“供应商销售查询”的设计 整个查询的条件设置如下表所示。5.3“进货资料查询

9、”的设计 我们建立的字段的信息如下表所示。 5.4“库存查询”的设计6、报表的实现6.1“订单查询”报表 6.2“供应商销售”报表 6.3“库存”报表7、编码的实现 7.1公用模块 Option Compare DatabaseOption ExplicittxtSQL为执行查询时所需要的SQL语句Public Function ExeSQL(ByVal txtSQL As String) As ADODB.RecordsetOn Error GoTo ExeSQL_Error 错误处理Dim rs As New ADODB.Recordsetrs.Open txtSQL, CurrentPr

10、oject.Connection, adOpenKeyset, adLockOptimistic返回记录集对象Set ExeSQL = rs 返回值为ExeSQLExeSQL_Exit:Set rs = NothingExit FunctionExeSQL_Error: Dim msgstring As String msgstring = 查询错误 & Err.Description MsgBox msgstring, vbCritical Resume ExeSQL_ExitEnd Function7.2“登录”窗体代码 添加“确定”按钮的代码,如下所示。Option Compare Da

11、tabaseOption ExplicitDim mrc As ADODB.RecordsetDim txtSQL As StringDim i As Integer 记录错误次数确定按钮的代吗Private Sub btn_ok_Click()On Error GoTo Err_btn_ok_Click 错误处理判断用户名是否为空If IsNull(txt_name) ThenMsgBox 请输入用户名!, vbCritical, 提示 txt_name.SetFocusElse txtSQL = SELECT * from 管理员 where 用户名= & txt_name & Set m

12、rc = ExeSQL(txtSQL) If mrc.EOF Then MsgBox 没有此用户名称!, vbCritical, 提示 Else If (mrc(1) = Txtpwd) Then mrc.CloseSet mrc = Nothing Me.Visible = False 打开切换面板 DoCmd.OpenForm 切换面板 Else i = i + 1 If (i 0 Then rs.Update Else MsgBox 删除记录出错, vbCritical End IfEnd Ifrs.CloseSet rs = NothingEnd Sub删除记录后,要更新库存数量Pri

13、vate Sub btn_del_Click()Dim rs As New ADODB.RecordsetDim str_temp As String str_temp = select * from 库存 Where 产品编号 = & 产品编号 & rs.Open str_temp, CurrentProject.Connection, adOpenDynamic, adLockOptimisticIf Not IsNull(rs) Thenrs(库存量) = rs(库存量) - 入库数量rs.UpdateEnd Ifrs.CloseSet rs = NothingDoCmd.RunComm

14、and acCmdDeleteRecordEnd SubPrivate Sub btn_query_Click()DoCmd.OpenForm 进货资料查询Me.Visible = FalseEnd SubPrivate Sub btn_return_Click()Me.Visible = FalseEnd Sub7.5“发货确认”窗体代码 相关代码如下。Option Compare Database确认按钮代码Private Sub brn_ok_Click()On Error GoTo Err_btn_ok_Click用这个数组str(10)来保存订单记录中的数据Dim str(10) A

15、s String Dim mrc As New ADODB.RecordsetIf IsNull(txt_no) Then MsgBox 请输入要确认的订单编号!, vbCritical, 提示 txt_no.SetFocusEnd IfIf IsNull(Combo1) Then MsgBox 请输入支付方式!, vbCritical, 提示 Combo1.SetFocus Combo1.DropdownEnd IfIf IsNull(txt_paydate) Then MsgBox 请输入支付日期!, vbCritical, 提示 txt_paydate.SetFocusEnd If If

16、 IsNull(txt_address) Then MsgBox 请输入送货地址!, vbCritical, 提示 txt_address.SetFocusEnd IfIf IsNull(txt_name) Then MsgBox 请输入送货人!, vbCritical, 提示 txt_name.SetFocusEnd IfIf IsNull(txt_date) Then MsgBox 请输入送货日期!, vbCritical, 提示 txt_date.SetFocusEnd IfDim str_temp As String订单编号是整形,不需要单引号str_temp = select * f

17、rom 订单 where 订单编号= & txt_no & Set mrc = ExeSQL(str_temp)If mrc.EOF Then MsgBox 没有该订单!, vbCritical, 提示Else记录查找到的订单信息 str(0) = mrc(订单编号) str(1) = mrc(客户编号) str(2) = mrc(产品编号) str(3) = mrc(供应商编号) str(4) = mrc(销售单价) str(5) = mrc(订购数量) str(6) = mrc(订单金额) str(7) = mrc(预定时间) str(8) = mrc(订单时间) mrc.Close Se

18、t mrc = Nothing End IfDim rs As New ADODB.Recordset rs.Open 订单处理明细, CurrentProject.Connection, adOpenDynamic, adLockOptimistic rs.AddNew rs(订单编号) = str(0) rs(客户编号) = str(1) rs(产品编号) = str(2) rs(供应商编号) = str(3) rs(预定时间) = str(7) rs(发货时间) = txt_date rs(销售单价) = str(4) rs(订购数量) = str(5) rs(订单金额) = str(6

19、) rs(付款方式) = Combo1 rs(付款时间) = txt_paydate rs(发货地址) = txt_address rs(发货人) = txt_name rs(状态) = 已处理 rs.Update rs.Close Set rs = Nothing MsgBox 成功添加了该信息!更新库存表中的数量Dim rs2 As New ADODB.Recordset查找库存表中的记录str_temp = select * from 库存 Where 产品编号 = & str(2) & rs2.Open str_temp, CurrentProject.Connection, adOp

20、enDynamic, adLockOptimisticIf Not rs2.EOF Thenrs2(库存量) = rs2(库存量) - str(5)rs2.UpdateEnd Ifrs2.CloseSet rs2 = Nothing MsgBox 成功更新了库存! 错误处理Exit_btn_ok_Click: Exit SubErr_btn_ok_Click: Exit Sub Resume Exit_btn_ok_ClickEnd SubPrivate Sub btn_cancel_Click() Dim ctl As Control For Each ctl In Me.Controls

21、Select Case ctl.ControlType Case acTextBox If ctl.Locked = False Then ctl.Value = Null Case acComboBox ctl.Value = Null End SelectNextMe.txt_no.SetFocusEnd SubPrivate Sub btn_return_Click()Me.Visible = FalseDoCmd.OpenForm 切换面板, acNormalEnd Sub7.6“供应商”窗体代码 “销售查询”按钮代码如下。Private Sub btn_query_Click()If

22、 IsNull(供应商编号) Or IsNull(txt_date1) Or IsNull(txt_date2) ThenMsgBox 您必须输入供应商编号、开始时间和截止时间。 txt_date1.SetFocus Else If (txt_date1 txt_date2) Then MsgBox 结束时间必须大于开始时间。 焦点移到第一个时间上 txt_date1.SetFocus Else 打开供应商销售的报表 DoCmd.OpenReport 供应商报表, acViewPreview, , , acWindowNormal End If End IfEnd Sub “返回”按钮代码如下

23、。Private Sub btn_return_Click() DoCmd.Close docmd.OpenForm 切换面板End Sub7.7“进货资料查询”窗体代码 “清除”按钮添加的代码如下。Option Compare DatabasePrivate Sub btn_clear_Click() On Error GoTo Err_btn_clear_Click Dim ctl As Control For Each ctl In Me.Controls Select Case ctl.ControlType Case acTextBox If ctl.Locked = False T

24、hen ctl.Value = Null Case acComboBox ctl.Value = Null End Select Next 取消子窗体查询和统计总数Me.进货资料查询子窗体.Form.Filter = Me.进货资料查询子窗体.Form.FilterOn = FalseExit_btn_clear_Click: Exit SubErr_btn_clear_Click: Exit Sub Resume Exit_btn_clear_ClickEnd Sub“查询”按钮的代码如下所示。Private Sub btn_query_Click() On Error GoTo Err_btn_query_Click Dim str As String 判断是否为空,建立查询条件 If Not IsNull(Me.Combo1) Then str = str & (供应商名称 like * & Me.Combo1 & *) AND E

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2