ITPub博客

首页 > Linux操作系统 > Linux操作系统 > R/3系统中流程的更改与实现 (转)

R/3系统中流程的更改与实现 (转)

原创 Linux操作系统 作者:hpj168 时间:2019-03-16 14:06:08 0 删除 编辑
本文以上海外高桥发电有限责任公司的领料流程为例,讨论了如何改变流程及其实现技术。
许多国有企业在引进ERP先进管理理念的同时,不可避免会碰到自身特有流程与标准流程相冲突的问题。原则上应努力靠拢标准流程,但限于国企特有制度,只有对原来流程略做修改,才能更好地应用系统。以上海外高桥发电有限责任公司的领料流程为例,讨论了如何改变流程及其实现技术。实践表明,必要时根据自己的需求来修改流程是完全可以实现的。

1 流程更改

上海外高桥发电有限责任公司的ERP系统自2001年上线以来,已经正式运行了49个月,实现了阶段目标。引进系统之初,公司就一自强调,引进ERP系统就是要引进先进的管理思想。所以在系统建设中力争靠近标准流程,但有时为了更好地应用,不可避免会对标准流程进行少量的修改。
流程的更改首先需要了解业务需求。以领料流程为例,虽然系统本身提供了非常灵活的后台配置,在实施过程中顾问也根据企业的特殊要求配置了特有的流程,但在实际使用过程中发现,该流程不但增加了员工的工作量,而且物料领用也没能得到很好地控制。
为了能控制物料领用,当时利用了采购申请的流程和审批。检修人员除了要完成上述流程,还必须对组件中的所有物料创建采购申请,并通过采购申请审批流程,经公司领导逐级审批,再由物资计划员统计所有批准的采购申请并打印,逐条进行手工平库,最后汇总到采购员处进行采购补库。这样,一个领料流程需要同时走2个流程,无疑加重了员工的工作量。除了需要创建、维修订单外,还需创建采购申请。可能一张大修订单中会包含数十种甚至上百种物料,创建采购申请时还要把这此物料重新输入。物资计划员每月要把所有批准的采购申请汇总打印,每次都需要打印数十页的清单,并对清单中所有的物料进行逐一平库,工作量可想而知。且每次运行该程序都需要十几分钟时间,造成系统负荷加大,影响其他人员对系统的正常使用。该流程最大的问题是创建的采购申请与订单毫无联系,存在极大漏洞,也意味着公司领导对采购申请进行审批时,并不知道该采购申请用于哪个订单,造成了审批毫无意义,未能达到公司的预期目的。
原流程利用采购申请,主要是为了能使用审批策略,而打印采购清单平库可用打印预留清单来替代,所以开发的关键是如何在订中流程中加入类似采购申请的审批。但除了通过PM订单自动创建预留中外,还有一些与维修无关的办公物料是通过手工创建预留来实现的,所以只能在预留单上增加审批流程。新流程还需考虑如果取消采购申请,采购员创建采购订单就没有了依据,而根据公司原流程,采购员必须引用采购申请来创建采购订单。所以新流程决定由计划员来创建采购申请,这样创建的采购申请数量是通过平库得到的,也就是最终应该购买的数量。采购员可以完全参考引用,但如果让计划员逐个物料去创建采购申请肯定是不可行的,所以需要实现如何自动创建采购申请。
按照新流程,检修人员只需创建维修订单即可,不用了解所需物料是否有库存,是否应该创建采购申请;公司领导则可清楚地知道这些物料引用于哪张订单,使物料领用过程可控;计划员可以每人平库,不需要打印清单并逐条手工核对;采购员可以完个引用采购申请的数量,而不需要考虑申请数量是否为实际采购数量。

2 程序升发构思与实现技术

有了新流程,接下来需要考虑如何在技术上实现。根据流程,开发分为3部分:
(1)根据用户创建的预留项目取得审批策略并保存;
(2)公司领导对预留单的审批程序;
(3)计划员平库程序,要能自动产生采购申请。

2.1在预留上加入审批策略
由于预留是标准程序,所以要曾加新的功能有2种方法:(1) Enhancement:利用系统预留接口插入所需代码;(2)Modification:取得SAP修改KEY,对原程序进行修改。为了尽可能不修改原程序,应首先子找是否有合适的接口可以利用。此例共牵涉到2个程序:创建P M订单程序(系统自动创建预留单)和手工创建预留单程序。通过S M O D事物查询发现只有预留程序有一个MBCF0007接口可以利用。
该接口处于预留更新之后,即系统把用户输入的预留项目写入数据库之后。而订单程序没有可以利用的接口,只能通过修改原程序来实现。通过跟踪发现订单保存到数据库是调用LCOVBF10程序中的RESB POST子程序。找到了接口和插入点,接下去就需要写代码来实现所需功能。由于是参考采购申请的审批流程,所以直接利用采购申请的审批策略,这样既符合以前的习惯,也能灵活设置不同的审批策略。通过跟踪采购申请程序发现,与审批策略相关的表分别有:AUSP、CABN、T16FG、T16FD、T16FS。在得到审批策略的程序中只需要用到AUSP表(见表1)。

分析CABN表,得知审批策略的内部特性号如表2所示。
其中CEBAN代表采购申请的特性值,CEKKO代表采购订单的特性值。只需用到CEBAN,再根据以前的后台配置得知原先的采购申请审批策略只用到了需求者、项目总值、物料组3个特性值,也就是通过这3个值来判断应该采用哪个策略。AUSP表中存放的便是这些特性值具体的值范围和对应策略,例如:具体物料组(004)对应的策略有0301、0302等81个策略。再根据需求者进一部缩小策略范围,最后用项目总值确定唯一的策略。
知道了如何得到策略,还需要知道如何得到用户输入的数据。MBCF0007接口提供了TI_RKPF (预留抬头)、TI_RESB_ NEW(新预留项目)、TI_RESB_OLD(原来的预留项目)、TI_RESB_ADDED(新增的预留项目)这几张内表,包含了所需的数据。而订单调用的子程序也用了类似预留接口中的内表komtab存放用户输入的预留数据。
有了输入数据,有了得到对应策略的方法,还需要确定如何把得到的策略存入数据库中。为了能和预留项目紧密相连,决定对预留项目的数据库表RESB增加相应的字段。系统也提供了对原有数据库表增加字段的方法,这就是数据库表的Enhancement,在表最后追加结构。而这个结构的命名空间是用户的,所以可以在这个结构中加入所需的字段。
有了审批策略,还需要新增一个审批程序。可以参考采购申请的审批程序流程:用户输入审批代码→列出需要审批的清单→选择批准并保存。但原来的采购申请批准清单是用Write技术实现的,交互性比较差,显示界面简陋,不能随意调整显示结构。新程序决定用ALV技术来实现清单列表批准,并实现双击订单号自动调用订单显示程序显示该订单的详细信息,以便审批者了解该物料的用处。

2.2使用ALV技术
(l)先创建一个屏幕,在屏幕上创建一个区域用来显示ALV清单;(2)需要在程序里声明对应2个Contro1 (Custom Container Control;ALV Grid Control)的对象;(3)在该屏幕的PBO中创建声明的ALV对象并指定屏幕区域;(4)程序主结构分为3部分:取数据;数据的处理与ALV的接口 ;ALV输出。用select语句得到需要批准的预留清单,把需要显示的数据存入internal table中,再对显示结构和字段属性做相应调整,最后显示在屏幕上。这样便实现了ALV清单显示的主要功能。
2.3程序的数据源和流程图
程序所需数据库表包括:T16FS(批准策略)、T16FD(批准代码的描述)、MARC(物料的工厂数据)、RESB(预定/相关需求)、RKPF(预留抬头)、CSKT(成本中心说明文本)。最终程序流程如图1所示;

图1-最终流程

2.4自动创建采购申请
批准通过后的预留单将由物资计划员进行统一平库并生成采购申请,该程序仍需使用ALV技术显示预留清单,在此主要介绍如何实现自动创建采购申请。程序创建采购申请最自接的方法就是把数据自接存放在数据库中,这种方法首先要了解采购申请由哪此表组成,还需要知道每张表之间的关系,而且SAP也不推荐自接对业务数据库进行操作,所以需要找到系统自己提供的创建采购申请程序。
系统实际已经提供了许多接口给外部程序调用,其单种接口技术称为BAPI,在程序中调用BAPI来生成采购申请。BAPI在系统内部以Function module的方式存在,也就意味着只需要调用相应的Function module就可以了。
使用BAPI事物代码可以查看所有的BAPI,通过查找发现有一个BAPI正是创建采购申请的,该B A P工对应的Function module的BAPI_REQUISITION_CREATE。通过Function builder工具查看该Function module的接口,发现需要使用其Tables中的REQUISITION_ ITEMS参数来传递需要创建的项目,而Export接口中的NUMBER参数用来得到这次创建的采购申请号。有了创建采购申请的方法,就可以设计出平库程序的流程。
至此这3个程序再加上原有的程序便组成了一个新的流程。

3结语

虽然开发商提供了相当丰富的二次开发工具和技术,加上系统中所有的标准程序也都是利用这此技术开发的,且原代码公开,使根据自己的需求来修改流程完个可以实现,但不推荐对标准流程进行改动。引进ERP系统就是为了能引入先进的管理理念,如果个部根据自己原来的管理流程加以改造,虽然技术上没问题,但对企业来说得不偿失。所以应尽可能放弃原来固守的流程。
虽然国企有其特殊性,但随着这几年改苹的深入,很多以前必须的流程已经出现了松动,在实施过程中往往是自身没法突破原有的思路。实施ERP时几乎所有人都会说这是国有企业,有很多制度约束了ERP的实施,但又有几个人会去真正探寻这些制度的必须性呢?当把这些作为ERP实施中碰到阻力的理由时,其实本身就已成为阻力。国企之所以很难成功实施ERP,并不是制度问题,而是每个参与实施人员自己本身的问题。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/178883/viewspace-16219/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2004-11-19

  • 博文量
    272
  • 访问量
    189259