Report_SRW工具的基本用法(概念)
2014-05-31 Created By BaoXinjian
1. SRW的主要作用
控制报表的运行 -> srw.program_abort
在运行时输出信息 -> srw.message
执行DDL语句 -> srw.do_sql
调用用户出口 -> srw.reference
动态地设置格式 -> srw.set_attr
Report前后初始化 -> srw.userexist() ->初始化之后才能使用fnd_profile或者其他
2. SRW.PROGRAM_ABORT: 控制报表的运行
RAISE SRW.program_abort;
3. SRW.MESSAGE:在运行时输出信息
4. SRW.DO_SQL & SRW.DO_SQL_FAILURE: 执行DDL语句
5. SRW.REFERENCE & SRW.USEREXIT:调用用户出口
1. Report中实现本位币和外币转换格式化
BEGIN
SRW.REFERENCE(:C_INV_DUE_AMT_3);
SRW.REFERENCE(:C_BASE_CURRENCY_CODE);
SRW.REFERENCE(:P_MIN_PRECISION);
SRW.USER_EXIT(‘FND FORMAT_CURRENCY
CODE=”:C_BASE_CURRENCY_CODE”
DISPLAY_WIDTH=”15″
AMOUNT=”:C_INV_DUE_AMT_3″
DISPLAY=”:C_INV_DUE_AMT_3_F”
MINIMUM_PRECISION=”:P_MIN_PRECISION”‘);
RETURN(:C_INV_DUE_AMT_3_F);
END;
2. 获取账户弹性域说明
SRW.USER_EXIT('FND SRWINIT');
if :P_ACCOUNT_F is not null and :P_ACCOUNT_T is not null then
srw.reference(:P_COA);
srw.user_exit('FND FLEXSQL CODE="GL#"
NUM=":P_COA"
APPL_SHORT_NAME="SQLGL"
OUTPUT=":P_ACCOUNT_WHERE"
MODE="WHERE"
DISPLAY="ALL"
OPERATOR="BETWEEN"
OPERAND1=:P_ACCOUNT_T
OPERAND2=:P_ACCOUNT_F
TABLEALIAS="GCC"');
if :P_ACCOUNT_WHERE is not null then
:P_ACCOUNT_WHERE := ' and ' || :P_ACCOUNT_WHERE;
end if;
end if;
6. SRW.SET_ATTR:动态设置格式
7. SRW.:Report前后初始化
BeforeReport初始化:SRW.USER_EXIT('FND SRWINIT');
AfterReport退出:SRW.USER_EXIT('FND SRWEXIT');
Thanks and Regards
ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建