收藏 分销(赏)

企业生产及采购计划管理软件开发论文.docx

上传人:pc****0 文档编号:8759632 上传时间:2025-03-01 格式:DOCX 页数:39 大小:1.25MB 下载积分:10 金币
下载 相关 举报
企业生产及采购计划管理软件开发论文.docx_第1页
第1页 / 共39页
企业生产及采购计划管理软件开发论文.docx_第2页
第2页 / 共39页


点击查看更多>>
资源描述
xxxx 本科生毕业设计(论文) 学院(系): xxxx 专 业: xxxx 学 生: xxx 指导教师: xxxx 完成日期 2011 年 5 月 xxxxxxx xx 企业生产及采购计划管理软件开发 Development of Management Software Between Enterprise 's Manufacturing and Purchasing Plan 总 计: 37 页 表 格: 0 个 插 图: 24 幅 xxxx 企业生产及采购计划管理软件开发 Development of Management Software Between Enterprise 's Manufacturing and Purchasing Plan 学 院 (系): xxxx 专 业xxxxxxxxx 学 生 姓 名: xxxx 学 号: xxxxx 指导教师(职称): xxxx 评 阅 教 师: xxxx 完 成 日 期: xxxx xxxxx Nanyang Institute of Technology 企业生产及采购计划管理软件开发 xxxxxxxx [摘 要]生产和采购计划管理是企业生产管理的重要环节之一,也是把握市场需求,降低采购成本的主要环节[1]。目前,多数企业的生产和采购计划管理均处于分散的人工操作模式,各业务环节数据信息不能实时共享,工作效率低,导致企业市场反应速度较慢,不能满足当今市场快速变化的需求。 因此专门开发一套生产及采购计划管理软件,实现企业从生产计划、MRP运算到采购报表全过程的信息化管理。通过该软件的应用,可实现企业在此类业务环节的信息化集成,能够较好解决企业计划与采购部门间存在的信息孤岛问题,而且能够实现各部门间的数据信息共享。通过该软件可实现对大量产品生产数据的自动计算和汇总,速度快,效率高,不易出错[2]。同时能够实现采购报表随采购计划的调整进行自动更新,避免了重复性劳动。通过该软件可为企业的采购和生产计划部门搭建一个信息操作和共享平台。 [关键词]生产计划;采购计划;MRP;采购报表 Development of Management Software between Enterprise 's Manufacturing and Purchasing Plan Mechanical Design, Manufacturing and Automation Zhao Wen-tong Abstract: Manufacturing and purchasing plan is one of the most important link of enterprise production management, at the same time it is also a main link to grasp market demand, reduce purchasing cost. At present, most enterprise production and purchasing plan management are in artificial operation mode. Each business link can’t share data information real-timely, leading to working efficiency and enterprise market reaction slower. So it can’t satisfy the current rapid changing market needs. Therefore, it is necessary to develop a set of purchasing and production planning management software specially,so that it can realize the information management from production planning, MRP computing, to purchasing statements. With the application of this software, it can realize data information sharing among departments.It can also realize the automatic calculation and summarizing of the products with complex production data, which not easy makes mistakes but also quickly and with high efficiency. Meanwhile it can achieve automatic update the purchasing statements with the adjustment of purchasing plan ,which can avoid the repeated labor[4]. Through this software it can build a information operating and sharing platform between enterprise's purchasing and production planning department. Key words: Production plan; Purchasing plan; MRP; Purchasing Report 目 录 1 绪论 1 1.1 本课题研究背景及意义 1 1.2 ERP管理软件发展概况 1 1.3 论文的主要工作 1 2 软件简介 2 2.1 软件运行的软硬件环境 2 2.1.1 硬件环境 2 2.1.2 软件环境 2 2.2 软件开发关键技术 3 2. 2.1 Visual Basic 6.0 3 2. 2.2 数据库技术 3 2. 2.3 ADO技术 3 2.3 课题研究内容及技术要求 3 2.4 课题软件实现的功能 3 3 课题软件的设计与实现 4 3.1 软件操作流程 4 3.2 软件的功能模块简介 5 3.3 各功能模块的分析 6 3.4 导出当前产品物料清单及BOM单 6 3.4.1 账户管理 6 3.4.2 产品BOM管理 6 3.4.3 产品MRP计算 6 3.4.4 库存管理 7 3.4.5 采购预算 7 3.4.6 导出采购明细 7 3.4.7 关于软件的简单介绍 7 4 软件运行 8 4.1 用户登录模块 8 4.2 修改密码模块 11 4.3 生成BOM模块 11 4.4 生产计划模块 15 4.5 库存管理模块 20 4.6 采购预算模块 22 4.7 采购明细导出模块 27 4.8 关于软件介绍模块 30 结束语 31 参考文献 31 致谢 32 1 绪论 1.1 课题研究的背景及意义 本课题以河南陆德筑机有限公司生产计划及采购计划实际需求为背景,实现该公司从生产计划数据的输入,根据计划中各产品材料定额数据进行汇总和分析,最终自动生成针对当前生产计划的采购预算报表。通过该软件的应用,可实现企业在此类业务环节的信息化管理,能够妥善解决企业计划与采购部门间存在的信息孤岛问题,而且能够实现各部门间的数据信息共享,将原来繁琐的重复性劳动交由计算机自动完成,并且对大量数据的计算和汇总更加准确,速度快,效率高。同时能够实现数据的自动更新,如果生产计划需要调整,则能够很快生成最终的采购预算报表,为企业的采购部门和生产计划部门搭建一个信息操作和共享平台。 1.2 ERP管理软件发展概况 当今时代,在全球竞争激烈的大市场中,无论是流程式还是离散式的制造业,无论是单件生产、多品种小批量生产、少品种重复生产还是标准产品大量生产的制造;制造业内部管理都可能遇到以下一些问题:如企业可能拥有卓越的销售人员推销产品,但是生产线上的工人却没有办法如期交货,车间管理人员则抱怨说采购部门没有及时供应他们所需要的原料;实际上,采购部门的效率过高,仓库里囤积的某些材料10年都用不完,仓库库位饱和,资金周转很慢;许多公司要用6~13个星期的时间,才能计算出所需要的物料量,所以订货周期只能为6~13个星期;订货单和采购单上的日期和缺料单上的日期都不相同,没有一个是肯定的;财务部门不信赖仓库部门的数据,不以它来计算制造成本……不能否认,以上这些情况正是我们大多数企业目前所面临的一个严峻的问题,然而,针对这一现象,我们又能有什么有效的办法来解决它呢[5]? 本软件能够实现从生产计划数据的输入,根据计划中各产品材料定额数据进行汇总和分析,最终自动生成针对当前生产计划的采购预算报表,能够妥善解决企业计划与采购部门间存在的信息孤岛问题,而且能够实现各部门间的数据信息共享,将原来繁琐的重复性劳动交由计算机自动完成,并且对大量数据的计算和汇总更加准确,速度快,效率高。 1.3论文的主要工作 在本论文的设计初期,通过阅读大量的文献,提高对相关制作软件工具的熟悉及使用。由于软件的需要,也要学习数据库的操作及相关图纸明细的识别。然后对BOM即物料清单(Bill of Material)进行分析,计算能够很快生成最终的采购预算报表,在设计中期,主要是对产品零部件明细的校对。首先,物料清单表明了产品→部件→组件→零件→原材料之间的结构关系。然后根据生产计划计算出采购计划;其次,根据采购计划,利用MRP计算减去库存管理导出采购预算报表。在设计的后期,有两个任务:一是按照格式写论文,二是按照要求修改论文。 2 软件简介 本软件能够实现生产计划数据的输入,根据计划中各产品材料定额数据进行汇总和分析,最终自动生成针对当前生产计划的采购预算报表,能够妥善解决企业计划与采购部门间存在的信息孤岛问题,而且能够实现各部门间的数据信息共享。将原来繁琐的重复性劳动交由计算机自动完成,并且对大量数据的计算和汇总更加准确,速度快,效率高。同时能够实现数据的自动更新,如果生产计划需要调整,则能够很快生成最终的采购预算报表,为企业的采购部门和生产计划部门搭建一个信息操作和共享平台。 2.1 软件运行的软硬件环境 2.1.1 硬件环境 (1)普通PC机 (2)CPU:1.8GHz以上 (3)内存:1024MB (4)显卡:128M以上 (5)网卡:10/100/1000Mbps (6)PIII以上处理器 2.1.2 软件环境 (1)Windows2000、XP及以上操作系统 (2)Microsoft Excel 2003 (3)IDE环境:Microsoft Yisual Studio 2005 (4)支撑环境:Microsoft.NET Framework 2.0 (5)需求分析工具:Visio 2003 (6)数据库服务器:基于SQL Server2000 2.2 软件开发关键技术 2.2.1 Visual Basic 6.0 Visual Basic 6.0是Microsoft公司推出的基于Windows环境的一种面向对象的可视化编程环境,它强调直接以问题域(即现实世界)中的事物为中心来考虑和认识问题,并按照这些事物的本质特征把它们抽象为对象,作为软件系统的基础,将对象作为系统中最基本的运行实体,对象中封装了描述该对象的特殊属性(数据)和行为方式(方法)。整个程序即由各种不同类型的对象组成,各对象既是一个独立的实体,又可通过一定的方式相互作用。 Visual Basic 6.0易学易用、功能强大的特点使其得到了广泛的应用。其强大的可视化用户界面设计,是程序员从复杂的界面设计中解脱出来。Visual Basic 6.0不但可以开发小型单机数据库管理系统,而且也可以开发集多种应用程序于一体的网络数据库系统。因此使得Visual Basic 6.0成为目前使用最广泛的编程语言之一。 2.2.2 数据库技术 在当今信息社会中,信息已成为各个行业、部门的重要财富和资源,信息系统也越来越显示它的重要性。数据库技术是信息系统的核心和基础,它的准确性、快速性在信息时代占了很大的优势。 现存多种数据库系统,我们这里主要运用Access数据库系统,Visual Basic 6.0通过ADO技术与Access数据库相连,通过Visual Basic 6.0的前台管理Access的后台数据,实现信息的准确、快速管理。 2.2.3 ADO技术 ADO是一个用于存取数据源的组建,它为编程语言从数据库提取数据信息提供了一种方法,允许开发人员编写访问数据的代码而不用担心数据库是如何实现的,而只用关心到数据库的连接。ADO是对当前微软所支持的数据库进行操作的最有效和最简单直接的方法。 2.3课题研究内容及技术要求 本软件采用C/S开发模式和ADO数据库访问技术,采用Visual Basic编程语言Access数据库实现对生产计划数据的输入、材料定额数据的集成和相应采购预算的计算和自动生成等,实现企业生产计划和采购预算环节的有效集成。 2.4课题软件实现的功能 生产计划数据的手动输入;生产计划数据的自动导入;材料定额信息的有效集成;生产计划汇总及材料定额汇总;所需物料的库存分析;采购预算的自动汇总和生成 3课题软件的设计与实现 3.1 软件操作流程 软件操作流程如图3.1所示: 图3.1软件操作流程 本软件要根据数据库中信息自动导入软件,然后进行生产计划数据的手动输入,再根据材料定额信息的有效集成,生产计划汇总及材料定额汇总,所需物料的库存分析。通过该软件的应用,采购预算自动汇总和生成,减少了手工计算的工作量,提高了效率,大大降低了出错的概率,确保生产采购的有效性、实时性和准确性。 3.2 软件的功能模块简介 该软件以Visual Basic 6.0为开发语言,采用Access2003为数据库管理平台。该软件根据数据库中的信息直接导入BOM单,进而手动输入生产计划数据,再根据生产计划数据,库存数据价格库进行MRP自动核算,从而导出采购预算提高了生产率、库存利用率、降低了出错率、生产成本。其功能框图如图3.2所示。 各功能模块简要描述如下: (1) 登录模块:主要用于用户的管理。 (2) 修改密码模块:主要用于用户密码的修改。 (3) 自动导入BOM单:得出产品明细相关数据。BOM表直接由软件自动生产,无需再人工参与,提高了企业的效率,也降低了出错率。 (4) 手动输入生产计划数据,根据市场需求确定生产计划。无需再人工参与,提高了企业的效率,也降低了出错率。 (5) 利用MRP的自动计算生成采购计划预算,采购管理模块:实现企业采购管理的及时更新,增大库存利用率,降低成本。 图3.2 软件功能模块 (6) 去除库存既得的采购计划明细。MRP的计算基于BOM表自动进行的, (7) 导出明细模块:将生成的信息导入Excel中,便于企业人员阅读。 (8) 关于软件介绍模块:介绍软件的一些基本信息。 3.3 各功能模块的分析 3.3.1账户管理 该模块主要是为系统提供安全保证,系统默认用户库的用户名和密码。该模块的功能包括用户登录和密码修改。其功能框图如图4.3所示: 图3.3 账户管理模块 3.3.2 产品BOM管理 该模块主要是根据Access数据库中产品的代码、名称、规格型号等信息利用Visual Basic 6.0编程语言使其自动生成产品的物料清单(BOM)。 3.3.3 产品MRP计算 该模块主要根据生产计划,由BOM表得出一套产品有那些零部件,半成品组装而成,更进一步的计算出要生产的产品需要的零部件采购计划依据库存量,便于计算出采购计划。该模块的功能包括MRP计算、MRP清除、MRP保存。其功能框图如图4.4所示: 图3.4 MRP模块 3.3.4库存管理 该模块主要是使Access数据库中的零部件,半成品信息通过Visual Basic 6.0编程使其在前台显示,而且当前台库存数量修改时后台也能跟着改变。该模块的功能包括库存量的修改和库存量的删除。其功能框图如图4.5所示: 图3.5库存管理模块 3.3.5 采购预算 该模块主要根据生产计划和库存量的信息,通过Visual Basic 6.0编程实现采购预算并进行保存,而且当库存量信息改变时采购信息也跟着变。该模块的功能包括采购预算和采购单保存。其功能框图如图4.6所示: 图3.6 采购预算模块 3.3.6 导出采购明细 该模块通过Visual Basic 6.0编程使前面生成的信息能导出到Excel表格中,便于企业人员阅读分析产品信息。 3.3.7 关于软件的简单介绍 该模块主要使用Visual Basic 6.0中的一些简单控件使关于该软件的一些简单信息显示给用户。 4软件运行 软件运行演示,在运行中需要输入的数据, 4.1 用户登录模块 双击桌面上的“企业生产及采购计划管理软件开发”图标,进入软件系统前需要首先进行身份认证,弹出“用户登录”窗口,如图4.1所示: 图4.1 用户登陆窗口 在上图中输入正确的账号和密码,单击“确定”按钮进入软件的主界面,如图4.2所示: 图4.2 软件主界面 用户登录模块的主要代码如下: Private Sub cmdCancel_Click() '设置全局变量为 false '不提示失败的登录 LoginSucceeded = False Unload Me End Sub Private Sub cmdOK_Click() Dim rs As New ADODB.Recordset Dim sql As String Dim i As Integer sql = "Select * From 用户表 where 账号 ='" & Me.txtUserName & "' and 密码 ='" & Me.txtPassword & "'" rs.Open sql, Conn, adOpenForwardOnly, adLockReadOnly If Not rs.EOF Then CurrUserID = rs("ID") CurrUserName = Me.txtUserName CurrUserPwd = Me.txtPassword LoginState = True Unload Me: MDIForm1.Show '使mdiform1主窗口菜单和工具栏按钮有效 MDIForm1.Toolbar1.Buttons(1).Visible = True For i = 2 To 6 MDIForm1.Toolbar1.Buttons(i).Enabled = True Next Else MsgBox "用户名或密码错误,请重新输入。", vbOKOnly, "用户登录" LoginState = False End If End Sub Public Function MyXor(str1 As String) Dim i As Integer Dim one As String, newstr As String For i = 1 To Len(str1) newstr = newstr & Chr$(Asc(Mid(str1, i, 1)) Xor &H3) Next MyXor = newstr End Function[6] 4.2 修改密码模块 在图4.2中单击软件主菜单中的“用户”→“修改密码”菜单项,然后弹出“用户账号密码修改”窗口,如图4.3所示: 图4.3 用户帐号密码修改窗口 在图4.3中用户可以修改自己的密码,输入要修改的密码,再确认一遍,单击“确定”即可,可以保证用户的安全性。 修改密码模块主要代码如下: If Me.txtUserName = "" Then MsgBox "账号不能为空。", vbOKOnly, "信息修改": Exit Sub If Me.txtPwd <> Me.txtPwd2 Then MsgBox "两次密码输入不一致。", vbOKOnly, "信息修改": Exit Sub CurrUserName = Me.txtUserName CurrUserPwd = Me.txtPwd Conn.Execute "Update 用户表 Set 账号='" & Me.txtUserName & "',密码='" & Me.txtPwd & "' Where ID=" & CurrUserID MsgBox "帐号修改成功。", vbOKOnly, "帐号修改"[7] 4.3 生成BOM模块 在图4.2中单击软件主菜单中的“产品信息”→“BOM管理”菜单项 ,或单击标准工具栏中的“产品信息”按钮,软件调出“BOM”窗口,如图4.4所示: 图4.4 产品装配明细管理窗口 在图4.4中,点击产品BOM组中各项,在BOM单和当前BOM两个表中显示相应的信息,从中可以清晰的看出产品的详细情况,能很容易的看出产品所需的材料的代码、名称、规格型号等各项信息,还能一目了然的看出产品构件的上下级关系,举例如图4.5所示: 图4.5 产品装配明细管理窗口 生成BOM模块主要代码如下: 1、Private Sub Cmd_Save_Click() On Error GoTo Err_Cmd_Save_Click Dim NewCode As Boolean NewCode = False If Me.ListView3.SelectedItem Is Nothing Then Exit Sub If CurrCodeFromK3 Then NewCode = False sql = "Update 组别表图纸BOM Set 名称='" & Me.txt名称 & "',规格型号='" & Me.txt规格 & "',序号=" & Val(Me.txt序号) & ",单位='" & Me.txt单位 & "',数量='" & _ Me.txt数量 & "',工位='" & Me.txt工位 & "',仓库代码='" & Me.txt仓库代码 & "',仓库='" & Me.txt仓库 & "',备注='" & Me.txt备注 & "' Where ID =" & Me.ListView3.SelectedItem.Tag Conn.Execute sql ListView3.SelectedItem.Text = Me.txt序号 ListView3.SelectedItem.SubItems(1) = Me.txt代码 ListView3.SelectedItem.SubItems(2) = Me.txt名称 ListView3.SelectedItem.SubItems(3) = Me.txt规格 ListView3.SelectedItem.SubItems(4) = Me.txt单位 ListView3.SelectedItem.SubItems(5) = Me.txt数量 ListView3.SelectedItem.SubItems(6) = Me.txt仓库 ListView3.SelectedItem.SubItems(7) = Me.txt仓库代码 ListView3.SelectedItem.SubItems(8) = Me.txt工位 ListView3.SelectedItem.SubItems(9) = Me.txt备注 Exit Sub Err_Cmd_Save_Click: MsgBox Err.Description End Sub XXXX 2、物料代码如下: Private Sub Cmd_SaveBOMNum_Click() On Error GoTo Err_Cmd_SaveBOMNum_Click If txtBOM名称 = "" Then MsgBox "BOM名称不能为空。", vbOKOnly, "信息提示": Exit Sub If txtBOM代码 = "" Then MsgBox "BOM代码不能为空。", vbOKOnly, "信息提示": Exit Sub If txtBOM代码.Tag = txtBOM代码 And txtBOM名称.Tag = txtBOM名称 Then Exit Sub If Me.txtBOM名称.Tag <> Me.txtBOM名称 Then sql = "Update 组别表K3物料 set 物料名称='" & Me.txtBOM名称 & "' Where ID =" & Me.ListViewBOM.SelectedItem.Tag Conn.Execute sql Me.ListViewBOM.SelectedItem.SubItems(2) = Me.txtBOM名称 Me.txtBOM名称.Tag = Me.txtBOM名称 End If '如果物料代码不存在,则提示需在 K3 中创建 If txtBOM代码.Tag <> txtBOM代码 Then sql = "Update 组别表K3物料 set 代码='" & Me.txtBOM代码 & "' Where ID =" & Me.ListViewBOM.SelectedItem.Tag Conn.Execute sql Me.ListViewBOM.SelectedItem.SubItems(1) = Me.txtBOM代码 Me.txtBOM代码.Tag = Me.txtBOM代码 End If Exit Sub Err_Cmd_SaveBOMNum_Click: MsgBox Err.Description End Sub[9] 3、组别名称修改代码如下: Private Sub Cmd_SaveGroupInfo_Click() On Error GoTo Err_Cmd_SaveGroupInfo_Click If txt组别代码 = "" Then MsgBox "组别代码不能为空。", vbOKOnly, "信息提示": Exit Sub If txt组别名称 = "" Then MsgBox "组别名称不能为空。", vbOKOnly, "信息提示": Exit Sub If txt组别代码.Tag = txt组别代码 And txt组别名称.Tag = txt组别名称 Then Exit Sub If txt组别代码.Tag <> txt组别代码 Then '如果组别代码进行修改,则判断其有效性。 '首先判断新组别代码 在 本地 组别表K3 是否存在 If rst.State Then rst.Close rst.Open "Select ID From 组别表K3 where 组别代码1 ='" & Me.txt组别代码 & "'", Conn, adOpenForwardOnly, adLockReadOnly If Not rst.EOF Then MsgBox "组别代码:" & txt组别代码 & vbCrLf & " 在本地组别中已经存在,请进行修改。", vbOKOnly, "信息提示": Exit Sub sql = "Update 组别表K3 set 组别代码1 ='" & txt组别代码 & "' Where 组别代码 ='" & Me.TreeView1.SelectedItem.Tag & "'" Conn.Execute sql '更改当前节点的text属性值 Me.TreeView1.SelectedItem.Text = txt组别代码 & "(" & txt组别名称 & ")" Me.TreeView1.SelectedItem.Key = txt组别代码 txt组别代码.Tag = txt组别代码 End If If txt组别名称.Tag <> txt组别名称 Then '更新关联 字段只有 一个 物料 ,则 更新其 代号 和物料名称 If Me.ListViewBOM.ListItems.Count = 1 Then Set Me.ListViewBOM.SelectedItem = Me.ListViewBOM.ListItems(1) sql = "Update 组别表K3物料 set 物料名称 ='" & txt组别名称 & "' Where ID=" & Me.ListViewBOM.SelectedItem.Tag Conn.Execute sql Me.ListViewBOM.SelectedItem.SubItems(2) = txt组别名称 txtBOM名称 = txt组别名称 End If '更改当前节点的text属性值 Conn.Execute "Update 组别表K3 set 组别名称 ='" & txt组别名称 & "' Where 组别代码 ='" & Me.TreeView1.SelectedItem.Tag & "'" Me.TreeView1.SelectedItem.Text = txt组别代码 & "(" & txt组别名称 & ")" txt组别名称.Tag = txt组别名称 End If Exit Sub 4.4 生产计划模块 在图4.2中单击软件主菜单中的“计划管理”→“生产计划”菜单项,或单击标准工具栏中的“生产计划”按钮,就能看到关于MRP的界面,如图4.6所示: 图4.6 产品生产计划窗口 在图4.6中,单击“生产计划”按钮,就可以手动在批次输入“2011年第一季度”计划数量2,交货日期2011.5。得出生产该产品所需的材料的代码、名称、规格型号、数量等信息,关键是能得出出所需各种材料,便于后续的采购预算。 先在“BOM组”选中“ LBQ500型强拌”,然后单击“采购计划“如图4.7所示: 图4.7 产品采购计划窗口 然后单击“计划汇总”按钮,会弹出如图4.8所示的窗口,单击“确定”就显示计划该批次:2011年第一季度汇总完成。 图4.8 采购计划确认窗口 采购计划模块主要代码如下: Private Sub Cmd_KouChuStock_Click() On Error GoTo Err_Cmd_KouChuStock_Click Dim rs As New ADODB.Recordset Dim rst As New ADODB.Recordset Dim CurrPiCiID As Long Dim ItemX As ListItem If Me.LVJiHuaDetail.ListItems.Count < 1 Then MsgBox "请首先选择一个扣除库存的批次。", vbOKOnly, "扣除库存提示": Exit Sub CurrPiCiID = Me.ListView1.SelectedItem.Tag '判断当前计划是否已经进行了批次 汇总 If rs.State Then rs.Close rs.Open "Select * From 计划批次 Where ID=" & CurrPiCiID, Conn, adOpenForwardOnly, adLockReadOnly If Not rs("IsSum") Then MsgBox "当前批次:" & Me.ListView1.SelectedItem.Text & " 还没有进行了计划汇总,请进行计划汇总。", vbOKOnly, "批次扣除库存提示" Exit Sub End If '判断当前计划是否已经进行了批次 扣除库存 If rs("IsKouChu") Then If MsgBox("当前批次:" & Me.ListView1.SelectedItem.Text & " 已经进行了扣除库存操作,是否重新扣除库存?", vbYesNo + vbDefaultButton2 + vbQuestion, "扣除库存确认") = vbNo Then Exit Sub End If sql = "Select * from 计划批次MRP汇总 Where 批次ID=" & CurrPiCiID If rs.State Then rs.Close rs.Open sql, Conn, adOpenDynamic, adLockOptimistic While Not rs.EOF '查找改项BOM在库存中是否存在 If rst.State Then rst.Close rst.Open "Select ID,库存 From K3物料库存表 Where 代码 ='" & rs("代码") & "'", Conn, adOpenForwardOnly, adLockReadOnly If Not rst.EOF Then '判断库存数量 和 计划 数量 大小关系 If rs("数量") > rst("库存") Then '删除库存项目,计划项目做相应修改 rs("数量") = rs("数量") - rst("库存") rs.Update Conn.Execute "Delete From K3物料库存表 Where ID =" & rst("ID")
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 管理财经 > 管理学资料

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服