神东公司采购寻源及供应商管理系统的设计与实现本课题研究旨在探索信息技术在采购工作中的应用,设计和开发出适合神东公司内部应用的采购寻源及供应商管理系统。
首先,基于需求调研,利用业务流程图和用例图完成了系统的业务流程和需求分析工作,在此基础上,通过对比不同技术架构,给出系统的技术架构方案,即系统开发框架采用三层结构,并给出了系统数据模型和数据表设计;然后,通过时序图描述了采购方案管理、采购寻源、合同管理、供应商管理四个功能模块的详细设计,其中重点讨论了采购方案创建、采购推荐子功能;最后,针对上述功能模块,给出了功能实现效果图和编码实现过程,同时,介绍了系统测试方法,验证了系统功能的正确性。
标签:采购寻源;技术;C# SQL Server 数据库1 概述进入21世纪以来,各类信息化软件的运用开始普遍,但仍然存在许多企业未运用信息化,或者是信息化程度较低。
企业在采购过程中,是否有系统化的软件进行跟踪管理是确保企业采购过程顺利进行的必要保障。
首先,在信息的共享方面,据调研,目前很多企业未能实现信息的多方共享,同时,企业的内部相关组织机构也不能够共享企业的信息,这使得每完成一项工作,都存在重复劳动,浪费人力和财力。
其次,企业在采购的过程中,没有系统的软件进行过程跟踪,采购人员往往需要花费大量的时间在手工记录跟踪信息上。
作为企业的领导人员,由于采购事务涉及到很多环节,也不能及时了解到采购的具体推进情况,影响企业的整体资金运转。
综上所述,考虑到神东煤炭集团公司作为一家煤炭生产型企业,针对该公司目前在采购管理与供应商管理方面的现状,探讨如何利用信息化的方式来实现采购的自动寻源以及高效的供应商管理,开发出一套适合公司内部应用的采购信息化系统,实现神东煤炭公司的采购与供应商管理工作的信息化。
2 需求分析经过对神东集团公司物料采购部门的深入调研,其采购工作的实际流程可以描述为:首先,公司计划部门根据生产管理部门传递来的生产计划,结合当前库存情况,拟定采购计划,采购部门制定采购方案并上报给采购主管审批,在采购方案审批通过后,委托招标公司招标,根据中标结果创建合同,完成采购业务。
从以上流程可以看出如下问题,首先,尽管企业已有生产管理信息化系统,但企业生产部门传递給采购部门的采购计划,都是通过纸质或电子报表的方式,这使得采购部门在制定采购方案时,需要消耗很多的时间;其次,采购方案要经过采购主管审批才能生效,这个审批过程并没有实现信息化操作,导致效率低下。
针对上述存在的问题,设计和开发采购寻源及供应商管理系统时,首先要集成企业的ERP管理系统,从该系统中自动获取采购计划信息以作为制定采购方案的依据;其次,要实现采购方案制定和审批的信息化处理;再次,针对供应商选择的问题,要研究自动推荐供应商的功能应用,节省采购人员挑选供应商的时间;最后,改变合同拟定通过手工完成的方式,实现采购结果自动回传、合同自动生成,在线提交审批,从而提高合同管理效率。
结合以上分析,采购寻源及供应商管理系统要实现的业务模块需要包括采购方案管理、采购寻源、订单及合同管理、供应商管理等。
针对每个功能模块,可以进一步划分若干子业务,完整的系统结构如图1所示。
2.1 采购方案管理业务采购分包创建是基于ERP系统提供的采购计划信息自动生成一个采购分包初稿,当采购分包生成后,采购员可以对采购分包进行采购方案创建操作,然后提交给采购部门主管审批,因此,采购方案管理包括三个子模块,分别是采购分包创建、采购方案创建、采购方案审批。
2.2 采购寻源业务采购寻源是指在采购工作中寻找到合适的供应商,为了达成这一目标,首先要发布采购需求,然后根据各个供应商的报价、产品情况,从中选择最为合适的供应商。
2.3 合同管理业务订单及合同管理要实现合同生成和审批、采购订单下达等基本操作。
2.4 供应商管理业务供应商是目标系统的参与用户,其基本信息是由供应商在目标系统注册时产生和阿里巴巴同步时获取。
为了使供应商信息更加完整,允许采购员对供应商信息进行补充操作。
3 系统设计3.1 系统技术方案目标系统在设计中采用的是三层架构模式,即在传统的二层基础上,独立出新的一层,即业务逻辑层,将整个应用划分成表示层、业务逻辑层和数据访问层,具体的系统的技术架构设计如图2所示。
三层架构的应用,其优势在于实现了各业务的逻辑独立,就系统而言,能有效增强系统的灵活性、可维护性、可扩展性;就系统开发而言,易于大型软件开发项目的分工,提高开发效率。
采购寻源及供应商管理系统的开发技术采用当前流行的和技术,数据库平台选择SQL Server数据库,编程语言选择C#语言。
3.2 数据库的设计在采购寻源及供应商管理系统中,涉及到的数据表主要有采购计划表、采购分包信息表、采购方案审批表、采购方案表、询价单信息表、合同信息表、合同样式表、合同样式定义表、合同审批信息表、采购订单表、物料信息表、供应商信息表。
在数据表设计阶段,要设计表的字段、字段类型和字段长度。
受篇幅限制,只给出系统购方案信息表设计结果。
如表1所示,该数据表用于存放采购分包基本信息,其中,采购分包编号为主键,对应采购计划为外键。
3.3 功能详细设计3.3.1 采购方案管理采购方案管理包含了采购分包创建、采购方案创建、采购方案审批、采购方案维护等子功能,其中,采购分包创建首先由系统根据采购计划,自动生成一个采购分包,然后由采购员对该分包进行完善,在确认创建后,再执行采购方案创建并提交审批操作。
采购方案审批是由采购主管进行的,在审批时,需要给出具体的审批意见,“通过”或“不通过”,然后才能开展采购的后续流程。
采购方案维护是指对采购方案进行修改、删除或查询操作。
采购分包创建数据是通过系统接口从企业现有的ERP系统中获得,存放在采购计划表。
采购分包需要将相同性质的采购标的归为一类,其操作的数据对象是采购分包信息表。
在执行采购分包创建时,从数据表提出数据进行运算,最终得出初步的采购分包,其流程如图3所示。
采购分包生成后,采购员可以内容进行修改,然后提交修改后的分包信息,这时表示层和业务逻辑层分别调用采购分包信息保存方法进行业务请求响应,最后,数据访问层完成分包信息插入操作,并将操作结果返回至业务逻辑层,并进一步传给表示层,表示层根据操作结果值,分别向客户端用户提示相应信息。
当采购分包创建好后,紧接着即进入采购方案的创建和审批阶段,采购方案的审批工作通常是由采购主管来完成,采购主管根据企业的实际情况确定是否给予审批。
3.3.2 采购寻源通过采购寻源,可以从众多供应商中找到最合适的供应商。
该模块包含四个子模块,分别是询价单发布、询价撤消、供应商报价、采购推荐。
由于采购寻源主要是基于IBS平台进行,在目标系统中不是常用模块,在此不做重点讨论。
3.3.3 合同管理合同管理包括合同生成、合同审批、合同维护等。
本节将重点探讨合同生成、合同审批这两个子功能的详细设计。
(1)合同生成提交合同生成提交指的是生成采购合同,并提交至对应的采购主管部门。
采购合同生成包括两个步骤,首先是调用采购合同的模板,将合同模板展示在页面,即加载合同模块;其次,获取用户输入的合同信息,将这些信息插入到合同信息表中。
合同模板加载执行的是数据读取操作,操作的数据对象是合同样式表和合同样式定义表。
(2)合同审批合同审批针对的是企业的采购主管,当采购合同提交至采购主管后,采购主管登录系统即可查看到需要审批的采购合同。
因此,合同审批在具体实现时包括两个步骤,首先是绑定未审批的合同信息,然后针对未审批合同执行审批操作。
合同审批操作的数据对象是合同审批信息表,执行的是数据插入操作,因此,合同审批功能流程可以描述为:采购主管选择待审批的合同记录,表示层获取选择的合同记录编号,然后调用业务逻辑層方法响应该请求,业务逻辑层根据合同编号调用数据访问层方法完成数据检索操作,并将数据绑定显示。
在采购主管给出具体审批意见后,表示层便调用审批意见录入方法,完成向合同审批信息表的数据插入操作,最终将审批意见反馈给采购员。
3.3.4 供应商管理供应商管理主要实现对供应商基本信息的维护,在采购寻源及供应商管理系统中,供应商信息来源于两个途径,一是通过供应商直接注册而成;二是从1688平台同步供应商信息。
供应商注册业务的主体就是供应商自身,通过系统提供的注册页面完成基本信息注册操作,从程序实现角度看,供应商注册实质是向供应商信息表执行数据插入操作。
供应商在注册页面提交注册业务请求后,表示层便获取供应商注册信息,然后进行数据校验,在数据校验通过后,业务逻辑层调用数据层的供应商信息录入方法执行对供应商信息表的数据插入操作,最后,表示层通过数据操作返回值向供应商用户提示相应信息。
在目标系统中,供应商信息还可从1688平台通过同步而获取的,其实现原理是从1688平台的数据接口读取供应商信息,然后将其插入到本地数据库的供应商信息表中。
4 系统实现4.1 采购方案管理采购方案管理主要实现采购方案分包创建、采购方案创建和维护、审批等主要功能,采购方案创建的实现界面如图4所示。
其中,采购方案编号为程序自动生成。
整个采购方案包括采购方案基本信息、创建人信息、招标人信息三部分,在填写相关信息后,点击提交审批按钮,事件即可触发。
采购方案创建从应用程序实现的角度看,是向采购方案信息表执行数据插入操作。
功能实现的表示层代码如下://响应业务请求事件protected void CreatePurPlan_Click(object sender,EventArgs e){… … …//获取页面输入值Model.plan thisPlan=new plan(); = TB_planName.Text.ToString();BLL.planBLL uB=new planBLL();//调用业务逻辑层方法if (uB.addPlan(thisPlan)){//根据数据库返回值向客户端输出业务操作结果Response.Write(“true”);}else{Response.Write(“false”);}}采购方案在提交之后,方案创建人可以查看采购方案的审批情况,在审批通过之前,采购方案处于不可修改状态。
功能实现的界面如图5所示。
采购方案审批查看的实现主要依赖采购方案信息表的状态字段,在采购方案创建时,该状态值默认写入0。
当采购员查看采购方案审批情况时,程序会读取该值,如果为0,则向用户提示,并置方案内容为不可编辑状态。
当采购员提交采购方案之后,采购主管可以在管理后台查看待审批的采购方案,并执行审批操作。
从程序实现角度看,采购方案审批是向采购方案审批表执行数据插入操作。
插入数据主要包括采购方案编号、审批人、审批结果、审批结果说明、审批时间等。