收藏 分销(赏)

印前管理系统.doc

上传人:精*** 文档编号:3910105 上传时间:2024-07-23 格式:DOC 页数:45 大小:946.54KB
下载 相关 举报
印前管理系统.doc_第1页
第1页 / 共45页
印前管理系统.doc_第2页
第2页 / 共45页
点击查看更多>>
资源描述
上海XXXX学院本科毕业论文 印前管理系统 班  级:XXXXXXXX 学 号:XXXXXXXX 学生姓名:XXXXXX 指导教师:XXXXX 上海XXXXXXXX学院 xxxxxx年xx月 印前管理系统 摘 要 印前是印刷前期中必不可少的一个环节,它对于印刷品的质量、生产周期起着非常重要的作用。长期以来,对于印前的管理都是手工或Excel记录,这种管理方式存在着许多缺陷,如:效率低、记录困难等,此外时间一长,将产生大量的文献和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻结识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对产品信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大等。这些优点可以极大地提高印前管理的效率,也是印刷公司的科学化、正规化管理,与世界接轨的重要条件。 印前管理系统涉及后台数据库的建立和前端应用程序的开发。本系统重要完毕对印前的管理,涉及工单管理,产量管理和员工管理三个方面。系统可以完毕对各类信息的浏览、查询、添加、删除、记录等功能。 系统采用Access来设计数据库,使用VB 6.0开发应用程序,它对数据库应用有着良好的支持。 [关键词:VB,数据库,印前、工单] Prepress Management System ABSTRACT Prepress is an essential pre-printed a link, it plays a very important role in print quality and the production lead time. For a long time, the management of the prepress are recorded manually or Excel, there are many drawbacks for this management style ,such as: low efficiency, statistical difficulties, and over time, will produce a large number of documents and data, it bring about many difficulties for search, updating and maintenance. With the continuous improvement of science and technology, computer science increasingly mature and people have a profound understanding with its powerful functions, it has entered the human society in various fields and is playing an important role day by day. As a part of the computer application, use computer to manage product information have incomparable advantages compare with the manual management. Such as, searches quick, find convenient, high security, storage capacity, and so on. These advantages can greatly improve the efficiency of prepress management, but also help printing enterprises manage more scientific and normalized, and an important condition connects to the world. Prepress management system including establish background database and develop front-end application . This system is main manage prepress dept, including three aspects production orders, output and staff management. System can be completed on all information browsing, inquiries, add, delete, statistical, and other functions. System using Access to design database, use Visual Basic 6.0 to develop applications, it have great support to database apply. [KEY WORDS:VB, DataBase, Prepress, Jobticket] 目 录 第1章、 绪论 - 4 - 1.1印前管理系统 - 4 - 第2章 数据库管理系统和开发工具 - 5 - 2.1 数据库管理系统 - 5 - 2.2 开发工具简介 - 5 - 第3章 印前管理系统设计分析 - 6 - 3.1应用需求分析 - 6 - 3.2系统功能模块划分 - 7 - 3.3 系统数据库设计 - 9 - 第4章 印前管理系统开发 - 13 - 4.1 “登录模块”具体设计 - 13 - 4.2 “主窗体”模块具体设计 - 14 - 4.3 各项子模块具体设计 - 15 - 第5章 系统总结 - 30 - 第1章、 绪论 1.1印前管理系统 印刷工艺繁多,印前的工作直接影响到后面各种工艺的实现,做好印前的管理工作等于为日后的其他印刷工艺打好了基础。最初的印前工作都是使用人工方式解决,管理粗放,已不能适应现在高效快速运作管理的需求,虽然已有专门针对印厂的ERP,但其印前管理模块往往非常简朴。正是印刷公司现代化管理的这种需求,使得印前管理计算机化成为也许。印刷公司印前管理系统就是使用电脑代替人工记录和查询,完毕印前信息的解决,同时使用电脑还可以安全地、完整地保存大量的工单记录。 第2章 数据库管理系统和开发工具 2.1 数据库管理系统 数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。DBMS是数据库系统的核心组成部分。对数据库的一切操作,涉及定义、更新及各种控制,都是通过DBMS进行的。DBMS总是基于某种数据模型,可以把DBMS当作是某种数据模型在计算机系统上的具体实现。根据数据模型的不同,DBMS可以提成层次型、网状型、关系型、面向对象型等。MS Access 2023就是一种关系型数据库管理系统。 关系模型重要是用二维表格结构表达实体集,用外键表达实体间联系。关系模型是由若干个关系模式组成的集合。关系模式相称于前面提到的记录类型,每个关系事实上是一张二维表格。关系模型和层次、网状模型的最大判别是用关键码而不是用指针导航数据,表格简朴用户易懂,编程时并不涉及存储结构,访问技术等细节。SQL语言是关系型数据库的标准化语言,已得到了广泛的应用。 2.2 开发工具简介 微软公司的Visual Basic 6.0是Windows应用程序开发工具,是目前最为广泛的、易学易用的面向对象的开发工具。Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运营效率和可靠性。因此,本系统使用MS Visual Basic 6.0开发。 第3章 印前管理系统设计分析 3.1应用需求分析 需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。理解就是对现实问题的理解,要弄清楚究竟需要解决什么问题。抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。需求分析阶段是软件产品生存命期中的一个重要阶段,其主线任务是拟定用户对软件系统的需求。所谓需求是指用户对软件的功能和性能的规定,就是用户希望软件能什么事情,完毕什么样的功能,达成什么性能。通常需求分为两种类型:一种是功能性需求,一种是非功能性需求,这一点也需要有一种清楚的结识。功能性需求是指需要计算机系统解决的问题,也就是对数据的解决规定,这是一类最重要的需求。非功能性需求是指实际使用环境所规定的需求,往往是一些限制规定,例如:性能规定,可靠性规定,安全保密规定,等等。 软件需求一般包含三个层次—业务需求、用户需求和功能需求,还涉及非功能需求。业务需求:反映了组织机构或客户对系统、产品高层次的目的规定,它们在项目视图与范围文档中予以说明。用户需求:描述了用户使用产品必须要完毕的任务和具有的功能,这在使用实例文档或方案脚本说明中予以说明。功能需求:定义了开发人员必须实现的软件功能,使得用户能完毕他们的任务,从而满足其业务需求。 3.2系统功能模块划分 开发这个系统的目的就是帮助印刷公司印前部门提高工作效率,实现印厂信息管理的系统化、规范化和自动化。真正实现公司高效、科学、现代化的员工管理。系统最终实现的重要功能如下。 ² 印前作业信息管理部分:涉及添加,查询等功能。 ² 印前生产进度管理部分:涉及生产进度,已完毕、未完毕作业的跟踪。 ² 记录部分:涉及PS版消耗记录,菲林耗用记录等。 ² 系统设定部分:涉及添加用户和修改密码。 系统的业务流程图如下: 系统的重要模块及E-R图如下: 3.3 系统数据库设计 数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。数据库设计的好与坏,直接影响到这个系统的运营效率。良好的数据库设计,可以提高数据信息的存储效率,保证数据信息的完整性和一致性。 针对印前管理系统的需求,通过对印前生产流程的分析,为本系统设计如下的数据项和数据结构: ·基本工单信息:涉及生产单号,产品代码,工单类别,产品类别,完毕尺寸,排版只数等。 ·其他工单信息:涉及入单时间,印前、车间、后工序复期,画稿完毕时间等。 ·耗材记录信息:涉及PS版、菲林等 ·生产状态跟踪:当前复期,未完毕工单查询等。 这里的数据库采用Access,用ADO作为连接数据对象。   1、建立Access 数据库 启动Access,建立一个空的数据库prepress.mdb,如图3.8所示。 图3.8 建立Jobticket表如图3.9: 图3.9 建立CSnameList表如图3.10下: 图3.10 建立Person表如图3.11: 图3.11 建立film表如图3.12: 图3.12 建立JobKind表如图3.13: 图3.14 建立PrePressStatlist表如图3.15: 图3.15 所需要的所有表的名称如图3.16: 图3.16 第4章 印前管理系统开发 4.1 “登录模块”具体设计 登录模块的具体设计重要是用户登录的一个界面,进入后将面对的是主界面,从而进行相关的操作。 登录的界面重要由用户名和密码的信息,尚有一些标题设立,拟定和取消的按钮组成。登录界面如图4.1: 图4.1 相关代码如下: Option Explicit Public LoginSucceeded As Boolean Private Sub cmdCancel_Click() End End Sub Private Sub cmdOK_Click() '判断用户是否为合法用户 Dim IsValid As Boolean If ConnDb() Then '数据库连接成功 '1、获得用户输入的用户名和密码 Dim strUserName, strPassword As String strUserName = Me.txtUserName.Text strPassword = Me.txtPassword.Text '2、判断密码的对的性 IsValid = ValidateUser(strUserName, strPassword) If IsValid Then Me.Hide mainform.Show Else MsgBox "用户密码不对的!", vbExclamation Or vbOKOnly, "错误" End If Else '数据库连接失败 MsgBox "连接数据库失败!", vbExclamation Or vbOKOnly, "错误" End If End Sub 4.2 “主窗体”模块具体设计 在这个项目中,选择使用多文档界面。使用这个窗体的好处是可以使程序更加有条理。对于一个多任务的应用程序,使用多文档窗体还可以减少占用的系统资源。 主窗体设计的界面是用菜单编辑器做的,重要由工单、生产状态、记录、系统设定和关于这五个大模块组成。主窗体是进行相关操作的主界面。在这几个里,管理员有所有的权利进行各种操作。 图4.2 4.3 各项子模块具体设计 4.3.1 选择“工单”——>“添加工单”输入相关的信息可以添加新的工单。界面如下: 图4.3 本界面的代码如下: Private Sub btnAdd_Click() If ConnDb() Then '数据库连接成功 '1、获得定单信息 '生产单号 Dim strJobTicketNo As String '产品代码 Dim strPNo As String '拼版只数 Dim strPageAmount As String '完毕尺寸 Dim strPSize As String '菲林张数 Dim strFilmNo As String '4KPS版张数 Dim str4KPS As String '8KPS版张数 Dim str8KPS As String '工单类别 Dim strJobKind As String '产品类别 Dim strPKind As String '跟单员 Dim strCSnameList As String '菲林大小 Dim strFilm As String '操作员 Dim strOPnameList As String '印前状态 Dim strPrePressStatList As String '急单 Dim IsEmergency As Boolean 'UV Dim IsUV As Boolean '丝网 Dim IsScreen As Boolean '烫电化铝 Dim IsFiol As Boolean '凹凸 Dim IsEmbossed As Boolean '刀版 Dim IsCut As Boolean '入单时间 Dim InComeDate As String '车间复期 Dim DemandedDate As String strJobTicketNo = Me.txtJobTicketNo.Text strPNo = Me.txtPNo.Text strPageAmount = Me.txtPageAmount.Text strPSize = Me.txtSize.Text strFilmNo = Me.txtFilmAmount str4KPS = Me.txtPS4Kamount str8KPS = Me.txtPS8Kamount strJobKind = Me.cbJobKind.Text strPKind = Me.cbPKind.Text strCSnameList = Me.cbCS strFilm = Me.cb4K8K strOPnameList = Me.cbOP strPrePressStatList = Me.cbStat IsEmergency = Me.chkIsEmergency IsUV = Me.chkUV IsScreen = Me.chkScreen IsFiol = Me.chkFiol IsEmbossed = Me.chkEmboss IsCut = Me.chkCutline strInComeDate = Me.DTPicker2.Value strDemandedDate = Me.DTPicker1.Value '2、添加定单信息 AddJobTicket strJobTicketNo, strPNo, strPageAmount, strPSize, strFilmNo, str4KPS, str8KPS, strJobKind, strPKind, strCSnameList, strFilm, strOPnameList, strPrePressStatList, IsEmergency, IsUV, IsScreen, IsFiol, IsEmbossed, IsCut, strInComeDate, strDemandedDate Else '数据库连接失败 MsgBox "连接数据库失败!", vbExclamation Or vbOKOnly, "错误" End If End Sub Private Sub btnCancel_Click() Me.Hide End Sub Private Sub Form_Load() InitJobKind InitPKind InitCSnameList InitFilm InitOPnameList InitPrePressStatList End Sub '初始化工单类型 Public Sub InitJobKind() '取得所有工单类型的SQL语句 sql = "SELECT * FROM JobKind" Set rs = GetRecordset(sql) '添加下拉项 If IsObject(rs) Then While Not rs.EOF cbJobKind.AddItem rs.Fields(1) rs.MoveNext Wend rs.Close Set rs = Nothing End If End Sub '初始化产品类型 Public Sub InitPKind() '取得所有产品类型的SQL语句 sql = "SELECT * FROM PKind" Set rp = GetRecordset(sql) '添加下拉项 If IsObject(rp) Then While Not rp.EOF cbPKind.AddItem rp.Fields(1) rp.MoveNext Wend rp.Close Set rp = Nothing End If End Sub '初始化跟单员 Public Sub InitCSnameList() '取得所有跟单员的SQL语句 sql = "SELECT * FROM CSnameList" Set r2 = GetRecordset(sql) '添加下拉项 If IsObject(r2) Then While Not r2.EOF cbCS.AddItem r2.Fields(1) r2.MoveNext Wend r2.Close Set r2 = Nothing End If End Sub '初始化菲林大小 Public Sub InitFilm() '取得所有菲林大小的SQL语句 sql = "SELECT * FROM Film" Set r3 = GetRecordset(sql) '添加下拉项 If IsObject(r3) Then While Not r3.EOF cb4K8K.AddItem r3.Fields(1) r3.MoveNext Wend r3.Close Set r3 = Nothing End If End Sub '初始化操作员 Public Sub InitOPnameList() '取得所有操作员的SQL语句 sql = "SELECT * FROM OPnameList" Set r4 = GetRecordset(sql) '添加下拉项 If IsObject(r4) Then While Not r4.EOF cbOP.AddItem r4.Fields(1) r4.MoveNext Wend r4.Close Set r4 = Nothing End If End Sub '初始化印前状态 Public Sub InitPrePressStatList() '取得所有印前状态的SQL语句 sql = "SELECT * FROM PrePressStatList" Set r5 = GetRecordset(sql) '添加下拉项 If IsObject(r5) Then While Not r5.EOF cbStat.AddItem r5.Fields(1) r5.MoveNext Wend r5.Close Set r5 = Nothing End If End Sub 4.3.2 选择“工单”——>“查询工单”选择查询方式,输入查询内容,可以进行工单的查询。如选中“模糊查询”则可以进行模糊查询,如图4.4 图4.4 本界面的代码如下: Option Explicit Private Sub Command1_click() Dim X As String If Text1.Text = "" Then MsgBox "请输入查询内容", vbInformation + vbOKOnly, "警告" Text1.SetFocus Exit Sub End If If Option1.Value = False And Option2.Value = False And Option3.Value = False Then MsgBox "请选择查询方式", vbInformation + vbOKOnly, "警告" Option1.Value = True Exit Sub End If If Option1.Value = True Then If Check1.Value = 0 Then X = "select * from JobTicket where 生产单号 in(" + "'" + Text1.Text + "')" Else X = "select * from JobTicket where 生产单号 like '%" & Text1.Text & "%'" End If End If If Option2.Value = True Then If Check1.Value = 0 Then X = "select * from JobTicket where 产品代码 in(" + "'" + Text1.Text + "')" Else X = "select * from JobTicket where 产品代码 like '%" & Text1.Text & "%'" End If End If If Option3.Value = True Then If Check1.Value = 0 Then X = "select * from JobTicket where 完毕尺寸 in(" + "'" + Text1.Text + "')" Else X = "select * from JobTicket where 完毕尺寸 like '%" & Text1.Text & "%'" End If End If Adodc1.CommandType = adCmdText Adodc1.RecordSource = X Adodc1.Refresh If Adodc1.Recordset.RecordCount <= 0 Then MsgBox "对不起没有你所需要的工单信息!", vbInformation + vbOKOnly, "信息" Text1.Text = "" Text1.SetFocus Exit Sub End If End Sub Private Sub DataGrid1_Click() DataGrid1.Col = 0 'MsgBox DataGrid1.Text End Sub Private Sub Form_Load() GetDbConnString Option1.Value = False Option2.Value = False Option3.Value = False Adodc1.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\prepress.mdb;" Adodc1.CursorLocation = adUseClient End Sub Private Sub Option1_Click() Label1.Caption = "按生产单号查询" End Sub Private Sub Option2_Click() Label1.Caption = "按产品代码查询" End Sub Private Sub Option3_Click() Label1.Caption = "按完毕尺寸查询" End Sub 4.3.3 进入“生产进度跟踪”模块,可以对选定期间段内的工单状态信息进行跟踪,如要选择查询结果中的某条记录,然后切换到“工单具体信息”便可查看其具体的条目。 图4.5 图4.5 本模块涉及代码如下: Private Sub Command1_click() Dim strSql As String Adodc1.CommandType = adCmdText Adodc1.RecordSource = "select 生产单号,产品代码,入单时间,车间复期 from JobTicket where 入单时间>= #" & DTPicker3.Value & "# and 入单时间 <= #" & DTPicker4.Value & "#" Adodc1.Refresh End Sub Private Sub DataGrid1_Click() DataGrid1.Col = 0 Dim rs As Recordset Dim strSql As String strSql = "select * from JobTicket where 生产单号='" & DataGrid1.Text & "'" Set rs = GetRecordset(strSql) If Not rs.EOF Then Text1.Text = rs.Fields(0) Text2.Text = rs.Fields(1) Text3.Text = rs.Fields(2) Text4.Text = rs.Fields(3) Text5.Text = rs.Fields(4) Text6.Text = rs.Fields(5) Text7.Text = rs.Fields(6) Text8.Text = rs.Fields(7) Text9.Text = rs.Fields(8) Text10.Text = rs.Fields(9) Text11.Text = rs.Fields(10) Text12.Text = rs.Fields(11) Text13.Text = rs.Fields(12) Text14.Text = rs.Fields(13) Text15.Text = rs.Fields(14) Text16.Text = rs.Fields(15) Else MsgBox "请选择日期!", vbExclamation Or vbOKOnly, "错误" End If End Sub Private Sub Form_Load() Adodc1.ConnectionString = GetDbConnString End Sub 4.3.4 选择“记录”——>“菲林记录”模块,可进行选定期间段内的耗材记录。 图4.6 本功能代码如下: Private Sub Command1_click() If ConnDb() Then Dim rs As Recordset Dim strSql As String strSql = "select * from JobTicket where 菲林大小 = '4K' and 入单时间>= #" & DTPicker1.Value & "# and 入单时间 <= #" & DTPicker2.Value & "#" Set rs = GetRecordset(strSql) If Not rs.EOF Then rs.MoveLast '指针移动到最后一项,以获得4K菲林量 Text1.Text = rs.RecordCount Else Text1.Text = "0" End If Set rs = Nothing strSql = "select * from JobTicket where 菲林大小 = '8K' and 入单时间>= #" & DTPicker1.Value & "# and 入单时间 <= #" & DTPicker2.Value & "#" Set rs = GetRecordset(strSql) If Not rs.EOF Then rs.MoveLast '指针移动到最后一项,以获得8K菲林量 Text2.Text = rs.RecordCount Else Text2.Text = "0" End If Set rs = Nothing End If End Sub 4.3.5 选择“系统设定”——>“用户管理”模块,可进行用户的添加和删除等工作。 图4.7 本功能代码如下: Option Explicit Private Sub cmdADD_click() If Text1.Text = "" Then
展开阅读全文

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


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

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

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

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

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

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

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

客服