0

许多 Oracle EBS 表包括、 和列ENABLED_FLAG,这些列用于确定该行在应用程序中是否可用。START_DATE_ACTIVEEND_DATE_ACTIVE

例如,要从表中获取当前查找代码的FND_LOOKUP列表,我将运行以下 SQL 查询

select lookup_code 
from fnd_lookups fl
where and fl.enabled_flag = 'Y' and sysdate between nvl(fl.start_date_active,sysdate) and nvl(fl.end_date_active,sysdate)

我的问题是为什么有一个ENABLED_FLAG给定的START_DATE_ACTIVEandEND_DATE_ACTIVE似乎足以确定该行是否应该在应用程序中可用?还有其他ENABLED_FLAG我没有看到的目的吗?

4

1 回答 1

0

正如马修所提到的——这主要是历史性的。FND_LOOKUPS 之类的表在代码中被引用了数千次。因此,没有简单的方法来改变现有的语义——你只能添加新的语义。

从好的方面来说,您只需要在允许选择值时执行此操作,而不是在加入时...

于 2018-04-28T03:10:27.027 回答