ITPub博客

首页 > IT职业 > IT生活 > 一些简单的6iReports注意点

一些简单的6iReports注意点

原创 IT生活 作者:liangzcl135 时间:2007-08-28 11:53:41 0 删除 编辑
向系统注册报表的时候,参数是无法根据顺序自动对应,需要我 们指定Token,即报表的参数名称;而对于Procudure是可以根据 位置自动对应的,即使定义的参数名称和Procedure参数名称不 一样。这个可以这样理解,Procudure的参数是明确的,参数有 多少个、顺序如何是由Procedure明确定义的;而对于报表来说 ,参数非常多,如果传了某个参数,就用该参数,否则Report用 本身的默认值,没有顺序和个数的强制要求;另外procedure有 且只有两个out put(return_code说明:0/success,1/warning ,2/error)参数,其他的in参数可以自动根据顺序对应 定义executable,相当于开发人员告诉系统管理员有这个功能可 以用,这个和定义form是一样的;注意report名字不用rtf后缀 ,procedure的格式为“包名.procedure”;上传到服务器的报表 后缀要小写,不然会报找不到文件 输出到log用fnd_file.put_line(fnd_file.log,msg),输出到 out put用fnd_file.put_line(fnd_file.output,msg) 定义Program的时候,日期值集要用fnd_standard_date;对应的 ,在Procedure和Report里面用Varchar2,然后自己转换,示例 代码如下l_end_date := trunc(to_date( p_end_date,'YYYY/MM/DD HH24:MI:SS')) + 1 - 1/(24 * 3600 );对于数据库中的日期字段,尤其是Transaction Date,不要用 trunc,这样会导致无法使用该日期的索引,一般是对参数进行 必要的处理,如上述的加1天减1秒 定义Table类型的值集的时候,有三个字段其中value和Id都为值 ,Id的优先级高于Value,但一般我们只定义Value 关联子集定义的语法为where field_name = $FLEX$. value_set_name;当然要求两个子集都在参数里面 注意父Field不要紧贴Child Group的循环框,否则该父Field会 显示在Child Group的循环框内部。我在字符模式下做Summary域 ,它紧靠Child Group的最下面边框,最后该Summary域就显示在 Child Group里面,覆盖Child Group的内容。如果出现错位情况 ,可以加一个框套住Father域 1 inch = 72 points;设计字符模式的报表,假如设置了width 为x,Character Mode Report Width为y,那么,x * 72 / y最 好为整数,这只是我个人的感觉。比如A4横向,x为11,y为132 ;Height的设置也需要符合这个要求。 为方便字符模式报表元素真正对齐到网格snap to grid,可以在 rulers中把grid spacing、number of snap points per grid spacing都设为1,这个很重要,可以省去我们无谓的对齐工作量 。不管怎么设,必须在开始设计layout之前设置;如果在设计 layout之后更改,会造成已经做好的Field没有对齐到网格。 Oracle默认没有进行Application用户初始化,所以没有环境变量,需要建一个用户参数 P_CONC_REQUEST_ID/Number/20,在Before Report触发器里加 SRW.USER_EXIT('FND SRWINIT');,在After Report触发器里加 SRW.USER_EXIT('FND SRWEXIT'); 帐户范围值集参考GL_SRS_LEDGER_FLEXFIELD[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7782906/viewspace-966454/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论
  • 博文量
    3
  • 访问量
    5761