您的位置:首页 > 数据库 > Oracle

ORACLE EBS FORM 二次开发常用小技巧

2017-01-11 21:28 561 查看
1.锁住当前行 Set_Item_Instance_Property('main.import_flag', CURRENT_RECORD, UPDATE_ALLOWED, PROPERTY_OFF); 用在WHEN-NEW-RECORD-INSTANCE 或者POST-QUERY中。 同:app_item_property.set_property('MAIN.REF_COST',ALTERABLE,PROPERTY_ON) ; 2.设置记录的颜色 app_record.highlight('RED_REC'); 3.窗口居中 app_window.set_window_position('WINDOW_NAME','CENTER'); 4.最大化窗口时自动扩展文件夹数据块 在WHEN-WINDOW-RESIZED中添加以下代码即可。 if :system.event_window in ('MAIN') then app_folder.event('WHEN-WINDOW-RESIZED'); end if; 5.Form中调用forms基本参数方式 FND_FUNCTION.EXECUTE(FUNCTION_NAME=>'CUXSOSETUP', OPEN_FLAG=>'Y', SESSION_FLAG=>'Y', OTHER_PARAMS=>NULL); 其它参数传入OTHER_PARAMS即可。 6.动态设置当前行指定列的必输属性 Set_Item_Instance_Property(item_name, CURRENT_RECORD, REQUIRED,PROPERTY_TRUE); 如: if :CUX_WORKHOUR_EMP.ATTRIBUTE2 <> :CUX_WORKHOUR_EMP.ATTRIBUTE1 then Set_Item_Instance_Property('CUX_WORKHOUR_EMP.MODIFY_REASON', CURRENT_RECORD, REQUIRED,PROPERTY_TRUE); if :CUX_WORKHOUR_EMP.MODIFY_REASON is null then :CUX_WORKHOUR_EMP.MODIFY_REASON := '123'; :CUX_WORKHOUR_EMP.MODIFY_REASON := null ; fnd_message.set_string('请输入调整原因.'); fnd_message.show; end if; else if :CUX_WORKHOUR_EMP.ATTRIBUTE4 = :CUX_WORKHOUR_EMP.ATTRIBUTE3 then Set_Item_Instance_Property('CUX_WORKHOUR_EMP.MODIFY_REASON', CURRENT_RECORD, REQUIRED,PROPERTY_FALSE); end if; end if; 7.增加菜单 在 FORM级的when-new-form-instance APP_SPECIAL.INSTANTIATE('SPECIAL1','取消需求行', '', TRUE, 'LINE'); 8.LOV指定初始值后需在WHEN-NEW-RRECORD-INSTANCE用以下语句模拟验证, 否则会弹出验证框.代码如下: app_item_property.set_property('DETAIL_D.DEMAND_STATUS_DESC', ITEM_IS_VALID,property_on);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: