客制化右键菜单
1、 首先如果是要为某个ITEM,另外开发一个右键菜单。这个需要直接按照FORM的开发教程,自定义一个POPUP菜单就可以了。但本文讲的在EBS所有的快捷菜单上,额外增加所需的菜单按钮。也就是要图上所示的快捷菜单上增加菜单按钮。
2、 在FROM-LEVEL增加自定义触发器(名字规则为:POPUP+N)
3、 ITEM的“PRE-POPUP-MENU”触发器上初始化菜单。
APP_POPUP.INSTANTIATE('POPUP1','First Entry');
APP_POPUP.INSTANTIATE('POPUP10','SECONED Entry',TRUE,'LINE');
APP_POPUP.INSTANTIATE('POPUP3','THREE Entry',FALSE,NULL);
4、 如果是整个BLOCK的ITEM都需要客制化快捷菜单,可以在BLOCK的“PRE-POPUP-MENU”定义。
APP_POPUP.INSTANTIATE('POPUP1','global');
调用EBS日期控件
1、 首先将ITEM的LOV属性设置为“ENABLE_LIST_LAMP”、列表验证属性设置为“否”
2、在ITEM的“KEY-LISTVAL”解发器下加入对下代码:
BEGIN
calendar.show();
END;
3、注意:ITEM对应数据库类型必须是DATE类型,否则会报frm-40700错误。效果如下:
查询数据时限定语言环境
EBS是个多语言的业务系统,界面上只查询到一条记录,实际上后台数据表是多条记录的。如:值集表。
select * from apps.FND_FLEX_VALUES_TL t, apps.FND_FLEX_VALUES B
where B.FLEX_VALUE_ID = T.FLEX_VALUE_ID
and t.language = userenv('LANG')
实现历史记录查询
1.要实现的效果
2.在定义数据表时,必须加入以下五个字段:
即:CREATED_BY NUMBER、CREATION_DATE DATE、LAST_UPDATED_BY NUMBER、LAST_UPDATE_DATE DATE、LAST_UPDATE_LOGIN NUMBER 网上有些文章说还必须定义主键、序列。但如果仅实现此功能是不需要的。当然从数据库设计方面来说,这些定义也是必须的。
3、在数据块的PRE-INSERT、PRE-UPDATE触发器中加入代码 FND_STANDARD.SET_WHO;