oracle apex 开发技巧
**1.JavaScript中常用的方法**
**1.1区域数据刷新**
1刷新区域数据(当目标区域没有数据时刷新无效)
var model =
apex.region("SALES_MONTH_END").widget().interactiveGrid("getViews").grid.model;
model.fetchRecords(model._data);
2刷新选中数据
var myGrid =
apex.region("SALES_CREATION").widget().interactiveGrid("getViews").grid;
myGrid.model.fetchRecords( myGrid.getSelectedRecords());
3刷新区域
apex.region("myRegionStatidID").refresh();
**1.2锁定屏幕**
使用情况,当调用的ajax需要用户等待且不能做其他操作时,建议使用
效果:
wait_icon_display = apex.widget.waitPopup(); //加锁
wait_icon_display.remove(); //解锁
**1.3消息的展示**
1弹出
apex.message.alert(json_result.error_message);
2 右上角提示
apex.message.showPageSuccess('Month End Success');
//还有showerror,这里显示绿色,error显示红
**1.4给出提示框让用户选择是否继续**
apex.message.confirm(json_result.error_message, function (okPressed) {
if (okPressed) { //确认继续
}
}
**1.5获取对应时区时间**
function getLocalTime(i) {
if (typeof i !== 'number') return;
var d = new Date();
//得到1970年一月一日到现在的秒数
var len = d.getTime();
//本地时间与GMT时间的时间偏移差(注意:GMT这是UTC的民间名称。GMT=UTC)
var offset = d.getTimezoneOffset() * 60000;
//得到现在的格林尼治时间
var utcTime = len + offset;
return new Date(utcTime + 3600000 * i);
}
**1.6延时执行**
setTimeout(function(){
}, 1500);
**1.7重定向**
var url = 'f?p=&APP_ID.:17:&APP_SESSION.::::P17_REQUEST_CODE:'+requestCode;
apex.navigation.redirect(url,true);
//这种直接拼接url的方式可能会出现报错,提示目标界面参数必须具有校验和,建议使用4.3的方法获取url进行跳转。
**2.PLSQL中常用方法**
**2.1发送邮件**
**2.2通过session存取变量**
**2.3获取对应页面的URL**
SELECT APEX_PAGE.GET_URL (p_page => 1,
p_items => 'P1_X,P1_Y',
p_values => 'somevalue,othervalue' ) f_url_1,
APEX_UTIL.PREPARE_URL('f?p=&APP_ID.:1:&APP_SESSION.::::P1_X,P1_Y:somevalue,othervalue')
FROM DUAL
使用APEX_PAGE.GET_URL多参数使用逗号拼接的方式,两种方法等价
**END**
作者:杜朋朋
审核:邓金边
编辑:朱思聪