Oralce开发心得整理_Oracle数据库_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

Oralce开发心得整理

作者:黑客防线网安Oracle维护基地 来源:黑客防线网安Oracle维护基地 浏览次数:0

黑客防线网安网讯:  实在对象如表格、Sequence、索引等建在本应用对应的用户表空间中,其他对象如视图、别名创建在Apps下,常见错误是新手把表建在APPS下,以后又来建别名,这个时候删除别名时会报对象不存...
  实在对象如表格、Sequence、索引等建在本应用对应的用户表空间其他对象如视图、别名创建在Apps下常见错误是新手把表建在APPS下,以后又来建别名,这个时候删除别名时会报对象不存在,而建别名的时候又报对象已存在
  
  如果把脚本保存在文件里面,注意一个块比如一个创建视图的语句不要有空行,否则会出现如下情况:把语句拷贝到SQL Window能正常运行,用@执行文件却报错
  
  如果要执行execute_query,注意要go_block到适当的Block,但是go_block是个受限过程,并不一定都能成功
  
  Master-detail关系
  
  block both are database block
  each block has one item based on database displayed
  
  在PL/SQL Develop中没有环境变量,所以如果要查询多组织的View,需要先执行设置环境变量函数
  BEGIN
  fnd_client_info.set_org_context('83');
  END;
  
  GLOBAL变量对于所有form有效(可能是同一个应用,这个尚未验证),而不仅仅是你所开发的form
  
  变量比如Global和Parameter的初始化应该在pre-form里面,在when-new-form-instance里面初始化不行,因为when-new-form-instance是在进入第一个导航块的第一个item之后才促发的
  
  没有属性指名Block的记录数,不过可以通过GET_BLOCK_PROPERTY(QUERY_HITS) 取得查询到的记录数
  
  hide_view并没有真正hide一个画布,只是放到最下层,所以如果上层的画布没有完全覆盖下层画布,下层的画布很可能用户还看得到;show_view则是把画布放在最上层
  
  lov验证的时候是验证第一个可见的列,并且会把其他的返回值返回给各个Item,而不是仅仅验证而已
  
  lov的查询一般是针对第一列,但是如果我们把%放在最前面,则可以查询所有列
  
  用Execute_query执行查询的时候,会把Copy Value From Item里面的那个Item的值自动作为查询条件当创建记录的时候也会直接用该值初始化,而且不改变记录的状态在更新记录的时候不知道会不会Copy过来尚未验证。Get_Item_property的时候用ENFORCE_KEY属性,但不能Set。该属性在Master-detail设置的时候自动创建,删除的时候自动删除。如果不希望Copy Value From Item影响查询结果,可以在Pre-Query里面把Item的值设为null。
  
  app_query.reset('block_name');如果第一次调用,会把当前的DEFAULT_WHERE,然后什么都不做,以后再来调用的时候则会把第一次设置的DEFAULT_WHERE用set_block_property('SAA_HEADERS',DEFAULT_WHERE,...)设置回来,具体请参考app_core库
  
  When-create-record的时候给Item赋值不改变记录状态
  
  Sequence,如果我们在Item的Initial Value里面赋值,那么假如用户Focus To新记录,又回到老记录,如此反复,Sequence会不断变大的
  
  SQL Order BY的时候null值排在最后,这个一般不符合实际要求,可以这样解决ORDER BY nvl(Geography_Code,chr(0))解决
  
  Trigger顺序1
  
  pre-commit
  块1的pre-insert,on-insert,post-insert
  块2的pre-insert,on-insert,post-insert
  ...
  post-forms-commit
  
  Trigger顺序2
  
  when-list-changed在前,Validation item在后,因为Validation item是在要离开这个item的时候才促发的
  
  Trigger顺序3
  
  pre-form/when-create-record/pre-block/when-new-forms-instance/when-validate-record/on-insert/post-forms
  
  当定位到主块的一个记录,会促发子块的when-clear-record事件和when-create-record事件,问题是如果主块的是新记录(未保存),在子块的when-create-record里面取主块的任何东西,居然是主块的上一次获得焦点的记录的东西;连用取块的当前记录也是上一次获得焦点的记录
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-11936-1.html
网站维护教程更新时间:2012-03-23 00:26:18  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer