值集&快速编码(Lookup_code)

原创 2013年12月04日 23:04:08

--值集 SELECT ffv.flex_value, ffv.description   FROM fnd_flex_values_vl ffv, fnd_flex_value_sets ffs  WHERE ffv.flex_value_set_id = ffs.flex_value_set_id    AND ffs.flex_value_set_name = 'HSST_ACCOUNT' --值集名;    AND ffv.enabled_flag = 'Y'    AND SYSDATE BETWEEN nvl(ffv.start_date_active, SYSDATE) AND        nvl(ffv.end_date_active, SYSDATE + 1)        and ffv.flex_value = '1001';--value

--客户化LOOKUP_CODE SELECT v.lookup_code, v.tag   FROM cux_lookup_codes v  WHERE v.lookup_type = 'CUX_INV_TRANSACTION_SOURCE_OMS' --lookup_type    AND v.enabled_flag = 'Y'    AND v.lookup_code = 'IC-OUT';--lookup_code    --系统LOOKUP_CODE SELECT t.meaning,        t.lookup_code FROM fnd_lookup_values_vl t WHERE t.lookup_type = '1099 VENDOR EXCEPTION' AND t.enabled_flag = 'Y' AND SYSDATE BETWEEN NVL(t.START_DATE_ACTIVE,trunc(SYSDATE)) AND NVL(t.END_DATE_ACTIVE,SYSDATE + 1) AND T.LOOKUP_CODE = 'FOREIGN VENDOR';

SELECT ffv.flex_value, ffv.description
  FROM fnd_flex_values_vl ffv, fnd_flex_value_sets ffs
 WHERE ffv.flex_value_set_id = ffs.flex_value_set_id
   AND ffs.flex_value_set_name = 'BZ_ACCOUNT'--值集名
   AND ffv.enabled_flag = 'Y'--启用
   AND ffv.summary_flag = 'N'--负数是否允许
   AND SYSDATE BETWEEN nvl(ffv.start_date_active, SYSDATE) AND
       nvl(ffv.end_date_active, SYSDATE + 1)--有效期
   AND ffv.attribute1 IS NOT NULL
   AND substr(ffv.compiled_value_attributes, 5, 1) = 'E'


关于值集和快速编码的定义,参考网上的资料如下

值集的概念

第一个问题,什么是值集?

问同事,同事的回答是值的集合,我找了很久来反驳这句话(喜欢钻牛角尖的缘故吧,

呵呵),却没有找到。那么,我就认可这种说法了

其实这都是中文的说话,你想想人家 Oracle一开始出来的时候,肯定只有英文的,值

集的英文叫 Value Set,泛泛解释为:值集合,对于 Oracle中的 Value,是指具体或者变化的

某一个值,Set 是个集合,联合起来,具体的或者变化的很多值的集合,即值集。加定语太

多,画蛇添足,呵呵,不过这正好说明了值集的内容。大家估且认为值集就是值的集合吧

二、值集的验证类型

首先,我们来了解一下值集的验证类型

以下是影响用户输入以及使用段或参数值方式的几种验证类型:

  无(根本无需验证)

  独立

  从属

 

  特殊(高级)

  成对(高级)

  可转换独立

  可转换从属

在允许用户输入任意值时,只要该值符合值集格式规则,您就可以使用“无”类型值集。

也就是说,此值不能超过您为值集定义的最大长度,以及它必须符合该值集的任何格式要求。

例如,如果值集不允许使用字母字符,则用户无法输入值  ABC,但是可以输入值  456(对

于最大长度为  3  的值集而言)。否则,将不验证使用此值集的段值,并且这些段值也不会有

说明。

由于不验证“无”值集,因此使用此值集的段不为用户提供值列表。使用此值集的段(即,

非验证的段)不能使用弹性域值安全性规则来限制用户输入的值。

独立

“独立”值集提供了预定义的段值列表。这些值可能有关联的说明。例如,值  01 的说

明可能为“公司  01”。此值集中值的含义与其它任何段的值无关。独立值存储在   Oracle

Application Object Library  表中。您可以通过  Oracle Applications  窗口中的“段值”定义独

立值。

验证表值集提供了类似于独立集的预定义值列表,但是其值存储在应用表中。您可以定

义使用哪些表,并定义  WHERE 子句来限制值集要使用的值。一般来说,如果您在应用表

中维护了表值(例如,由“定义供应商”表单维护的供应商名称表),则可以使用验证表值

集。表验证还提供了某些高级功能,如允许段从属于相同结构中多个前面的段。

从属

从属值集类似于独立值集,只是列表中的可用值和给定值的含义从属于在弹性域结构的

前面段中选定的独立值。您可以将从属值集视为小值集的组合,每个小值集适用于相应的独

立值集中每个独立值。在定义独立值集的从属值集之前,您必须定义独立值集。您可以在“段

值”窗口中定义从属值,您的值将存储在  Oracle Application ObjectLibrary 表中。请参阅:

独立值与从属值之间的关系

特殊值集和成对值集

特殊值集和成对值集提供了一种允许“在弹性域中嵌弹性域”的机制。这些值集主要用

于“标准请求提交”参数。对于正常的弹性域段,您通常不使用这些值集。

特殊值集和成对值集使用您定义的特殊验证例行程序。例如,您可以定义验证例行程序,

以便提供另一个弹性域作为单个段的值集,或提供一个范围弹性域作为段对的值集。

可转换独立和可转换从属

可转换独立值集类似于提供预定义的段值列表的独立值集。但是,您可以使用转换的值。

可转换从属值集类似于某些从属值集,这些从属值集中列表内的可用值和给定值的含义

从属于弹性域结构前面的段中选定的独立值。但是,您可以使用转换的值。

弹性域值安全性不能与可转换独立值集或可转换从属值集一起使用。

对于格式验证,可转换值集必须使用格式类型字符。最大长度不大于  150。“仅限于数

字”选项和“右对齐和填零数字”选项不能与可转换值集一起使用。

范围弹性域不能使用可转换独立值集或可转换从属值集。

您不能创建具有可转换独立值集或可转换从属值集的层次结构或累计组。

注:“会计科目弹性域”不支持可转换独立值集和可转换从属值集。

 

 

 

fnd_lookup_values表示干什么的?
1
系统给提供的记录一些值的地方,可以用来设计LOV用
2
是不是通过lookup_type来区别记录的种类
1
,在系统设置完后,就可以用了:
      lookup_type
是你定义的名字

       LOOKUP_CODE
指的是这个类别下的值
1
相当于映射表
hash_map
的表实現

1.现状:oracle通常对一些字段的描述放在tableFND_LOOKUP_VALUES中,当我们知道描述字段栏位值时候,可以通过值进行查询。
2. table
FND_LOOKUP_VALUESFND_LOOKUP_TYPES,  view: MFG_LOOKUPS

3.举例说明:
A.
对物料表MTL_SYSTEM_ITEMS_B中对制造件或购买件关联,对应后台字段为 12
B.
执行sql

SELECT * FROM FND_LOOKUP_VALUES FLV WHERE (FLV.MEANING LIKE '
制造' or FLV.MEANINGLIKE '购买') order by 1;
C.
根据LOOKUP_TYPE有两行重复及LOOKUP_CODE值为12

可以推断出:只有两个LOOKUP_TYPE可能是MTL_ITEM_ORIGINATION2MTL_PLANNING_MAKE_BUY
D.
分别一下执行sql,大致可以推出为MTL_PLANNING_MAKE_BUY,就是所要的
;
SELECT * FROM FND_LOOKUP_VALUES FLV WHEREFLV.LOOKUP_TYPE='MTL_ITEM_ORIGINATION2';

SELECT * FROM FND_LOOKUP_VALUES FLV WHERE FLV.LOOKUP_TYPE='MTL_PLANNING_MAKE_BUY';
E.
客户化开发尽量用快速编码的方式定义,以便后期维护更容易,当然可以放置各个模块下,

但是可能受权限限制使开发人员找不到。
路径为:Application Developer-->Application-->Lookups-->Common

 

相关文章推荐

Lookup Code快速编码

 1、查询lookup code语句: SELECT t.meaning,        t.lookup_code FROM fnd_lookup_values_vl t WHER...
  • gh320
  • gh320
  • 2013年12月03日 10:54
  • 1671

Form开发中组件控制的几个常用方法

在Oracle EBS 的Form二次开发中,经常需要灵活的来控制某些组件是否可用、是否可见;有时希望某些字段的值自动生成或者手动输入;有时又希望能够根据不同的职责、不同的用户等来设置不同的行为控制。...

EBS值集定义

1、表验证值集 步骤: (1)进入职责应用产品员--应用产品--验证--请求集 (2).1输入值集名,说明,列表类型:值列表,格式类型:字符,最大尺寸:输入需要的大小 (2).2验证类...

Oracle 值集的设定

Oracle EBS系统中允许系统开发人员定义自己的值集,以满足不同的需要。现在,我们就来讨论如何在EBS系统中定义自己的值集。 在EBS系统中定义自己的值集步骤很简单: 1.进入到系统管理员(Sys...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

EBS中lookup设置

EBS的lookup在很多地方都有使用。比如说,应用开发者,采购管理,等等。一般的不同的模块使用的都是两张表fnd_lookup_types和fnd_lookup_values,生成不同的视图。例如,...

EBS中常用的FND表

FND_APPLICATION: Stores applications registered with Oracle Application Object Library.FND_APPLICATI...

EBS中lookup设置

EBS的lookup在很多地方都有使用。比如说,应用开发者,采购管理,等等。一般的不同的模块使用的都是两张表fnd_lookup_types和fnd_lookup_values,生成不同的视图。例如,...

fnd_lookup_values表示干什么的?

fnd_lookup_values表示干什么的? 1系统给提供的记录一些值的地方,可以用来设计LOV用 2是不是通过lookup_type来区别记录的种类 1对,在系统设置完后,就可...

oracle视图总结(创建、查询、修改、删除等)

视图定义: — —视图是一种虚表。 — —视图建立在已有表的基础上, 视图赖以建立的这些表称为基表。 — —向视图提供数据内容的语句为 SELECT 语句, 可以将视图理解为存储起来的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:值集&快速编码(Lookup_code)
举报原因:
原因补充:

(最多只允许输入30个字)