EBS Form关键性弹性域中的其它的概念 - CSDN博客

EBS Form关键性弹性域中的其它的概念

(版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处;否则请与本人联系,违者必究)

你已经了解了下面这些基本弹性域的术语和概念:

l  弹性域(Flexfield)

l  分段(Segment)

l  结构(Structure)

l  值(Value)

l  验证(Validation(Validate))

l  值集(Value set)

你知道上面这些术语和概念同时适用于关键性弹性域和描述性弹性域,你还需要知道额外的仅适用于关键性弹性域的术语。

智能键(Intelligent Key)

一个智能键是由几个部分组成的编码,这里的一个或多个部分是有含义的。一个智能键”编码”能唯一确认一个对象,比如一个账户,一个资产,一个零件或者一个作业。智能键在应用中非常有用,因为它们比起唯一编码来说更容易为用户记住和使用。比如,一个零件的编号PAD-YEL-11×14就比一个唯一的零件编号57494更容易为用户记住。尽管如此,唯一的ID编码在关系型数据库应用中更容易维护,因为对ID号来说仅一列是必须的,但对智能键来说多列是必须的(编码中每一个部分或者分段都需要一列)。EBS产品使用带有唯一ID号码的弹性域来表示智能键。那就是说,终端用户看到的和工作用的是容易记住的智能键编码,但EBS产品在大多数表中仅需要存储一个隐藏的唯一ID编码。

重要:在整个文档中,在我们的示例图片中我们使用”PartNumber Key Flexfield”。我们使用这个示例因为它可以帮助我们演示使用关键性弹性域和它的行为,而不需要任何特别的会计,人力资源或者生产知识。尽管如实,但在EBS中没有实际的”Part Number KeyFlexfield”,而且你不应该和许多EBS产品比如库存使用的System Items 弹性域(Item弹性域)所混淆。

智能键示例

组合(Combination)

一个组合是一个特殊的完整编码,或者组成了编码的分段值的组合,其通常唯一标识了一个对象。比如,每个零件号码是一个单独的组合,就像PAD-YEL-11×14或者01-COM-876-7GB-LTN(这里”-”是分段分隔符)。如果你有10个零件,你需要定义10个组合。一个有效的组合是一个存在的或者目前可以被使用的新组合(那就是说,它没有过期,没有被禁用,并不违反交叉验证和安全规则).一个组合有不同的分段,这依赖于这个组合所使用的弹性域结构。任意一个组合仅关联到一个特殊的弹性域结构(分段的排列).

注意很多EBS产品(及其文档)不需要引用关键性弹性域组合为”组合”,它们可能使用实体的名字或者关键性弹性域本身引用组合。比如,Oracle资产使用叫做”Asset KeyFlexfield”的关键性弹性域,并引用它的其中之一的组合为”anasset key”或者”an asset keyflexfield”. 另一个示例Oracle总账和其它的EBS产品通常使用术语”账户”或者”GL账户”来引用会计弹性域组合。

组合示例

组合表(Combinations Table)

每个关键性弹性域都有一个对应的表,就是大家所知的组合表,其中弹性域存储了完整编码的列表,编码中的每个分段都有相应的一列,还有这个编码相应的唯一的ID号(一个编码组合ID号或者叫CCID)。然后,应用中的其它表有一列存储了这个编码的唯一ID号。比如,你有一个零件号码,就像PAD-YEL-11×14,”零件” 组合表存储了这个编码及其相应的ID 57494.如果你的应用允许你为这个零件做订单,你可能有一个“Orders”的表,其中存储了零件的订单。这个”Orders”表包含了一个单独的列其中存储了零件的ID 57494,而不是完整编制PAD-YEL-11×14的几个列。

组合Form(Combinations Form)

一个组合Form是仅用于维护关键性弹性域组合的form. 这个form的基础表是实际的组合表。这个表是对象(一个零件,或者一个物料,一个会计编码等等)的实体表.这个表包含了一个唯一的ID列(也叫做编码组合ID列)为主键,还有单个分段列,结构ID列和其它弹性域相关的列。这个组合form为这个表中的每个分段列包含隐藏字段,还有分段值连接(组合)的显示字段和实体需要的其它字段,比如连接描述字段。组合form有时也叫做维护form.

组合form示例

外键form

一个外键form是其潜在的基础表仅包含关键性弹性域信息的一个或者两个列,这些列都是关联组合表的外键列(通常关联组合表CCID列一个外键列,有时也有结构ID列)。外键form的目的常常和关键性弹性域本身几乎没有关系,而是用于附属关键性弹性域到其上面。比如,如果有你有一个代表零件号的关键性弹性域,你可以使用这个组合form来第一新的零件和维护已有的零件号。你会有很多外键form,其用来操作零件。你可能有一个form用来为零件创建订单,另一个form你用来接收零件,还有一个form用来发运零件。比如,事实上零件号表现为一个关键性弹性域对你为零件创建订单是不重要的。

外键form示例

范围form

一个范围form显示了一个范围的弹性域,它是一个特殊的弹出式窗口,其中包含了关键性弹性域分段的两个完整集合。一个范围弹性域为每个关键分段支持低和高的值而不是单个值。通常的,一个关键性弹性域范围在你的form上表现为两个相邻的弹性域,最左边的弹性域包含一个范围的低值,右边的弹性域包含了高值。用户在这个弹出式窗口上指定范围的低值和高值。比如,你可能想选择一个范围的零件号来运行一个报表。

范围form使用了一个特殊的表作为它的基础表,这个表为每个出现在组合表中的分段列包含了一个或者多个(通常两个)列。但是这些列不需要包含实际的分段值,并且这个表中行不需要包含实际有效的组合。通常这个表为每个分段包含两个列,叫做SEGMENTn_LOW和SEGMENTn_HIGH(这里n是分段列的编号),它们存储了每个分段的值的范围。

在Oracle EBS中,我们使用关键性弹性域范围来帮助你为关键性弹性域组合指定交叉验证规则。

注意:在计划你的范围弹性域的时候要小心。就像后面章节描述的,对于范围功能你不能使用ID-验证值集。ID-验证直接包含了指明ID列的表-验证值集;可翻译的独立和可翻译的依赖值集;使用精度的数字值集;日期,日期/时间,和时间值集。

一些form使用了变异的范围弹性域来为每个不必为弹性分段值的每个弹性域分段捕捉信息。比如,form可能为每个分段捕捉”Yes”或者”No”值(Assign FunctionParameter form显示一个弹出式弹性域窗口,这里你可以选择Yes或者No来指明是否你想为每个特别的分段分配一个值).

Form上范围弹性域的示例

动态插入

动态插入是插入一条新的有效的组合到关键性弹性域的组合表中,但是是从非组合form上插入的。如果你在设置关键性弹性域的时候允许动态插入,那么用户在外键form上通过弹性域窗口输入一个的分段值组合。如果这个新的组合满足任何存在的交叉验证规则,那么弹性域就会插入新的组合到组合表中,虽然组合表不是外键form的潜在的表。

对于一些关键性弹性域,动态插入可能是不允许的。有时对一个应用来说,允许用户从其它非组合form创建一个新的组合是没道理的。比如,用户在用输入订单form为零件创建订单的时候,用户就不应该能创建新的零件。应用就应该限制只允许用户使用创建零件form来创建新的零件编号。

动态插入对一些关键性弹性域来说在技术上是不能的。如果组合表包含了不是由弹性域维护的必填字段,那么动态插入就是不可能的。如果组合表包含了非弹性域的必填列,比如”计量单位”列,弹性域就不能从外键form上在组合表中完成整个行(因为外键form的基础表不是组合表)。弹性域不维护CCID列。

通常为每个关键性弹性域,如果有,就仅有一个组合form。在一些应用中,可能没有组合form,这样的话,你需要使用动态插入来创建组合。

注意:关于特定弹性域的动态插入的更多细节,请参考拥有这个弹性域的应用的User Guilder

可以在注册关键性弹性域form,分段form和关键性弹性域的定义form为关键性弹性域启用动态插入。

动态插入示例

弹性域限定规则(Flexfield Qualifier)

一个弹性域限定规则标示了一个关键性弹性域的特定分段。

通常一个应用需要为一些应用目的而识别特定分段的方法,比如安全或者计算需要。但是,因为关键性弹性域可以被自定义那么分段可以以任意顺序和任意标签出现,应用需要一些机制来识别分段,而不是用分段名称或者分段的使用顺序。弹性域限定规则就是为了这个目的。你可以把弹性域限定规则想象为一个分段的”识别标记”。

限定规则示例

比如,你的Oracle总账产品需要能识别会计弹性域中哪个分段包含balancing信息和哪个分段包含natural账户信息。因为你可以自定义会计弹性域,那么分段可以以任意顺序和任意标签出现,Oracle总账需要弹性域限定规则来决定你使用哪个分段用于natural账户信息。当你定义你的会计弹性域的时候,你必须指明你的哪个弹性域限定规则适用于哪个分段。

Oracle应用,比如Oracle人力资源,也使用弹性域限定规则。Oracle人力资源使用弹性域限定规则来控制谁可以访问弹性域分段中的机密信息。

一个分段限定规则用来识别在一个关键性弹性域中的一个单独分段的特殊类型的值。在Oracle EBS中,仅会计弹性域使用了分段限定规则。你可以把分段限定规则想象为一个值的”识别标记”。在会计弹性域中,分段限定规则是可以识别一个natual账户分段值的账户类型,并决定对特定的值是否运行detailposting或者budgeting.

很容易混淆两种类型的限定规则,你应该把弹性域限定规则想象为整个弹性域用于标记其分段的东西,并把分段限定规则想象为分段用于标记其值的东西。

EBS Form关键性弹性域中的其它的概念

(版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处;否则请与本人联系,违者必究)

你已经了解了下面这些基本弹性域的术语和概念:

l  弹性域(Flexfield)

l  分段(Segment)

l  结构(Structure)

l  值(Value)

l  验证(Validation(Validate))

l  值集(Value set)

你知道上面这些术语和概念同时适用于关键性弹性域和描述性弹性域,你还需要知道额外的仅适用于关键性弹性域的术语。

智能键(Intelligent Key)

一个智能键是由几个部分组成的编码,这里的一个或多个部分是有含义的。一个智能键”编码”能唯一确认一个对象,比如一个账户,一个资产,一个零件或者一个作业。智能键在应用中非常有用,因为它们比起唯一编码来说更容易为用户记住和使用。比如,一个零件的编号PAD-YEL-11×14就比一个唯一的零件编号57494更容易为用户记住。尽管如此,唯一的ID编码在关系型数据库应用中更容易维护,因为对ID号来说仅一列是必须的,但对智能键来说多列是必须的(编码中每一个部分或者分段都需要一列)。EBS产品使用带有唯一ID号码的弹性域来表示智能键。那就是说,终端用户看到的和工作用的是容易记住的智能键编码,但EBS产品在大多数表中仅需要存储一个隐藏的唯一ID编码。

重要:在整个文档中,在我们的示例图片中我们使用”PartNumber Key Flexfield”。我们使用这个示例因为它可以帮助我们演示使用关键性弹性域和它的行为,而不需要任何特别的会计,人力资源或者生产知识。尽管如实,但在EBS中没有实际的”Part Number KeyFlexfield”,而且你不应该和许多EBS产品比如库存使用的System Items 弹性域(Item弹性域)所混淆。

智能键示例

组合(Combination)

一个组合是一个特殊的完整编码,或者组成了编码的分段值的组合,其通常唯一标识了一个对象。比如,每个零件号码是一个单独的组合,就像PAD-YEL-11×14或者01-COM-876-7GB-LTN(这里”-”是分段分隔符)。如果你有10个零件,你需要定义10个组合。一个有效的组合是一个存在的或者目前可以被使用的新组合(那就是说,它没有过期,没有被禁用,并不违反交叉验证和安全规则).一个组合有不同的分段,这依赖于这个组合所使用的弹性域结构。任意一个组合仅关联到一个特殊的弹性域结构(分段的排列).

注意很多EBS产品(及其文档)不需要引用关键性弹性域组合为”组合”,它们可能使用实体的名字或者关键性弹性域本身引用组合。比如,Oracle资产使用叫做”Asset KeyFlexfield”的关键性弹性域,并引用它的其中之一的组合为”anasset key”或者”an asset keyflexfield”. 另一个示例Oracle总账和其它的EBS产品通常使用术语”账户”或者”GL账户”来引用会计弹性域组合。

组合示例

组合表(Combinations Table)

每个关键性弹性域都有一个对应的表,就是大家所知的组合表,其中弹性域存储了完整编码的列表,编码中的每个分段都有相应的一列,还有这个编码相应的唯一的ID号(一个编码组合ID号或者叫CCID)。然后,应用中的其它表有一列存储了这个编码的唯一ID号。比如,你有一个零件号码,就像PAD-YEL-11×14,”零件” 组合表存储了这个编码及其相应的ID 57494.如果你的应用允许你为这个零件做订单,你可能有一个“Orders”的表,其中存储了零件的订单。这个”Orders”表包含了一个单独的列其中存储了零件的ID 57494,而不是完整编制PAD-YEL-11×14的几个列。

组合Form(Combinations Form)

一个组合Form是仅用于维护关键性弹性域组合的form. 这个form的基础表是实际的组合表。这个表是对象(一个零件,或者一个物料,一个会计编码等等)的实体表.这个表包含了一个唯一的ID列(也叫做编码组合ID列)为主键,还有单个分段列,结构ID列和其它弹性域相关的列。这个组合form为这个表中的每个分段列包含隐藏字段,还有分段值连接(组合)的显示字段和实体需要的其它字段,比如连接描述字段。组合form有时也叫做维护form.

组合form示例

外键form

一个外键form是其潜在的基础表仅包含关键性弹性域信息的一个或者两个列,这些列都是关联组合表的外键列(通常关联组合表CCID列一个外键列,有时也有结构ID列)。外键form的目的常常和关键性弹性域本身几乎没有关系,而是用于附属关键性弹性域到其上面。比如,如果有你有一个代表零件号的关键性弹性域,你可以使用这个组合form来第一新的零件和维护已有的零件号。你会有很多外键form,其用来操作零件。你可能有一个form用来为零件创建订单,另一个form你用来接收零件,还有一个form用来发运零件。比如,事实上零件号表现为一个关键性弹性域对你为零件创建订单是不重要的。

外键form示例

范围form

一个范围form显示了一个范围的弹性域,它是一个特殊的弹出式窗口,其中包含了关键性弹性域分段的两个完整集合。一个范围弹性域为每个关键分段支持低和高的值而不是单个值。通常的,一个关键性弹性域范围在你的form上表现为两个相邻的弹性域,最左边的弹性域包含一个范围的低值,右边的弹性域包含了高值。用户在这个弹出式窗口上指定范围的低值和高值。比如,你可能想选择一个范围的零件号来运行一个报表。

范围form使用了一个特殊的表作为它的基础表,这个表为每个出现在组合表中的分段列包含了一个或者多个(通常两个)列。但是这些列不需要包含实际的分段值,并且这个表中行不需要包含实际有效的组合。通常这个表为每个分段包含两个列,叫做SEGMENTn_LOW和SEGMENTn_HIGH(这里n是分段列的编号),它们存储了每个分段的值的范围。

在Oracle EBS中,我们使用关键性弹性域范围来帮助你为关键性弹性域组合指定交叉验证规则。

注意:在计划你的范围弹性域的时候要小心。就像后面章节描述的,对于范围功能你不能使用ID-验证值集。ID-验证直接包含了指明ID列的表-验证值集;可翻译的独立和可翻译的依赖值集;使用精度的数字值集;日期,日期/时间,和时间值集。

一些form使用了变异的范围弹性域来为每个不必为弹性分段值的每个弹性域分段捕捉信息。比如,form可能为每个分段捕捉”Yes”或者”No”值(Assign FunctionParameter form显示一个弹出式弹性域窗口,这里你可以选择Yes或者No来指明是否你想为每个特别的分段分配一个值).

Form上范围弹性域的示例

动态插入

动态插入是插入一条新的有效的组合到关键性弹性域的组合表中,但是是从非组合form上插入的。如果你在设置关键性弹性域的时候允许动态插入,那么用户在外键form上通过弹性域窗口输入一个的分段值组合。如果这个新的组合满足任何存在的交叉验证规则,那么弹性域就会插入新的组合到组合表中,虽然组合表不是外键form的潜在的表。

对于一些关键性弹性域,动态插入可能是不允许的。有时对一个应用来说,允许用户从其它非组合form创建一个新的组合是没道理的。比如,用户在用输入订单form为零件创建订单的时候,用户就不应该能创建新的零件。应用就应该限制只允许用户使用创建零件form来创建新的零件编号。

动态插入对一些关键性弹性域来说在技术上是不能的。如果组合表包含了不是由弹性域维护的必填字段,那么动态插入就是不可能的。如果组合表包含了非弹性域的必填列,比如”计量单位”列,弹性域就不能从外键form上在组合表中完成整个行(因为外键form的基础表不是组合表)。弹性域不维护CCID列。

通常为每个关键性弹性域,如果有,就仅有一个组合form。在一些应用中,可能没有组合form,这样的话,你需要使用动态插入来创建组合。

注意:关于特定弹性域的动态插入的更多细节,请参考拥有这个弹性域的应用的User Guilder

可以在注册关键性弹性域form,分段form和关键性弹性域的定义form为关键性弹性域启用动态插入。

动态插入示例

弹性域限定规则(Flexfield Qualifier)

一个弹性域限定规则标示了一个关键性弹性域的特定分段。

通常一个应用需要为一些应用目的而识别特定分段的方法,比如安全或者计算需要。但是,因为关键性弹性域可以被自定义那么分段可以以任意顺序和任意标签出现,应用需要一些机制来识别分段,而不是用分段名称或者分段的使用顺序。弹性域限定规则就是为了这个目的。你可以把弹性域限定规则想象为一个分段的”识别标记”。

限定规则示例

比如,你的Oracle总账产品需要能识别会计弹性域中哪个分段包含balancing信息和哪个分段包含natural账户信息。因为你可以自定义会计弹性域,那么分段可以以任意顺序和任意标签出现,Oracle总账需要弹性域限定规则来决定你使用哪个分段用于natural账户信息。当你定义你的会计弹性域的时候,你必须指明你的哪个弹性域限定规则适用于哪个分段。

Oracle应用,比如Oracle人力资源,也使用弹性域限定规则。Oracle人力资源使用弹性域限定规则来控制谁可以访问弹性域分段中的机密信息。

一个分段限定规则用来识别在一个关键性弹性域中的一个单独分段的特殊类型的值。在Oracle EBS中,仅会计弹性域使用了分段限定规则。你可以把分段限定规则想象为一个值的”识别标记”。在会计弹性域中,分段限定规则是可以识别一个natual账户分段值的账户类型,并决定对特定的值是否运行detailposting或者budgeting.

很容易混淆两种类型的限定规则,你应该把弹性域限定规则想象为整个弹性域用于标记其分段的东西,并把分段限定规则想象为分段用于标记其值的东西。


相关内容

  • 专访顾伟:从机械工程师到资深软件工程师.再到微软MVP的蜕变
  • 发表于2014-05-27 08:52| 20382次阅读| 来源CSDN| 168 条评论| 作者张勇 社区之星顾伟访谈.NETC#云计算敏捷Windows Phone 8开源微软 摘要:顾伟曾是一名机械工程师,毕业后听从自己内心声音走上了软件编程道路.他利用平时休息时间,完成从编程新手.到合格的 ...

  • 网络协议编写的三层境界 - 程序即人生 - CSDN博客
  • 网络协议编写的三层境界收藏 此文于2011-03-02被推荐到CSDN首页 如何被推荐? write by 九天雁翎(JTianLing) -- blog.csdn.net/vagrxie 新浪微博 -- 腾讯微博 -- 讨论新闻组 -- 代码库 -- 豆瓣 免责声明 本文不会涉及到你该使用UDP还 ...

  • 简评游戏人工智能相关的中文书(上) - 赖勇浩的编程私伙局 - CSDN博客
  • 简评游戏人工智能相关的中文书(上)收藏 此文于2009-09-15被推荐到CSDN首页 如何被推荐? 赖勇浩(http://laiyonghao.com) 引言 因为心中的傻傻的梦想,高考我报了计算机专业:也因为傻傻的梦想,我在大学年代阅读了好些关于人工智能的图书:也因为傻傻的梦想,在工作后我把兴趣 ...

  • js 表格 万条记录
  • Js表格万条数据瞬间加载实现代码_javascript技巧_脚本之家 bar.attachEvent("onscroll", function () { ... bar.addEventListener("scroll", function () { ... ...

  • 用C语言写解释器(一)--我们的目标
  • 用C语言写解释器(一)--我们的目标 分类: 算法讨论 拍拍脑袋 用C语言写解释器 2009-10-18 16:24 11054人阅读 评论(17) 收藏 举报 语言cbasic编程input 目录(?)[+] 声明 为提高教学质量,我所在的学院正在筹划编写C语言教材.<用C语言写解释器> ...

  • 2010 我的求职经历(完结篇) - .NET技术 / ASP.NET
  • 新公司刚转正,谈谈自己换工作的面试经历,希望对找工作的朋友有用. 很早以前就想换工作(写过一次面试经历,请参考ASP.NET面试经历分享),但总是因为某些各种原因,未能付诸行动.离开原公司的主要原因还是个人发展的问题(原公司.老板对我还是很不错的),其它就不提啦. 毕竟在公司待了很久,我没有选择传统 ...

  • Linux信号与信号处理 - wangxg_7520的专栏 - CSDN博客
  • 信号(signal)是一种进程间通信机制,它给应用程序提供一种异步的软件中断,使应用程序有机会接受其他程序活终端发送的命令(即信号).应用程序收到信号后,有三种处理方式:忽略,默认,或捕捉.进程收到一个信号后,会检查对该信号的处理机制.如果是SIG_IGN,就忽略该信号:如果是SIG_DFT,则会采 ...

  • Java自学成才之路
  • [经典]JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向呢? 我的意见是,不要太过相信各种培训机构或是抢手文章的说法(包括我),当你要走向社会的时候,就 ...

  • 现代风险导向审计的基本理念与决策模型
  • 摘要:现代风险导向审计的一切业务流程再造都是为了提高审计质量.在对客户管理层信任缺失下,现代风险导向审计超越财务报告系统,获得基于经营状况(EBS).管理信息桥梁(MII)和管理层经营陈述(HBR)的"三方印证"证据,从而有效地控制了一直被忽视的非抽样审计风险.本文在厘定现代风险 ...