SAP之路

Wednesday, November 30, 2005

Logical Database 逻辑数据库

由于修改一个报表程序的缘故,首次接触到LDB(逻辑数据库)。先是惊叹于那么短的代码,连写个选择屏幕都不够啦。后来才知道,选择屏幕是系统自动生成的,这也带来了烦恼,后面将会说怎么修理它。

首先LDB跟SQL语句一样,是选择数据库的一种方式,可通过SE36维护LDB。相比SQL,它的优点是:

  • 预设定的选择屏幕。

  • LDB可能包含多个数据表作为节点,在使用LDB的程序中,程序员可以忽略具体的数据表之间通过外部关键字设定的关系,而是使用GET事件按照节点层次逐级获取数据。

  • LDB可以提高程序的数据筛选效率,并在数据筛选的同时进行用户数据库访问权限检查。

  • LDB的维护和设定独立于程序进行。如果数据源发生变化,也可以直接修改逻辑数据库,无需对所有程序进行修改。

LDB由三大部分组成:Structure(结构)、Selections(选集)、Database program(数据库程序)。使用LDB,一般步骤如下:

  1. 在程序属性指定LDB。
  2. 指定节点,用Nodes或Tables。(指定后,自动产生选择屏幕)
  3. 触发GET事件,用GET。
  4. 用GET ... LATE返回上层数据库表
  5. 可用REJECT终止当前事件并转向同层下一个GET事件。REJECT dbtab终止当前和所有同一级别后续GET事件,执行上一层的下一GET事件。

使用LDB,先要理解它的处理流程:从最低级节点开始循环。(见附图)

最后说一下如何修改选择屏幕。可选方法之一是Modifying Screens Dynamically。在INITIALIZATION和AT SELECTION-SCREEN OUTPUT的时候,用MODIFY SCREEN语句动态设定屏幕属性。


LOOP AT SCREEN
....
MODIFY SCREEN
....
ENDLOOP.

这个SCREEN TABLE包含Name,Group1,Group2,Group3,Group4,Active等Component,如通过Name设置某屏幕元素的Active为0,就可以将该元素隐藏以来,设Required = 1,文本框变必选。诸如此类。屏幕元素的名称、组可以在屏幕制作器(SE51)查看到。

Tuesday, November 29, 2005

常用的MRP元素缩写

常用的MRP元素(MRP elements)缩写如下:

Stock 库存
OrdRes 订单申请
DepReq 相关需求
IndReq 计划独立需求
SubReq 提供物料转包商需求
PurRqs 采购申请
PldOrd 计划订单
PrdOrd 生产订单
CusOrd 订单(销售)


提示:
  1. 可用事物码OMD5(Check Texts for the MRP element)查询、修改;
  2. 计划订单可转为生产订单或采购订单;
  3. 计划订单运行MRP时是否自动转换为采购订单,取决于运行MRP时“创建采购申请标识”所选参数。

Friday, November 25, 2005

吸取教训

……可惜我不是一个聪明人,因为聪明人可以从别人的经验中吸取教训,而获得收益,只希望自己是一个普通人,因为普通人可以从自己失败的经验中吸取教训……

——《和我同居的女人》

Thursday, November 17, 2005

每天记四个小时笔记

组长批评我们不好好做笔记,说他以前做关键用户的时候每天晚上要花4个小时做、整理笔记,哪有我们这么清闲。还说同样的问题,说过一遍忘了,再说一遍又忘了,是不尊重别人的劳动。

他问我笔记都记些什么,我说记下哪个栏位该输入什么,我自己也觉得不够,但又不知道该怎么记。这是他的答复:
  1. 填的内容;
  2. 为什么这样填;
  3. 这样填有什么结果;
  4. 对业务有何影响。
我又不是比别人聪明,下的功夫又远远不够,这怎么行!我决定要用实际行动来提高自己。至于这种程度的笔记,我也想记,可是感觉组长以及手头上的资料不够系统。

工作中心和工艺路线

工作中心和工艺路线是PP的重要环节。创建工作中心,不是根据具体的地点、设备、人员,而是根据类型。将同类型的生产模块化,以便于统计能力、进行排产和收集成本。

创建工作中心过程中,工作中心的类型其标识作用,一般分机器和人工。其中“能力”标签下,是设定最大产能用的,其公式统计的是总机时/工时,填写开始时间、完成时间、休息时间,再根据机器或人员的数目设置单项能力数。“调度”标签则用于排产,即设定该工作中心的能力需求是取决于机器还是工时,公式统计的是分解后的生产需时。“成本核算”标签则为收集成本服务,若只添加其中一项(PRM/LRM),则只统计该项能力。

创建工艺路线比较麻烦的是机时、工时的统计,一般用单位时间(1天、1小时)除于产量得出。须注意,调度能力的时间决定了另一能力的时间。当然,这里的机时、工时,跟排产和成本的计算都有关系。该处,“拆分”是指分解成多少条线去生产,只影响排产(时间),不影响成本(价值)。拆分与单项能力数没有必然的关系。

Tuesday, November 15, 2005

协调的途径

项目进入最后阶段,发现很多事项远远落后于计划,比方说原定10月底完成的物料主数据倒入至今还没有完成;关键用户对系统的操作还很不熟练,更不用说一般用户。弄成这样,或许这就是企业内部实施的不一样吧。

组长说了个协调的途径。简单来说,就是直接找领导,不要跟用户磨蹭。他举例说硬件的配备问题,跟用户怎么强调都得不到落实,最后直接找领导出面,第二天就解决了。

这也是项目接下来采用的协调途径。

Monday, November 14, 2005

虚拟物料

虚拟物料有别于半成品,它没有具体的形态,或者说不是一个真正意义上的物料。比方说,电脑产品的说明书往往包含说明书、质保卡、驱动光盘等,这些东西比较通用而且一段时期改动不大,因此可以组合起来成为一个“虚拟物料”,以方面输入和管理。故此,虚拟物料也需要创建BOM。

要创建虚拟物料,物料主数据“MRP2”一栏,须将“特殊采购类”设置为50(虚无装配)。“会计1”一栏,将“评估级别”设置为8000(虚拟件)。

Tuesday, November 08, 2005

参与培训的感想

从编写培训文档,到参与培训,经历了一段颇为艰苦的日子。转眼间,在公司已经快四个月了,变化还真大。

记得一个多月前,进行第一次集成测试,我暗暗叫苦:操作尚且不会,如何测试?!而每次操作不下去,去请教组长的时候,他都很不耐烦地让我看过去的培训资料。我也奇怪,为何在SAP面前变得如此的依赖。

……而这段黑暗的日子终于熬过了。现在我意识到,对自己负责的PP模块,我的操作已经熟练了很多,也会结合流程去思考一下,接下来我要知道用户去进行测试的工作。这样的改变,我感到一些欣慰。

这次培训,让我接触了用户,他们是活生生的人,会以不同的心态投入到SAP项目中。最让我头疼的是,有些曾经初步接触过SAP的用户,在培训时他有时能帮上你忙,跟你与用户解释、分享他的操作经验和体会,但更多的时候,会是个棘手的家伙,过分的自以为是。——我想这样的感受,各种老师都曾体会过。