首页 > 数据库技术 > 详细

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

时间:2017-01-12 11:56:38      阅读:439      评论:0      收藏:0      [点我收藏+]

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);

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

原文:http://www.cnblogs.com/quanweiru/p/6275272.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!