Oracle 建议使用APP_ITEM_PROPERTY.SET_PROPERTY API函数取代SET_ITEM_PROPERTY (Oracle Forms built-in函数) 动态设置Item的属性。可以设置的属性有:
DISPLAYED
ENABLED
ENTERABLE
ALTERABLE (item instance level)
ALTERABLE_PLUS (item level),
REQUIRED
设置Item有两种方式:
根据Item_ID
根据Item_NAME。
与之相对应的是可以使用APP_ITEM_PROPERTY.GET_PROPERTY API函数取代GET_ITEM_PROPERTY (Oracle Forms built-in函数) 动态获取Item的属性。
设置Item-level和Item-instance-level属性时需特别的注意,Item-level属性影响所有的记录,而Item-instance-level属性只影响特定的记录(我的理解是当前行)。对于诸如 INSERT_ALLOWED,UPDATEABLE 和 NAVIGABLE 等属性来说,是能够在item level 和 item-instance level重复设置的。如果在item-level 设成OFF, 而在item-instance level设成ON , 重复设置的最终效果仍是OFF。如果同时设了ALTERABLE 和ENABLED ,可能最终效果也不会像预期的那样。所以碰到这样的情况时要特别小心