图片的引用
有时候我们希望在APEX页面添加一些图片。要做到这个其实只要做简单的两步。
第一步:把照片上传存放到共享组件->静态应用程序文件里。然后要记住引用的位置。
第二步:就是把照片的引用放到所需的页面里。
或者可以直接在编辑应用程序定义->应用程序图标里用来改掉登陆界面的图标。
不过别忘了下载并修改app-icon.css里面的图标文件,并上传覆盖原来的。
又或者可以直接在共享组件->用户界面里用来改掉收藏夹的图标。
文件的上传和下载
如果想把文件保存在数据库里,并且可以正确下载。光有BLOB字段是不行的。还需要有字段记录文件的MIME类型,文件名,字符集(可选)。如果是图片的话以上三个类型可不需要。我们先建一个表如下。其中MIMETYPE字段不能太短,建议不少于100。
创建表单的时候BLOB项的设置。
创建交互表时候BLOB列的设置。
设置正确的话,下载的文件名能够正确显示。
如设置不正确的话,下载的文件名会显示不正确。
中文拼音排序
APEX里对中文的排序不友好,不是按照我们习惯的拼音来排序的。其实不是APEX的问题,是Oracle数据库的问题。这个可用用NLSSORT函数来解决。
order by nlssort ("列名",'NLS_SORT = SCHINESE_PINYIN_M')
按条件查询小技巧
很多时候,第一次打开页面的时候会做全表查询,然后再输入查询条件进行模糊查询。可以创建一文本字段项(例如P6_SEARCH)。在查询语句里加入以下的这段查询条件。然后做一个动态操作刷新查询。
where :P6_SEARCH is null or CUSTOMER_NAME like '%'||:P6_SEARCH||'%'
加快数据加载的速度
在共享组件->数据加载定义里对打开“跳过验证”的开关。
用CSS设置交互报表的列宽
第一步,先在当前页面的属性里编辑加个CSS的定义。
第二步,在你要改列宽的字段的属性里做个描述。
用这种方法,可以在page的属性的CSS inline定义多个width的属性,然后使用到不同的列上。