sapr3系统内部结构剖析与实例研究1.docx
《sapr3系统内部结构剖析与实例研究1.docx》由会员分享,可在线阅读,更多相关《sapr3系统内部结构剖析与实例研究1.docx(19页珍藏版)》请在冰豆网上搜索。
sapr3系统内部结构剖析与实例研究1
本文介绍了大型管理应用软件SAPR/3系统的性能特点、内部结构以及各个功能模块的特点和模块间数据沟通的方式,最后给出了一个运行实例。
关键字:
SAPR/3、组成、结构、模块
引言
近年来,我国信息化进程迅速推进,特别是市场经济条件下企业管理机制、组织结构及市场行为方式的巨大转变,引发了对先进的管理思想及管理模式、管理手段的渴极思饮的需求。
许多国外的企业管理软件供应商对于业界和非业界人士也由素所未闻变成耳熟能详。
诸多知名厂家当中,在世界范围内ERP/MRPII软件市场上独执牛耳的当属德国的SAP公司。
该公司成立于1972年,一直致力于SAP系列软件的开发。
97年初引进了开放新战略后,业务增长趋势更为强劲。
在国外品牌先后看好中国这一潜力巨大的市场而纷纷涌入的潮流中,SAP自然不甘示弱。
它在1996年岁末就已宣布其产品的汉化全部完成,1997年又捆绑了多种软件,为推进其R/3系统的实施擂鼓助阵。
从SAP1997年在中国市场上的积极表现来推测,1998年它将以更灵活的策略,力求迅速在中国扎根、开花、结果。
鉴于以上情况,为更有效地取人之长,继而推动国内管理软件业的发展壮大,笔者认为,对SAP系列管理软件包括SAP公司本身有所了解,是十分必要的。
然而,笔者接触到的企业管理人员、财会行业人士当中,对SAPR/3系统这一大型管理应用软件,知其名者居多,晓其实者诚少。
原因不外两点:
其一,国内使用这种功能强大同时又价格昂贵的管理软件的企业尚为数不多;其二,介绍SAPR/3系统性能特点及其内部结构的资料也寥寥无几。
因此,笔者拟从内部组成结构和运行实例分析两个角度来对SAPR/3系统作一简介,特别用较多笔墨介绍了SAPR/3系统各个模块的功能特点及模块间的数据沟通,希望能与关注SAP管理软件的读者共同讨论。
SAPR/3系统概述
SAPR/3中的S代表系统(Systems),A代表应用软件(Applications),P代表产品(Products)。
R/3意味着这是SAP软件第三次发布的版本。
用一句话来概括,SAPR/3
是SAP公司开发的客户机/服务器环境下的套装软件,可用于处理一个公司中几乎所有的经
营管理任务,常见的诸如发票支付、生产资源的管理、财务控制等等都包含在其中。
下文我们将陆续介绍这些内容。
SAPR/3系统的性能特点可以简要归纳如下:
1.功能模块化。
SAPR/3运用应用程序模块(通常简称为“模块”)来处理上述任务。
这些模块常用其英文字母来命名。
比如,SD表示销售(Sales)和分发(Distribution),MM表示物料管理
(MaterialsManagement),CO表示控制(Controlling)。
诸多模块分成三大类:
物
流(Logistics)、财务(Accounting)与人力资源(HumanResources)。
比如物料管
理(MM)在“物流”类中,控制(CO)是“财务”类的一个模块。
它们相互协作,共同作用,来处理公司中的经营管理任务。
R/3系统的模块结构如图1所示。
R/3Modules
图1R/3系统的模块结构
信息高度共享
R/3各模块使用共同的数据库工作。
这就是说,由一个部门输入到系统中的信息,所有其他
部门都会马上得到。
比如说,财务部可以获得来自销售部的信息,生产计划部又可以获得来
自财务部的会计信息。
这样,每个部门使用的都是最新的信息。
即使公司的部门之间存在着
各种分割,这些信息仍然被各个模块共享使用。
图2说明了这种共享关系。
图2R/3系统各模块间的信息共享
R/3系统之所以要保证高度的信息共享性,是因为R/3的设计开发人员认识到各种企业在实
际运营中就是这样处理事务的。
举例来说明,有一份订单键入到系统中,订单中包含的全部
新信息都被写进数据库。
R/3系统能够认识到,要完整地执行此次业务处理的话,几个不同
的模块都需要用到这些信息。
“物流”类模块需要这些信息来安排订单上指定产品的生产,
“财务”类模块要处理原材料款项的支付和发票的签发,“人力资源”类模块则需要这些信息来作出人力的安排。
开放性
首先,R/3能够与公司现有的计算机系统实现软硬件的全面兼容。
随着公司的成长,现有的系统可能已经包括了大量不同类型的计算机,比如说,该系统的网
络上连接着个人电脑、膝上机、小型工作站以及大型机。
如图3所示。
图3网络上各种不同类型的计算机
而R/3系统,恰恰能够在如此复杂多样的计算机系统基础上工作。
在以前,许多大型企业使用的是大型机系统。
在这种情况下,个人计算机或终端遍布于公司
各部门,而数据的存储与管理却是集中的。
数据必须从大型机经过网络的传送,才能在终端
运行的程序中使用,然后再传回给大型机储存起来。
这个过程代价昂贵,又浪费时间。
近来,
许多公司已经转向开放式系统或客户机/服务器环境。
这样,数据的组织就更复杂了,集中
的和分布的数据存储、处理以及管理的情况将混杂在一起。
SAPR/2主要是针对大型机环境
开发的,R/3则主要用于开放式系统或客户机/服务器环境。
R/2与R/3使用同一种ABAP/4
编程语言,这意味着数据可以很容易地在大型机与开放式系统之间进行传送与兼容共享。
不断扩展
其次,更重要的是,R/3可以不断扩展,使得R/3能够跟得上公司不断的成长。
R/3主要是为大中型企业设计开发的。
然而,它同样是小型企业的理想选择。
这些小企业成
长起来以后,也无需改换他们的系统。
在公司的成长过程中,会发展出一套自己特有的组织、控制和计划的流程。
已经经过专门设计的R/3系统,可以适应于所有现代组织中发生的连
续不断的变化。
R/3的适应性体现在以下几个方面:
R/3模块可以根据公司的特殊技术需要
进行“本地化”;模块可以对来自公司已有程序的数据进行转换;公司可以只安装当时自己需要的模块,当业务需要发展时再加上其他的模块;R/3中的术语可以修改,与公司使用的
专业名词配套。
如图4所示。
CompanyTerminal^^
IndiviiludlAdaptation
StepbyStep「ifEKpansiun
图4R/3系统的开放性
用户界面友好
R/3系统的设计始终从用户的需要出发。
一个程序要能够处理大范围的管理任务,不得不变
得相当复杂。
尽管这样,R/3仍然保持了友好的用户使用界面。
它使用的是用户已经非常熟
悉的windows技术,可以同时执行多个任务。
所有的R/3模块都是菜单驱动的,指引用户
很容易地使用整个系统。
R/3应用软件包含大量图形对象,用户只需看上一眼,就能说出它
们的功能,大大节省了时间。
如图5所示。
图5R/3系统友好的用户使用界面
高度安全性
在管理经营业务的过程中,R/3系统必然会处理到对公司来说是高度机密的信息。
比如说,
系统中会包括涉及公司产品、财务、未来战略和全体员工详细情况等等各方面的信息。
所有
这些数据的安全性必须要得到保证。
首先一点,就是只有被授权的人才能访问这些数据。
每个R/3的用户都有他自己特定的访
问权限,这种权限严格规定了系统中的哪些数据是该用户可以读、写甚至修改的,以及用户
可以执行哪些功能模块的操作。
用户的工作性质决定了用户被授予何种访问权限。
这种授权
并不是一成不变的,系统管理员可以根据用户工作性质的变化,相应地扩大或缩小授予用户
的权力。
其次,同样非常重要的一点是,R/3系统能够不断地更新工作日志,将用户的每一次操作都
准确及时地记录下来。
R/3系统的部分安全措施如图6所示。
图6R/3系统的高度安全性
R/3系统的组成
为了处理各种各样的管理任务,R/3必须是一个十分复杂的程序。
然而,用户会发现,R/3
系统中包含的窗口、菜单以及图形对象会使得系统用起来得心应手,用户使用R/3时,只需简
单的操作培训,并不需要知道它是怎么工作的。
然而,鉴于引言中已谈及的原因,对系统的主要组成部分有所了解,仍是值得的。
R/3系统有四个主要部分。
第一部分是应用模块(Applicationmodules)。
上文已谈及,
用户在屏幕上直接操作的就是这些模块,在下文“R/3模块”一节中笔者会详细介绍。
其他
三个部分是:
界面(Interfaces),基础系统(BasisSystem)和SAP技术(SAP
Technology)。
基础系统又被称作“核”(kernel)。
R/3系统的组成结构图如图7所示。
图7R/3系统组成结构图
F文从“SAP技术”开始依次谈起。
SAP技术”。
它的作
R/3之所以能够处理公司各个部门的管理任务,正是依赖于先进的用与特点可以简要归纳如下:
1.这一技术使友好的用户界面(菜单、窗口与图形对象)得以实现。
2.“SAP技术”与所有类型的计算机兼容,这意味着当需求增加时,公司的硬件可以以多种方式进行扩展。
3.“SAP技术”同样可以处理组织结构中发生的变化。
无论这些变化要求数据的处理相应变得更加集中还是更加分散,它都能应付自如。
4.以上谈到的都是“SAP技术”在处理单家公司的管理任务时发挥作用,然而,“SAP技术”也适用于由几家公司组成的组织。
一个R/3系统能够管理好几家法律意义上独立的公司。
哪怕公司自己还有子公司,也只需一个系统进行管理。
今天的许多组织都在世界不同国家建立了相互独立的公司或分支机构。
这些跨国组织选择了R/3,因为“SAP技术”支持下的R/3是一个多语种的系统,能够反映不同国家的税法规定、财务准则,并且支持多时区的操作。
5.“SAP技术”已为“2000年问题”作好了准备,当日期从99年变成00年时,用户照常工作,就象往常开始新的一年一样。
针对即将成立的欧洲货币同盟(EMU)可能会引起的企业财务的变动,“SAP技术”在R/3系统中也作了相应的设计。
对于近年来最重要的一个发展:
WorldWideWeb的快速成长,“SAP技术”能够保证公司可以开展Internet上的业务。
基础系统
“基础系统”(即“核”)是R/3系统的“引擎”。
比如说,它负责屏幕的定义、检查用户的进入以及保证数据的正确流向等。
“基础系统”由屏幕解释器(ScreenInterpreter)ABAP/4解释器(ABAP/4Interpreter)、数据字典(DataDictionary)和流控制(Flow
Control)四部分组成,如图8所示。
各个部分的功能分别介绍如下:
1.屏幕解释器负责设计R/3屏幕、检查用户输入并提供出错信息。
R/3系统是一个双向的过程,用户输入信息,R/3提供反馈。
这通常称作“对话”,而控制这些对话的就是屏幕解释器.
2.ABAP/4是SAP开发的第四代编程语言,所有的SAP模块都由ABAP/4写成。
ABAP/4解释器和屏幕解释器一样负责管理与用户的对话,不过它的作用是处理输入数据,并编辑输出数据。
通过屏幕解释器与ABAP/4解释器的共同作用,用户与应用模块之间便建立了有效率的对话。
3.数据字典,顾名思义是R/3用来查找定义的。
所有应用模块使用的所有数据(如数据类型、数据域允许的最大字符长度等等)都定义在数据字典的表当中,屏幕解释器使用这些信息来检查输入是否有效,ABAP/4解释器则用这些信息来定义那些数据能够被另一模块使用之前所需要的处理过程。
数据字典同时也存储关于系统与业务的综合信息。
4.流控制有助于提高R/3应用软件管理一系列工作时的效率。
比如,它保证用户的数据已被保存;当用户要求系统执行一系列的任务时,流控制将在批处理(BatchProcess)
中进行处理。
BasisSystem
图8R/3中“基础系统”部分的组成及功能
界面
“界面”是R/3在自己与环境之间建立的连接。
针对每种类型的计算机和软件,设计有不同版本的界面。
正是界面使得R/3系统无论使用哪种计算机系统,对用户来说看上去都是
一样的。
主要的界面有系统界面、用户界面和沟通界面三种,如图9所示。
其中:
1.系统界面是R/3与公司已有软件之间建立的连接。
比如,这个界面可以使R/3与已有
的操作系统和数据库相互沟通。
用户界面确保在不同类型的计算机上,屏幕在用户看起来是一样的。
2.用户界面可以修改来自屏幕解释器的指令,与当前使用的特定类型的计算机匹配。
3.沟通界面使得电子数据可以在计算机之间进行转换。
比如,它可以把非R/3程序的数据
转换成R/3的数据格式。
同时,沟通界面也向用户提供e-mail和Internet服务。
图9R/3系统的界面分类
R/3的模块
R/3系统包含大量模块,这些模块共同发挥作用来执行公司中的业务管理任务。
每个模块都有一个国际通用的缩写。
系统的用户使用的往往是这些模块的缩写,而不是全称。
比如,
SD表示销售(Sales)和分发(Distribution)模块,CO表示控制(Controlling)模块。
模块分成三大类:
物流、财务与人力资源。
比如,“销售与分发”模块(缩写为“SD”)
在“物流”类中;“控制模块”(缩写为“CO”)是“财务”类的一个模块。
所有模块都显示在R/3系统的主屏幕中,用户可以从中选择相应的模块进行操作。
“物流”类模块处理的业务是与整个公司有关的,如:
订单处理、物料管理、主生产计划、准备转运和发票核查等等,如图10所示。
其中:
1.“销售与分发”模块(缩写为“SD”)处理有关销售、装运、单据开具的任务。
它提供的销售支持有:
对有关销售线索和竞争者活动的信息进行管理的工具,销售信息系统还能提出关于市场趋势的早期警告。
如果顾客发出一份订单,SD模块能够从数据库中抽取顾客地址、销售活动和信用限额等信息。
SD还能与“物料管理”和“生产计划”模块一起,检查原材料是否可以获得,估计出这订单的最早可能交货期。
SD向员工提供有关到期应该发货的订单的信息。
它和“物料管理”模块一起,从仓库中提出产成品,并且支持有关包装和生成装运单据的活动。
一旦产成品发出,SD便自动开具单据,“财务会计与控制”模块马上就能获得这个信息。
2.“物料管理”模块(缩写为“MM”)的主要任务是处理物料流入、流经以及流出公司的活动。
MM处理采购业务、仓库管理和库存清单,还进行发票的核查以及提供一套复杂的信息系统。
3•“产品计划”模块(缩写为“PP”),协助公司上下从生产经理到操作工的全体员工来计划生产过程。
比如,它对原材料的运输与存储、生产设备、副产品以及废品都能够作出计划。
生产过程用图形的形式表示,展示出生产各个阶段间的关系,提供了计划、控制以及生产文档所需的信息。
PP生成一份生产订单,上面汇总了成本、材料、工艺、数量和进度各项信息。
4•“工厂维护”模块(缩写为“PM”),处理厂房修缮和生产过程中使用的设备的维护。
它提供关于机器使用与闲置的信息。
PM和PP模块的紧密配合,保证了生产过程的效率。
5•“质量管理”模块(缩写为“QM”),支持所有与产品质量保证有关的流程。
它提供检测计划的详细安排,管理废品率和质量相关成本等数据。
需要的话,QM还对质量资格认证
进行管理。
图10“物流”类模块的组成与功能
财务
“财务”类模块提供一套通用记帐系统,保证资产负债表与损益表的及时更新。
除此以外,
还能够进行资产管理,提供有关经营成果的报告,使得公司管理决策建立在客观、及时的信息基础之上,协助完成公司的整体控制。
“财务”类模块的组成与功能如图11所示。
其中:
1.“财务会计”模块(FinancialAccounting,缩写为“Fl”),提供通常的会计功能,
如资产负债表与损益表的科目等。
这些功能可以根据各分支机构的需要来进行调整,并且往
往是多语种的。
同时,科目的设置会遵守任何一个特定国家中的有关规定。
另外,FI还进
行资产管理,包括资产的历史情况与折旧。
它甚至可以对计划投资进行仿真,以辅助决策。
2.“控制”模块(Controlling,缩写为“CO”),不仅可以控制成本,还可以控制公司的目标。
另外,CO还提供信息以帮助高级管理人员作出决策或制定规划。
3.“企业控制”模块(EnterpriseControlling,缩写为“EC”),是为公司经营者提供
的一个信息系统。
它能够把公司内部的信息与关于外部市场的信息结合起来,并区分出哪些
是影响公司营销战略的战略性问题。
图11“财务”类模块的组成与功能
人力资源
“人力资源”类模块可以提供一个综合的人力资源管理系统。
它综合了诸如人事计划、新员
工招聘、工资管理和员工个人发展等各项业务活动。
“人力资源”类模块的组成与功能如图
12所示。
其中:
1.“人事管理”模块(PersonnelAdministration,缩写为“PA”),包含所有公司员工
的记录信息。
这些信息可以由所有人力资源应用软件和许多其他业务类的模块获得。
于是,整个系统便可获得最新的信息。
同时,PA提供各种层次的时间管理,从简单的工时监控直
到自动匹配工人的工作时间与机器利用率。
PA也负责管理工资单和差旅费。
2.“人事计划与发展”模块(PersonnelPlanningandDevelopment,缩写为“PD”),
包括了人力资源计划的所有方面。
例如,“成本计划”可以预测不同工资支付战略的影响,以支持决策。
PD也支持长期计划。
例如,关于特定技术领域的员工年龄结构的数据,能够凸显对现有员工进行职业发展的需要或者是高效?
?
地招募新的人力资源的需要。
R/3Modules
图12“人力资源”类模块的组成与功能
总而言之,正是上述物流、财务与人力资源三大类模块以及它们相互沟通和共享数据的能力,使得R/3能够处理公司中各种各样的业务管理任务。
一个例子
下面,我们将跟踪一制鞋企业的业务流程,看SAPR/3是以何种方式得到运用的。
我们会看到,在每一个阶段,从最初的订货到最后的发货以及开票,R/3各模块是如何相互协作来支持和控制整个业务流程的。
整个过程如图13所示。
图中直角矩形表示的是“物流”类模块;圆角矩形表示的是“财务”类模块;椭圆表示的是“人力资源”类模块。
了一场促销活动,宣传它生产的某种鞋,并允诺以优惠价出售。
促销活动发起后不久,就收到了公司的一位潜在客户打来的电话,他想尽快买到4000双这种鞋子(如图13中步骤1)。
公司得到此客户的详细信息后,就将其作为客户主记录(CustomerMasterRecord)输入“销售与分发”模块(SD)的数据库中(如图13中步
骤2)。
所谓客户主记录,其中存储的是该公司与此客户的业务关系,包含如下条目:
地址、付款方式、以往的销售记录和客户所在公司的代码等等。
这些信息输入SD模块后,就触发订单处理流程。
首先,给该客户生成一份报价单,包括价格、数量、交货期和该报价单的有效期等信息(如图13中步骤3)。
报价单发出几天后,公司收到了一份书面订单(如图13中步骤4)。
现在可以输入这份订单
了。
订单的大部分的信息可以从客户主记录取得,因而无需重新输入。
订单输入完毕后,整个订货信息就被保存下来,由R/3系统自动给它分配一个订单编号。
一旦订单被确认并赋予了一个订单号,订单信息就从SD模块传送到“物料管理”模块(MM)和“生产计划”模块(PP),以便开始这批鞋的生产(如图13中步骤5)。
MM模块从SD模块收到计划发送这4000双鞋的信息后,首先检查数据库中保存的库存信息,看当前可以提供的产成品数目(如图13中步骤6)。
经查询,得知仓库中只有1000双
这种鞋子。
显然,要满足客户订单,还要生产3000双鞋子。
于是,MM模块把仓库中现有
(如图13中步骤7)。
当供MM模块来更新库存信息
的鞋和原料预留下来,再向公司的供应商去定购原料的不足部分应商将原料运到以后,仓库管理员便把这批到货的详细信息输入(如图13中步骤8)。
MM模块还能提供发票核查的功能,用来检查供应商开出的发票上记载的货项确实是公司定购的,并核实价格的正确性。
经过核查的这些信息又被传送给“财务会计”模块(FI)(如
图13中步骤9),由其决定付款方式并安排给供应商付款(如图13中步骤10)。
MM模块进行处理的同时,“生产计划”模块(PP)在为这批鞋的生产安排机器设备。
它
计算出为达到订单要求所需的机器工时。
当PP模块为能按期交这笔货而制定机器使用计划
时,发现需要推迟一台机器的维修。
这个信息被送往“工厂维护”模块(PM),以作相应
调整(如图13中步骤11)。
PP模块同时计算出人力工时,传送给“人事管理”模块(PA)(如图13中步骤12),由它来计算员工的工资(如图13中步骤13)。
“质量管理”模块(QM)为保证产品质量而制定的一系列检测措施,则贯穿于整个生产过程中。
当生产和测试都完成以后,最终可供货数目回送给MM和SD模块(如图13中步骤
14)。
MM模块将生产好的产品计入库存。
SD模块自动准备好装运单据(如图13中步骤15),并安排把这批鞋子运送给那个客户。
在整个过程中,所有与财务有关的信息都从物流类模块送至FI模块。
当FI模块被告知货物已发运时(如图13中步骤16),它生成最终的销货发票(如图13中步骤17)。
当客户付清货款后(如图13中步骤18),FI模块更新总帐科目和客户数据库。
“控制”模块(CO)—直监控着来自物流类和人力资源类模块的信息。
比如说,它使用这些信息来修改MM和PP等模块的配置,以便改进将来的生产流程处理。
同时,CO模块提
供一份整个生产流程的成本分析,可以用来指导销售部门将来的报价。
直到这时,才算是完成了这批4000双鞋子订单的全部处理。
L订背电话
<
制牲厂
才容户主记录
<
4.书倉订单
14.合#环戳量
11.汎器安排
3,报价单
MMI
|4购覧发尊
7.原甘料来购单—I>
&岳材料
15运货单运愉部匚J
VLF
供应商
图13SAPR/3系统的一个运行实例