《ERP在制品管理系统(共55页).doc》由会员分享,可在线阅读,更多相关《ERP在制品管理系统(共55页).doc(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上摘 要流程式产业(process manufacturing)如石化业(如燃料油品、塑料原料等)、流程式电子业(如晶圆制造、导线架制造、IC封装等)、塑料橡胶制品业(如精密橡胶材料、环氧树脂等)及金属制品业(如精密铸造、铝镁合金压铸及加工等)等,依其生产作业方式可区分为连续式生产(continuous production)及间歇式生产(intermittent production)。前者如石化业,投入及产出在制造上连续,生产设备相当自动化,而且不同产品种类少(有时有副产品产出)、产量大而设备专用,且多为计划生产;后者如流程式电子及金属制品业,一般而言产品种类多而且
2、设备共享性高(因此换产品生产时会有所谓准备作业出现),计划及接单生产兼而有之。 对于连续式生产的流程式产业,通常会使用自动化的控制系统,如DCS(Distributed Control System),生产管理着重在整体生产设备及控制系统的维护和对原料的掌握;至于间歇式生产的流程式产业,一般而言制程多而复杂,但用料相对单纯,其生产管理的要点在于制程的控管,包括生产进度、制程条件控制、良率、品质问题追踪,以及绩效等;本章介绍的系统乃针对间歇式生产的流程式产业。 流程式产业所需要的生产管理信息系统,有别于一般专为装配型产业开发的软件,因其生产管理信息系统的核心是在制品管理系统(或称现场管理系统、W
3、IP系统),做法是使用一张流程卡(run card,或称随物单、移传传票等)对应在制造现场流动的个别生产及移传单位(生产的子批,sub-lot),做追踪管理。间歇式生产的流程式产业,是否有使用材料需求计划(MRP)系统的要求,要看其材料及半产品的需求形态,如为连续性且共享性非常高者,一般不需要使用MRP做计划工具;反之,若需求形态是非连续性且共享性较低者,则需搭配使用MRP做计划工具。笔者过去见过数例子以装配式生产的软件架构硬套在流程式产业身上,结果当然是失败的。另外,读者也应该注意,欲使用独立于ERP系统外的在制品管理系统,我们一定要小心评估在制品管理系统及ERP系统的结合性,例如,如何共享
4、件号、制程、BOM,甚至用户文件等基本资料,如何做资料、半成品及完成库存管理及计算机成本等。一个理想的在制品管理系统,其流程卡应可使用条形码(Bar Code)搜集制程资料,并提供模具管理、异常状况管理(尤其要能适应多变的生产环境,例如在拆批、并批、重工等需要较多弹性的问题处理上)、多种流程卡生产方式及规则、多种流程卡回报计量单位等功能,并搭配签核流程、工令管理、库存管理、采购管理、外包管理(特别是制程中有固定外包作业时)、品质管理、成本管理及配销、财务等系统,如此才可以算是完整的流程式产业ERP系统。企业资源规划 Enterprise resource plans流程 process管理系统
5、Management system制造系统Create system存储过程Memory processDevelopment of Robot systemsThe development of robot system is formed with three-generation robots which have different functions and intelligence. The first-generation robots with little computer power is used abroad today. Its majority of future
6、applications is in material handling, quality control. The addition of a relatively computer processor to robot lead to a second-generation with enhanced capabilities. Major applications of second-generation robots include spot welding, paint spraying, arc welding and some assembly. Some simple sens
7、ors, such as force , torque, can be integrated into the robot system. Third-generation robot systems have introduced and researched in the past few years, but their full potential will not be realized and exploited for many years. A typical third-generation robot system includes a separate low-level
8、 processor for each degree of freedom, and a master computer supervising and coordinating these processors as well as providing higher-level function. It is possible to perform all the functions listed with a single computer.一 系统概述自从国外大型软件公司如SAP或Oracle等大举进军国内市场以来,就有不少人被大量的专有名词弄得晕头转向.例如:什么是制造资源(manuf
9、acturing resources)?什么是制造资源规划(MRP, manufacturing resources management)?什么是企业资源规划(ERP,enterprise resources planning)?什么是整合资源管理(IRM,integrated resources managemnet)?要了解这些名词,最好的方法就是遵照世界公认的标准APICS辞典的定义。资源:它大概就包括材料、人力、设备、资金和资料,及4MID。企业资源规划:是一个管理信息系统,它所处理的对象就是资料,也就是材料、设备、人力和资金的资料。整合资源管理:有效地识别、规划、排程、执行和控制组
10、织中的所有资源、生产货物或劳务,为客户提供满意的服务,并维持组织的竞争优势,以达成组织目标。所以在这个信息化的时代,不管是干什么都与计算机息息相关,尤其是在目前市场经济、机构改革的条件下,企业管理对提高企业各部门的办公质量和效率,提高决策的科学性和正确性,提高综合的管理水平和竞争能力都有着十分重要的意义。构筑企业内部网,实现办公自动化,成为许多企事业单位领导和信息主管部门的主要工作。1.1 FoxERP在制品管理系统 (1) FoxERP在制品管理的内涵变迁流程式产业(process manufacturing)如石化业(如燃料油品、塑料原料等)、流程式电子业(如晶圆制造、导线架制造、IC封装
11、等)、塑料橡胶制品业(如精密橡胶材料、环氧树脂等)及金属制品业(如精密铸造、铝镁合金压铸及加工等)等,依其生产作业方式可区分为连续式生产(continuous production)及间歇式生产(intermittent production)。前者如石化业,投入及产出在制造上连续,生产设备相当自动化,而且不同产品种类少(有时有副产品产出)、产量大而设备专用,且多为计划生产;后者如流程式电子及金属制品业,一般而言产品种类多而且设备共享性高(因此换产品生产时会有所谓准备作业出现),计划及接单生产兼而有之。 对于连续式生产的流程式产业,通常会使用自动化的控制系统,如DCS(Distributed
12、Control System),生产管理着重在整体生产设备及控制系统的维护和对原料的掌握;至于间歇式生产的流程式产业,一般而言制程多而复杂,但用料相对单纯,其生产管理的要点在于制程的控管,包括生产进度、制程条件控制、良率、品质问题追踪,以及绩效等;本章介绍的系统乃针对间歇式生产的流程式产业。(2)FoxERP在制品应用范围的发展有些企业根据销售预测生产产品,接到定单后直接出货,这种做法称为计划生产(MTS,make to stock).计划生产的企业通常利用销售预测做主生产排程(MPS,masterproduction scheduling),再利用MPS使材料需求规划(MRP,materia
13、l requirement planning),但并非所有材料都会用到MRP.对于利用MRP做规划的材料而言,MRP会自动建议工令内容,用户可以使用MRP工令开立作业将MRP的建议转为正式工令. 有的企业在接到,客户定单后才进行生产活动,包括采购材料、制造零件、制造完成品等,这种做法称为订单生产(MTO,make to order)。纯定单生产的工厂由于不库存材料或半成品,故可利用MRP将客户订单转成材料、半成品及完成品的采购与制令计划。这时可以使用ERP系统中的MRP工令开立作业及MRP请购订购作业来开出采购定单及制造命令。这种状况可以直接将客户定单建立在MPS中,再用MRP算出材料需求。有
14、些订单生产的企业,为了快速满足客户需求,事先准备好各种可能的材料及半成品,在接到客户订单时迅速进行最后组装工作,以缩短订单交期。这种做法称为订单组装(ATO,assemble to order)。订单组装的工厂有材料及半成品库存但没有完成品库存,在接单后需开出组装制令,并决定该客户订单需领何种材料及半成品以制造出完成品。这种情况可以使用订单转工令单作业开出组装制令。任何企业一定有某些或全部材料不使用MRP做规划,如果某材料未使用MRP,则使用人工工令开立作业直接开出制令。制造命令是生产管理部门发出,而由制造单位执行的。生产管理部门负责生产管理和生产控制工作。所谓生产管理(production
15、management),是指规划、排程、执行并控制将投入材料转变成完成品的过程。所谓生产控制(production control),是指在从取得原材料到运交完成品的整个制造周期中,导正物流方向及调节物流速度的一种机能。生管部门在发出制令后,应立即通知材料部门进行备料工作,这时可使用ERP系统中的工令查料发放作业。在备料之后相关材料库存即转成保留量(allocated inventory)状态,在适当的时间,再实际领出材料、送到制造现场。材料实际领出之后,就不再是保留状态。若备料时间刚好配合制令的开工时间,则在工令查料发放作业之后可立即送交现场,保留量的定义是:已经被指定给某特定制令单但尚未从
16、仓库发放到生产现场的材料数量。一张工令单从产生到消失的过程中包括开立、发放、零料、工作中、完工、结案等状态。1.2 系统功能 根据需求分析中对系统的要求,的在制品管理系统的设计者规划了一系列的系统功能。如果说需求分析是提出问题,那么系统功能就是解决问题,针对需求建立功能说明文档。 下面将的在制品管理系统系统功能总结为如下几个方面。(1)流程卡流程卡使用条形码收集现场资料;流程卡批量可以依据使用者需要,依据多种规则弹性决定;制程中有拆批时,可以分批产生新流程卡或整批自动产生多张新的流程卡;良品及不良品回报使用的单位(Unit of Measurement)、流程卡使用的计量单位,均可以不同,系统
17、会自动做转换;可模具产出单位回报生产数量;提供流程卡并卡功能;提供替代的工作中心设定;有异常的情况时使用者可自行的决定是否产生新流程卡,让部分数量与原卡分流或援用原卡,分批跑流程;每一流程卡可用于计算机中做详细的备注;系统可以树状显示工令的流程卡结构及每一流程卡的制程历史。(2)模具管理可以做主模具寿命管理;可做模具部件寿命管理;可做模具再处理寿命管理;系统可以检查模具与不见对应的生产品项。(3)其他功能系统可记录不良状况及其数量、投入及产出异常差异数量及原因;异常状况发生时,可以通过Work Flow,发出流程中异常状况警讯;Rework时可以跳制程执行;系统可依据目前WIP状况及各制程Yi
18、eld,反算为达到需求数量,尚需于第一制程投入多少数量;定单进度查询可查询各工令及流程卡的进度数据;提供各暂存区、机台、模具状况查询;可设定出货包装批量打印包装卷标;提供多角度生产统计;提供Yield统计;提供多角度品质统计;提供多角度重工统计。(4)第三方交互第三方交互为第三方应用程序提供了和系统交互的接口。从严格意义上来讲,系统在其他功能模块中提供的功能都可以提供接口,供第三方应用程序调用。但是在实际的应用中需要根据具体需求,设计第三方交互接口,只提供必要的功能和方法即可。第三方交互需要严密的身份验证,因为交互的接口的物理上是暴露的,所以只有通过接口内部的身份验证来提高安全性。1.3 系统
19、的软件开发平台1.操作系统Windows XP、IIS(Web服务器)2.数据库SQL Server 2000、Oracle3.开发语言 Microsoft Visual Studio .NET 2003(1)VC#.Net(2)ASP.Net 4.CASE工具PowerDesigner10二 系统分析与设计项目开发和项目设计中的需求,比如开发人员的协作、应用程序的整体性能、系统的可扩展性和可维护性等。特别是ASP.NET ERP的是一个可以供二次开发的应用模型,所以对系统的通用性和可扩展性要求就更高了。系统的需求分为物理需求、结构需求、逻辑需求。物理需求的任务很明确,就是确定Web 系统的物
20、理服务器的最终架构和软硬件环境。例如应用程序是否需要分布式部署,数据库服务器和Web 服务器是否必须集成在同一台服务器上,是否允许第三方应用程序进行远程调用等。1.物理需求(1) 支持可分布部署的服务器群组支持分布式的服务器群组是优秀的网络应用程序必须提供的一个物理功能,因为大型的网络应用程序不可能将所有的应用和操作运行在同一台服务器上。支持分布式的服务器群组有利于降低服务器负荷,使服务器的功能更加具有针对性。例如可将数据库服务器和WEB服务器脱离开,这样不仅可以提高系统性能,而且便于管理。(2) 支持.NET的服务操作平台这是一个必须要满足的需求。FoxERP的在制品系统不可能脱离.NET
21、FRAMEWORK的支持,因此WEB服务器必须支持.NET。 (3) 仅限于FoxERP的在制品管理系统的数据库管理系统支持多种数据库类型是一个不错的构想,但是ERP的在制品管理系统更多地展示的是ASP.NET以及ADO.NET中数据操作的新特性,而在ADO.NET中针对于Microsoft SQL Server提供了很多的具体的对象和方法。为了更多地介绍和展现 ADO.NET中的对象和方法,FoxERP的在制品系统采用了Microsoft SQL Server作为系统的数据库管理系统(DBMS)。2结构需求(1) 站点的可维护性和可扩展性强 大多数的WEB应用程序在实际应用中都需要不断地添加
22、功能模块,ERP的在制品系统也是一样,在二次开发和实际应用中要根据项目的具体情况加一些功能模块。因此项目在设计之初就要考虑到,当前的构架对系统的扩展工作会不会形成障碍。 使用ASP.NET中层的设计概念能够增强站点的维护性和扩展性,基于层的设计模式允许开发者以三层甚至多层的模式开发ASP.NET应用程序,将数据操作、业务逻辑、前台显示等单元分离开,每一层都有针对性,层是以一组序列分布在系统数据和用户之间的,不相邻的层在业务上没有耦合,每一层都是继承和调用上一层中的对象和方法。这种模式使得站点的功能分布更加合理化。例如扩展一部分业务逻辑,首先是要在业务逻辑层中建立相应的方法,然后才是在前台显示层
23、中建立新的页面中建立新的页面控件。(2) 站点的功能模块通用性强由于FoxERP的在制品管理系统是作为一个示例和应用程序框架被设计和开发的,因此其功能模块要具有较高的通用性,以保证功能模块中的业务逻辑、数据模型从多数的FoxERP应用程序中提取。简单的说,FoxERP的在制品管理系统需要提供FoxERP中最基本的对象和这些对象最基本的属性,只有这样才能基于FoxERP的在制品系统的二次开发具有更大的扩展性。例如商品信息列出最基本的商品信息,至于一些具体应用中商品的特殊属性,并不应该出现在FoxERP的在制品管理系统中。模块化的构建同时也意味着模块之间尽量降低耦合度,这样的好处使得更改模块内部或
24、新增其它模块对系统的稳定性影响不大。物理需求和结构需求都是从设计框架上对系统提出了宏观的要求,而逻辑需求则是在实际项目的需求分析阶段对业务逻辑提出的要求。逻辑需求(3)完整但不需要完善的购物流程在FoxERP的在制品管理系统中需要提供一个完整的流程卡走势流程,但是这个走势流程不一定完善。因为FoxERP的在制品管理系统并不是以应用为目的,而是为应用提供模型化的框架。因此在FoxERP的在制品管理系统中,用户能够通过流程卡,模具管理,其他功能完成这一系列流程。(4)抽象FoxERP中的对象及方法FoxERP中有几个关键的对象,每个对象有起特有的方法。对象通过方法实现其自己的功能。例如可以将Fox
25、ERP中的流程卡抽象成为一个对象,流程卡的一些属性如流程卡的名称、件号、说明等都可以构建成为对象的属性,而流程卡的信息展示、冻结这些行为则可以抽象成为流程卡和模具管理的方法。面对对象的应用程序设计中最重要的一条原则就是:一切皆为对象。应用程序是由对象为单元组建完成的,应用程序的逻辑是通过对象提供的方法实现的。因此将FoxERP中实际的对象抽象成为虚拟的对象是十分重要的。(5)在逻辑上与其他应用程序整和建立FoxERP的站点的目的是使企业管理者工容易管理。但是FoxERP应用并不是孤立存在的。FoxERP提供企业内部的其他应用、FoxERP提供商的合作伙伴都是需要和ERP应用进行交互的。例如Fo
26、xERP提供商内部的数据分析应用需要对FoxERP销售的数据进行分析形式形成报告,FoxERP管理者通过报告的结果及时调整FoxERP经营者策略。这就涉及到FoxERP应用和其他应用进行交互的问题,这种交互可能是数据上的共享,也可能是功能上的调用。以上三个层面的需求基本上确定了FoxERP的在制品管理系统需要解决问题,以及在解决这些问题中必须符合条件。问题可以看成系统最终的目标,解决问题符合的条件可以看承系统功能规格。在实际项目的开发过程中,需求都是系统分析师经过对显示问题进行反复调研和总结后形成的,需求需要经过多次的论证和讨论,形成最终的需求和文档。需求文档直接指导项目的开发方向和技术框架设
27、计,脱离需求文档的项目最终是不会取得成功的。三 系统UML图UML(统一建模语言)是一种用于对软件密集型系统的制品进行可视化、详述、构造和文档化的图形语言。UML给出了一种描绘系统蓝图的标准方法,其中既包括概念性的事物,如业务过程和系统功能,也包括了具体的事物,如用特定的编程语言编写的类、数据库模式和可复用的软件结构。3.1.1用例图 在制品管理系统 3.1.2类图类图是面对对象建摸中最常见的一种图,描述类、接口、协议以及他们之间的关系。下图是对系统中的类分别进行的类图建模。3.1.3活动图 活动图是UML中用于对系统的动态方面建模的图形,一张活动图从本质上说是一张流程图,显示从活动到活动的控
28、制流程。本系统采用了对系统中用户通过身份验证和购物流程两个活动图建模,如下图:图1-3四 系统架构经过了对系统需求分析和UML的分析,基本上完成了ASP.NET ERP 的系统框架的建立,但是已经做过的工作都是设计方面的,下面涉及到的就是实际的工作了,.本节中介绍ASP.NET ERP 中的文件结构、命名和编码约定、部署等方面问题的总体规划。4.1命名和编码约定命名和编码的约定是软件工程中很重要的一个部分内容。ASP.NET ERP系统在命名和编码上的约定就是要采用业界内部承认的标准。Microsoft公司和.NET 的统一命名规则。命名和编码的原则实际上包含两件事情:命名和大小写。Micro
29、soft公司强烈推荐使用的叫作Pascal的大小写规则,该规则约定在变量中使用的所有单词的第一个字母都大写,并且不使用空格和符号Microsoft 公司推荐的另外一种大小写规则叫camel,该规则约定在变量中使用的第一个单词的首字母小写,其于单词的首字母都大写。Microsoft公司推荐的两种命名规则实际上是不会冲突的,因为两种命名规则的使用范围不一样。Microsoft公司推荐在方法的参数和私有成员变量中使用camel规则,在包括类、枚举值、枚举类型、名称、属性、事件、接口、方法、命名空间在内的大部分中使用Pascal规则。在ASP.NET ERP系统的设计严格地遵守Microsoft推荐的
30、命名规则。4.2文件夹结构有组织的文件夹结构是一个成功项目必不可少的。项目中代码文件需要有组织地放置,在ERP中,文件夹的结构显得十分有序。在ERP的主目录下有几个需要介绍的目录/BIN目录为项目编译之后的DLL文件,Componerts目录为项目中数据访问的类库文件夹,Images目录为项目中图片存放的文件夹。在项目的主目录下存放页面文件、页面后台编码类文件以及页面资源文件4.3命名空间在ERP中统一使用ERP作为应用程序的顶级命名空间,例如制令系统的数据访问层的命名空间为ERP。FoxERP首页的后台编码类的命名空间为ERP.cdefault.五 主要关键技术5.1 在制品管理内部逻辑根据
31、需求分析中对系统的要求,FoxERP的在制品系统的设计者规划了一系列的系统功能。如果说需求分析是提出问题,那么系统功能就是解决问题,针对需求建立功能说明文档。 下面将FoxERP的在制品管理系统系统功能总结为如下几个方面。(1)流程卡流程卡使用条形码收集现场资料;流程卡批量可以依据使用者需要,依据多种规则弹性决定;制程中有拆批时,可以分批产生新流程卡或整批自动产生多张新的流程卡;良品及不良品回报使用的单位(Unit of Measurement)、流程卡使用的计量单位,均可以不同,系统会自动做转换;可模具产出单位回报生产数量;提供流程卡并卡功能;提供替代的工作中心设定;有异常的情况时使用者可自
32、行的决定是否产生新流程卡,让部分数量与原卡分流或援用原卡,分批跑流程;每一流程卡可用于计算机中做详细的备注;系统可以树状显示工令的流程卡结构及每一流程卡的制程历史。相关代码:public class FlowCardDBpublic string SetFlowCard(string flowID,string compGroupID,string compStore,double compCount) /调用产生流程卡类SqlConnection mycon=new SqlConnection(ConfigurationSettings.AppSettingsconnStr);/打开数据连接
33、SqlCommand mycom=new SqlCommand(insert_FlowCard_1,mycon) ;/调用存储过程mycom.CommandType=CommandType.StoredProcedure;SqlParameter para=new SqlParameter(FlowID_1,SqlDbType.Char,24);para.Value=flowID;mycom.Parameters.Add(para);SqlParameter para1=new SqlParameter(CompGroupID_2,SqlDbType.Char,24);para1.Value=
34、compGroupID;mycom.Parameters.Add(para1);SqlParameter para2=new SqlParameter(CompStore_3,SqlDbType.Char,24);para2.Value=compStore;mycom.Parameters.Add(para2);SqlParameter para3=new SqlParameter(CompCount_4,SqlDbType.Float,24);para3.Value=compCount;mycom.Parameters.Add(para3);SqlParameter para4=new Sq
35、lParameter(Status_5,SqlDbType.Char,24);para4.Value=未签入;mycom.Parameters.Add(para4);mycon.Open();mycom.ExecuteNonQuery();mycon.Close();return para.Value.ToString();public DataSet GetFlowCardTable(string flowID)SqlConnection mycon=new SqlConnection(ConfigurationSettings.AppSettingsconnStr);mycon.Open(
36、);SqlDataAdapter myada=new SqlDataAdapter(select * from FlowCard where FlowID=+flowID+,mycon);DataSet ds=new DataSet();myada.Fill(ds,FlowCard);mycon.Close();return ds;public FlowCardDetail GetFlowDetail(string flowID)FlowCardDetail fde=new FlowCardDetail();SqlConnection mycon=new SqlConnection(Confi
37、gurationSettings.AppSettingsconnStr);SqlCommand mycom=new SqlCommand(GetFlowDetail,mycon);mycom.CommandType=CommandType.StoredProcedure;SqlParameter para=new SqlParameter(FlowID_1,SqlDbType.Char,24);para.Value=flowID;mycom.Parameters.Add(para);SqlParameter para1=new SqlParameter(CompGroupID_2,SqlDbT
38、ype.Char,24);para1.Direction=ParameterDirection.Output;mycom.Parameters.Add(para1);SqlParameter para2=new SqlParameter(CompStore_3,SqlDbType.Char,24);para2.Direction=ParameterDirection.Output;mycom.Parameters.Add(para2);SqlParameter para3=new SqlParameter(CompCount_4,SqlDbType.Float,24);para3.Direct
39、ion=ParameterDirection.Output;mycom.Parameters.Add(para3);SqlParameter para4=new SqlParameter(Status_5,SqlDbType.Char,24);para4.Direction=ParameterDirection.Output;mycom.Parameters.Add(para4);mycon.Open();mycom.ExecuteNonQuery();mycon.Close();fde.FlowID=(string)para.Value;fde.CompGroupID=(string)par
40、a1.Value;fde.CompStore=(string)para2.Value;fde.CompCount=double.Parse(para3.Value.ToString();fde.Status=(string)para4.Value;return fde;public int CheckFlowCard(string flowID)SqlConnection mycon=new SqlConnection(ConfigurationSettings.AppSettingsconnStr);SqlCommand mycom=new SqlCommand(CheckFlowCard,
41、mycon);mycom.CommandType=CommandType.StoredProcedure;SqlParameter para=new SqlParameter(FlowID,SqlDbType.Char,24);para.Value=flowID;mycom.Parameters.Add(para);mycon.Open();mycom.ExecuteNonQuery(); SqlDataReader sr=mycom.ExecuteReader();if(!sr.Read()mycon.Close();return 0;elsemycon.Close();return 1;p
42、ublic DataSet GetFlowCardTableAll()SqlConnection mycon=new SqlConnection(ConfigurationSettings.AppSettingsconnStr);mycon.Open();SqlDataAdapter myada=new SqlDataAdapter(GetFlowCardTableAll,mycon);DataSet ds=new DataSet();myada.Fill(ds,GetFlowCardTableAll);mycon.Close();return ds;public void UpdataFlo
43、wCardStatus(string FlowID,string Status)SqlConnection mycon=new SqlConnection(ConfigurationSettings.AppSettingsconnStr);SqlCommand mycom=new SqlCommand(update_FlowCardStatus_1,mycon);mycom.CommandType=CommandType.StoredProcedure;SqlParameter para=new SqlParameter(FlowID_1,SqlDbType.Char,24);para.Val
44、ue=FlowID;mycom.Parameters.Add(para);SqlParameter para1=new SqlParameter(Status_2,SqlDbType.Char,24);para1.Value=Status;mycom.Parameters.Add(para1);mycon.Open();mycom.ExecuteNonQuery();mycon.Close();public void UpdataFlowCard(string FlowID,string CompGroupID,string CompStore,double CompCount,string
45、Status)SqlConnection mycon=new SqlConnection(ConfigurationSettings.AppSettingsconnStr);SqlCommand mycom=new SqlCommand(update_FlowCard_1,mycon);mycom.CommandType=CommandType.StoredProcedure;SqlParameter para=new SqlParameter(FlowID_1,SqlDbType.Char,24);para.Value=FlowID;mycom.Parameters.Add(para);SqlParameter para1=new SqlParameter(CompGroupID_2,SqlDbType.Char,24);para1.Value=CompGroupID;mycom.Parameters.Add(para1);SqlParameter para2=new SqlParameter(CompStore_3,SqlDbType.Char,24);para2.Value=CompStore;mycom.Parameters.Add(para2);SqlParameter para3=new
限制150内