maky 发表于 2012-10-22 14:44:26

什么是Value Set,它的作用是什么

    接触过ORACLE EBS的人都知道INV中有Value Set的设置,具体如何来理解呢,先从概念开始讲起。
Value Set的中文翻译是值集(很多值的集合),给大家看张图表:

Value Set NameDescriptionList TypeSecurity TypeFormat TypeMaximum SizePrecisionNumber OnlyUppercase OnlyRight-justify and Zero-fill NumbersMin ValueMax ValueValidation TypeIndependent
Value SetTable NameValue NameValue TypeValue Size
INV_Sub_Type List of ValuesNo SecurityChar10 NoNoNo  Independent     
INV_Keeper List of ValuesNo SecurityChar50 NoNoNo  Table PER_ALL_PEOPLE_FFULL_NAMEVarchar2240
INV_Category1 List of ValuesNo SecurityChar30 NoNoNo  Independent     
INV_Category2 List of ValuesNo SecurityChar30 NoNoNo  Independent     
INV_Category3 List of ValuesNo SecurityChar30 NoNoNo  Independent     
INV_Item List of ValuesNo SecurityChar20 NoYesNo  None     
INV_OM_Category1 List of ValuesNo SecurityChar30 NoNoNo  Independent     
INV_OM_Category2 List of ValuesNo SecurityChar30 NoNoNo  Independent     

List of Values(LOV)反应了Value Set作用,与Value Set相关的属性有很多,比如,它存储的值类型,内容大小,大小写要求,是否右对齐且不足大小的地方以0替补,如果是数值类型是否制定最大最小值,验证类型 。
这里强调验证类型是Value Set的重点。
常用的验证类型有:
验证类型:说明举例

独立提供了预定义的段值列表。这些值可能有关联的说明。例如值01 的说明可能为“公司01”。此值集中值的含义与其它任何段的值无关。独立值存储在Oracle Application Object Library 表中。您可以通过Oracle Applications 窗口中的“段值”定义独立值。
Value SetValueDescription
INV_Sub_TypeCANCEL取消
CSD維修品/Sample倉
GOOD良品倉
HUBHUB倉(達方、客戶)
IQC進料檢驗倉
MIT在途
NG不良品倉
OBSOLETE呆料倉(廢棄的,不能使用)
PPM政策性備料
PURGE清除
RMARMA-退貨
SALVAGE廢料倉(可利用的廢品)
STAGING表示已picked confirmed 但未ship confirm的庫存(每個org會預設一個)
WIP產線在製品

表验证表值集提供了类似于独立集的预定义值列表但是其值存储在应用表中。您可以定义使用哪些表并定义WHERE 子句来限制值集要使用的值。一般来说如果您在应用表中维护了表值例如由“定义供应商”表单维护的供应商名称表则可以使用验证表值集。表验证还提供了某些高级功能如允许段从属于相同结构中多个前面的段
Table NameValue NameValue TypeValue Size
PER_ALL_PEOPLE_FFULL_NAMEVarchar2240

从属从属值集类似于独立值集只是列表中的可用值和给定值的含义从属于在弹性域结构的前面段中选定的独立值。您可以将从属值集视为小值集的组合每个小值集适用于相应的独立值集中每个独立值。在定义独立值集的从属值集之前您必须定义独立值集。您可以在“段值”窗口中定义从属值您的值将存储在Oracle Application Object Library 表中。请参阅独立值与从属值之间的关 定义一父值集 Mobile_Type一子值集Mobile_Code  定义的过程非常简单 父值集独立值集定义值为多普达和诺基亚 子值集从属值集从属为Mobile Type默认值为None/None 一般从属值集都用此定义 值为多普达- 838/830 ; 诺基亚- s60/n60  在实际运用中只需要两值集前后调用就行先把父值集保存好再定义子值集。 看看实际运用的效果 优点非常方便的进行从属处理但也有其局限性如只能定义为独立值集。
特殊值集和成对值集特殊值集和成对值集提供了一种允许“在弹性域中嵌弹性域”的机制。这些值集主要用于“标准请求提交”参数。对于正常的弹性域段您通常不使用这些值集。 特殊值集和成对值集使用您定义的特殊验证例行程序。例如您可以定义验证例行程序以便提供另一个弹性域作为单个段的值集或提供一个范围弹性域作为段对的值集。 在定义特殊验证值集时您需要指定两项内容事件和函数。事件是函数产生的时间函数是对键弹性域用户出口的调用。例如一旦用户输入了一个值就会产生“验证”事件而且函数会验证该值。 那么我们接下去要谈的是详细的来谈谈各种事件编辑 POPID(R) ,
验证 VALID(R) ,
装入 LOADID(R)  
至于   插入/更新,查询 ,编辑/编辑,列表值   这是为了未来的扩展预先定义的此处不详细讲述
可转换独立和可转换从可转换独立值集类似于提供预定义的段值列表的独立值集。但是您可以使用转换的值。 可转换从属值集类似于某些从属值集这些从属值集中列表内的可用值和给定值的含义从属于弹性域结构前面的段中选定的独立值。但是您可以使用转换的值。

页: [1]
查看完整版本: 什么是Value Set,它的作用是什么