想学FM系列(19)-SAP FM模块:派生规则推导策略(2)-派生规则推导步骤-分配、表格查询

4.1.2 分配

分配:是推导过程中给某一字段赋值,如同 A = B 一样赋值。字段可以是源数据,也可以是辅助数据,也可以是目标数据。设置见下图

定义:

① 源字段:指定目标字段的值来自另一个字段,例如字段基金中心=成本中心。可以点击”放大镜”来定义明细,如下图

⑴允许初始值:当不打上勾时,代表此源字段的值为空时,不运行分配的赋值。

⑵明细:整个字段内容:代表将整个字段的内容赋值给目标字段;部分字段内容:将字段的一部份内容赋值给目标字段。

② 常数:给目标字段指定为一个具体的常数,例如基金中心= ‘280001’。

③ 目标字段:指定要被赋值的字段。

④ 点击”放大镜” :可以指定被赋值的目标字段的明细设定。见下图

注:要赋值操作的明细设定当中,必须根据自己要使用的情况来正确决定,否则可能会产生下正确的结果。例如在操作FI记账时,根据成本中心和基金中心在界面录入情况来执行派生情况:

覆盖选项

操作界面成本中心值

操作界面基金中心值

派生执行后基金中心值

备注说明

如果字段已填,请勿覆盖

9362

9362

基金中心没有值,进行赋值操作。

9362

280001

280001

基金中心有值,不进行赋值操作

280001

280001

基金中心有值,不进行赋值操作。

用新值覆盖

9362

9362

用成本中心值覆盖

9362

280001

9362

用新值覆盖

280001

注:源字段选允许初始值,进行赋值,用新值覆盖。

280001

280001

注:源字段没选允许初始值,不进行赋值。

如果新值是空的,请用新值覆盖

9362

9362

源字段值不为空,进行赋值。

9362

280001

9362

源字段值不为空,进行赋值。

280001

280001

源字段值为空,不进行赋值。

一个简单的A=B一样的赋值,搞出这么多名堂,还能让人好好的实施PSM-FM模块吗?一个非常小且不容易让人注意的地方,一不小心会造成错误的结果,但顾问自己可能还不知道原因。

4.1.4 表格查询

表格查询,相当于使用一个SQL语句来查询一个SAP中存在的表格,然后把表格查询的结果中的其它字段数据赋值给推导过程中的字段,同时根据其执行情况,提供一个”属性”来选择系统响应。需要注意的是在使用表格查询时,限制查询传入的条件为表格的KEY字段,不能随意使用表格字段作为条件来进行查询,这限制了表格查询的使用。前面讲到的取基金中心的公司代码,当时我们用了函数来取,其实在这里也可以用表格查询来取(主数据表FMFCTR),见下图:

在选创建表格查询时,会要求录入要查询的表格(包含数据库表格、视图),回车进入下一步。

定义:

① 表查询的源字段:指要查询表格的KEY字段值来源,来源可以为推导过程中的各个字段,也可定义为常数,点击”明细”列所在的按钮,可以进行明细的设置,如下图:

②表字段到目标字段的分配:将查询结果表格中的字段赋值给推导过程中的字段。这里的例子是取公司代码放在辅助字段USERTEMP1,把基金中心上的基金放在目标字段FUND中。点击明细列所在按钮,可以进行明细设置,其类同前面讲的步骤类型”分配”当中的赋值明细设定。

属性:

① 满足本步骤执行条件,执行后,没有找到表格中相应的数据,系统提示报错。

② 不满足本步骤执行条件,报错。

③ 满足本步骤执行条件,执行后,找到表格中相应的数据,就结束派生规则的执行,后面步骤的不再执行。

④ 满足本步骤执行条件,执行后,不管执行的结果如何就结束派生规则的执行,后面步骤的不再执行。

⑤ 不满足本步骤执行条件就结束派生规则的执行,后面步骤的不再执行。

注:通常只有在有明确要求下才会选择系统的响应,如果要使用一定要小心,尤其后面三个,对派生规则的步骤执行有很大影响。

未完待续...

原文发布于微信公众号 - SAP最佳业务实践(sztunxi)

原文发表时间:2017-04-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Crossin的编程教室

【每周一坑】校验文件哈希

先说个通知,给参与了码上行动的同学:又一期展示学习成果的编程擂台活动开始了,即是练手的好机会,又能得到助教的全程支持,还可以得积分赢奖金。赶紧来报名吧!从课程首...

35911
来自专栏IMWeb前端团队

AMD and CMD are dead之js模块化黑魔法

缘由 在2013-03-06 13:58的时候,曾甩下一片文章叫:《为什么不使用requirejs和seajs》,并放下豪言说发布一款完美的模块化库,再后来就把...

2477
来自专栏tkokof 的技术,小趣及杂念

iTween那些事儿(二)

  上次我们简单浏览了一番iTween的使用和原理,这次我们换个角度,转而看看iTween目前存在的一些缺陷以及一点点可能的改进之处,当然,这些所谓的缺陷或者改...

641
来自专栏IT可乐

深入理解计算机系统(5.1)------优化程序性能

  你能获得的对程序最大的加速比就是当你第一次让它工作起来的时候。   在讲解如何优化程序性能之前,我们首先要明确写程序最主要的目标就是使它在所有可能的情况下都...

23710
来自专栏追不上乌龟的兔子

使用Python标准库functools中的lru_cache实现缓存

很简单,也很容易理解,但是不难发现这个函数在计算斐波那契数列的时候事实上进行了很多重复计算,例如:

1824
来自专栏葡萄城控件技术团队

ActiveReports 报表应用教程 (9)---交互式报表之动态排序

在葡萄城ActiveReports报表中除了提供对数据源进行排序的功能之外,还提供了最终用户排序功能,最终用户可以对报表进行区域内排序和整个数据源排序,结合数据...

18210
来自专栏公有云大数据平台弹性 MapReduce

分布式sql引擎原理分析-逻辑执行计划生成

本文档以当前流行的分布式大数据查询引擎Presto为切入点,分析一个query语句怎么生成为一个分段的逻辑计划。

1.1K13
来自专栏GIS讲堂

Arcgis for Js之Graphiclayer扩展详解

在前两节,讲到了两种不同方式的聚类,一种是基于距离的,一种是基于区域范围的,两种不同的聚类都是通过扩展esri/layers/GraphicsLayer方法来实...

1833
来自专栏数据结构与算法

洛谷P2704 [NOI2001]炮兵阵地(状压dp)

司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队。一个N*M的地图由N行M列组成,地图的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示)...

642
来自专栏编程一生

lucene原理及源码解析--核心类

1552

扫码关注云+社区

领取腾讯云代金券