制作一个备件管理数据库,设计要达到的功能:

  1. 入库: ①单个备件入库。按待入库件的名称和规格,查询备件库内是否存在该备件,如果存在,则点击入库后,备件库中该型备件数量增加一个入库的数量;如果不存在,则添加新的备件信息行。入库操作的同时,记录这次入库操作的相关信息到入库登记表内,以备核查。②按采购申请单批量入库,按采购单号调出采购申请单中的一批备件,逐一选中并执行像单个入库一样的入库操作。
    2.出库。出库只能一个一个地执行。按备件名称和规格,在库中查找到要出库件,然后点击出库按钮,出库后库内数量自动减去出库量,同时把出库信息登记到出库信息记录表内。出库数量大于库存量,会报错提示库存量不足。出库后,若库存量小于安全库存量,则把该备件信息登记到待采购登记表里。工程师登录系统时,自动弹出对话框,询问是否处理待采购事宜。
  2. 工程师登录系统时,若有待采购提醒,并选择受理,系统自动打开待采购事宜受理窗体,查看自己责任区域的待采购项,然后双击选中的备件,则该备件自动添加到采购申请窗体里的购物车内,以方便处理采购申请。
  3. 系统登录时,按职务不同,自动选择有权限打开的窗体。
  4. 为避免出入库操作出现误操作,执行出入库操作的前后,都设置系统提醒。


Private Sub CmdChuku_Click()
On erro GoTo Err_CmdChuku_ClickDim Rs1 As ADODB.RecordsetDim Rs2 As ADODB.RecordsetDim Rs3 As ADODB.RecordsetSet Rs1 = New ADODB.RecordsetSet Rs2 = New ADODB.RecordsetSet Rs3 = New ADODB.RecordsetDim strTemp As StringDim rsCnt As IntegerIf Me.品名 = "" ThenMsgBox "执行出库前,请在品名文本框输入内容"Me.品名.SetFocusExit SubEnd IfIf Me.用途 = "" ThenMsgBox "执行出库前,请在用途文本框输入内容"Me.用途.SetFocusExit SubEnd IfIf Me.数量 = "" ThenMsgBox "执行出库前,请在数量文本框输入内容"Me.数量.SetFocusExit SubEnd IfIf Me.费用中心 = "" ThenMsgBox "执行出库前,请在费用中心文本框选择内容"Me.费用中心.SetFocusExit SubEnd IfIf Me.单价 = "" ThenMsgBox "执行出库前,请在单价文本框输入内容"Me.单价.SetFocusExit SubEnd IfIf Me.日期 = "" ThenMsgBox "执行出库前,请在出入库日期文本框输入内容"Me.日期.SetFocusExit SubEnd IfIf Me.记录者 = "" ThenMsgBox "执行出库前,请在记录者文本框输入内容"Me.记录者.SetFocusExit SubEnd IfIf MsgBox("请确认备件品名、规格和数量信息,并确认要执行出库吗?", vbInformation + vbYesNo, "重要提示") = vbNo Then Exit SubstrTemp = "Select * From K_专用备件清单"Rs1.Open strTemp, CurrentProject.Connection, adOpenKeyset, adLockOptimisticRs1.MoveFirstcunzai = FalseFor i = 0 To Rs1.RecordCount - 1If Rs1("品名") = Me.品名 And Rs1("规格") = Me.规格 Thencunzai = TrueIf Rs1("数量") < Me.数量 ThenMsgBox "实际库存量为" & Rs1("数量") & ",不满足你填写的出库数量", vbCritical, "请确认出库数量"Me.数量.SetFocusExit SubEnd IfRs1("数量") = Rs1("数量") - Me.数量Rs1("最后出库日期") = Me.日期Rs1.UpdateIf Rs1("数量") < Rs1("安全库存量") ThenMsgBox "本次出库后,备件库存量已经不足,请提醒工程师进行采购", vbCritical, "重要提醒"'打开代采购登记表,登录库存不足的备件的型号、规格、品牌、费用中心、用途等信息strTemp = "Select * From K_专用备件等待采购登记表"Rs3.Open strTemp, CurrentProject.Connection, adOpenKeyset, adLockOptimisticRs3.AddNewRs3("备件ID") = Rs1("备件ID")Rs3("品名") = Rs1("品名")Rs3("规格") = Rs1("规格")Rs3("品牌") = Rs1("品牌")Rs3("用途") = Rs1("用途")Rs3("费用中心") = Rs1("费用中心")Rs3("登记日期") = Me.日期Rs3("记录者") = Me.记录者Rs3("是否受理") = FalseRs3.UpdateRs3.CloseSet Rs3 = NothingEnd Ifi = Rs1.RecordCountElseRs1.MoveNextEnd IfNextIf cunzai = False ThenMsgBox "备件库中没有你选择的备件,请核对备件品名和规格", vbInformation, "提醒!"Exit SubEnd If'登记到专用备件出库登记表内strTemp = "Select * From K_专用备件出库登记"Rs2.Open strTemp, CurrentProject.Connection, adOpenKeyset, adLockOptimisticRs2.AddNewRs2("备件ID") = Rs1("备件ID")Rs2("品名") = Rs1("品名")Rs2("规格") = Rs1("规格")Rs2("品牌") = Rs1("品牌")Rs2("用途") = Rs1("用途")Rs2("费用中心") = Rs1("费用中心")Rs2("出库数量") = Me.数量Rs2("单价") = Rs1("单价")Rs2("总价") = Rs2("出库数量") * Rs2("单价")Rs2("出库日期") = Me.日期Rs2("记录者") = Me.记录者Rs2.UpdateRs1.CloseRs2.CloseSet Rs1 = NothingSet Rs2 = NothingMsgBox "出库操作已经完成!", vbInformation, "提示"
Exit_CmdChuku_Click:Exit Sub
Err_CmdChuku_Click:MsgBox Err.DescriptionResume Exit_CmdChuku_Click
End Sub

ACCESS备件库管理数据库相关推荐

  1. ACCESS备件管理数据库分类出入库改进

    需要解决的问题: 原本计划只针对设备专用备件进行入库登记,实际操作中,发现部门采购的所有物品都需要进行收货及入库登记.原来开发的模块无法实现新的需求. 解决方案: 在后台数据库文件中新增一张通用备件库 ...

  2. java用cmd编译access数据库_java直接存取MS Access的mdb数据库文件

    jdbc 访问 access 的 mdb 数据库文件,使用一个叫ucanaccess的开发包实现这个功能. "Supported Access formats: 2000,2002/2003 ...

  3. asp通用数据库连接类 access mssql mysql_asp.net 连接mssql mysql access Excel 2007数据库

    asp教程.net 连接mssql mysql教程 access  excel 2007数据库教程 本文章收藏了了一款asp.net教程 连接mssql mysql access  excel 200 ...

  4. 用Access作为后台数据库支撑,书写一个C#写入记录的案例

    要想操作一个数据库,不论是那种操作,首先要做的肯定是打开数据库. 下面我们以ACCESS数据库来做例子说明如何打开一个数据库连接!   在这里我们需要用到的是: System.Data.OleDb.O ...

  5. 数据库access和mysql_数据库access和MYSQL有什么区别?

    acess是文件型数据库,MySQL是服务器型数据库. 文件型数据库又可称之为嵌入式数据库,它只能单机访问,不需要额外的独立进程,占用资源相对较少. 服务器型数据库可以通过IP地址跨主机运行,需要额外 ...

  6. asp删除mysql_asp php 清空access mysql mssql数据库的代码

    1.ASP清空ACCESS Dim Rs,Conn Set Conn=Server.CreateObject("Adodb.Connection") Conn.Open " ...

  7. access mysql oracle数据库_Oracle Access 数据库连接 使用

    直接代码吧: /// /// Oracle数据库连接 /// /// 数据库连接串,例如:(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP ...

  8. 怎样把ACCESS导入SQL数据库

    很多朋友想用SQL2000数据库的编程方法,但是却又苦于自己是学ACCESS的,对SQL只是一点点的了解而已,这里我给大家提供以下参考---将ACCESS转化成SQL2000的方法和注意事项 一,首先 ...

  9. access查询mysql_Access数据库 如何创建查询

    Access为我们提供了几种不同类型的查询,主要分为两大类:选择查询和操作查询 选择查询 点击"创建"选项卡的查询设计: 关闭单击右键"SQL视图" 写查询语句 ...

最新文章

  1. 如何在CPU上优化GEMM矩阵乘法
  2. 循环IRNNv2Layer实现
  3. sqlserver2000导出脚本和导出数据
  4. 关闭PdfReader右侧工具栏的方法
  5. iOS学习7:iOS沙盒(sandBox)机制(一)之获取沙盒路径及目录说明(转)
  6. C#6.0中$的用法
  7. java 井字棋 人机_井字游戏 人机对战 java实现
  8. 信息与数据科学国际会议征文通知
  9. python join_Python中join()方法的用法
  10. k8s相关面试问题_最常被问到的20道Kubernetes面试题
  11. 【linux笔记】常用命令(2)目录
  12. 操作系统 读者-写者问题
  13. 精品小程序小游戏代码集合(持续更新中)
  14. 如果小米开放购买会怎么样?
  15. 2021年新高考八省联考成绩查询江苏省,江苏2021八省联考分数线、位次汇总-附江苏新高考改革方案解读...
  16. 数字IC设计——跨时钟域篇1(时钟域)
  17. 2022-6-13 咒语和药水的成功对数,替换字符后匹配,统计得分小于 K 的子数组数目,......
  18. 整理了30款Python小游戏附源码,五一有的玩了
  19. CSS设置元素隐藏显示透明度
  20. git常见的命令大全

热门文章

  1. Java实现 kiosk模式,java – 使用“kiosk模式”创建Phonegap应用程序
  2. 搜狗输入法5.0正式版发布 首创云计算输入
  3. 如何利用 Python 批量合并 Excel?
  4. ElasticSearch 倒排索引(Inverted Index)| 什么是倒排索引?
  5. Sudoku Killer(搜索)
  6. 解决 错误: 在类XXX中找不到 main 方法, 请将 main 方法定义为: public static void main(String[] args) 否则 JavaFX 应用程序类
  7. 杭电ACM 2000-2099 100道题 详细解题报告出炉
  8. 旅游网站首页——html
  9. Problem A: 零起点学算法93——矩阵转置
  10. 入学吉他选购,有哪些适合初学者入门的吉他品牌推荐?