原因:
set_item_property('RTN_LOTS.LOT_NUMBER', displayed, property_false);
设置某个item的displayed属性为property_false隐藏该item后,会自动设置enabled属性为property_false
即将item设置为禁止项
后面即使再displayed属性为property_ture显示该item,也没办法在设置insert_allowed等属性,会报错FRM-41316
正确的显示隐藏item的方式
PROCEDURE display(p_item VARCHAR2, p_yes_no VARCHAR2) IS
BEGIN
IF p_yes_no = 'Y' THEN
set_item_property(p_item, displayed, property_true);
set_item_property(p_item, enabled, property_true);
set_item_property(p_item, navigable, property_true);
set_item_property(p_item, insert_allowed, property_true);
set_item_property(p_item, update_allowed, property_true);
ELSIF p_yes_no = 'N' THEN
set_item_property(p_item, displayed, property_false);
END IF;
END;