PLSQL开发报表入门
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
into p_row; EXIT WHEN cur_emp%NOTFOUND OR cur_emp%NOTFOUND IS NULL; print(p_row.id || ',' || p_row.employee_name || ',' || p_row.e_mail || ',' ||p_row.tel); end loop; close cur_emp; END main; -----------------------入口主函数结 束--------------end cux_emp_info_rep;
其中 fnd_file 包是 EBS 自带的。
上传 package 文件到应用 比如我们这里上传到
可以不用上传,在数据库中 编译后即可
/u01/VIS01/apps/apps_st/appl/cux/12.0.0/reports/ZHS
定义(并发)可执行 定义(并发)程序 定义参数:
添加并发程序到请求组 (请求组分配给责任,责任分配给用户)
运行请求Biblioteka 执行结果根据请求编号查找报表输出文件位置
select t.logfile_name,t.outfile_name from fnd_concurrent_requests t where t.request_id = 5877103;
cursor cur_emp(dno number) is
select employee_id as id,
last_name as employee_name,
em ail
as e_mail,
phone_number as tel
from employees
where department_id =dno order by employee_id; -----------------输出函数-------------------------- Author : XQQ -- Created : 2011/4/9 10:54:16 -- Purpose : 在控制台输出和在报表中输出 procedure print(content varchar2) is begin dbmsouttput.put_line(content);--控制台输出 fnd_file.put_line(FND_FILE.OUTPUT, content);--报表中输出 end print; ----------------------入口函数---------------------传入一个参数:部门编号 procedure main(errbuf OUT VARCHAR2, retcode OUT NUMBER, p_no in number) is --局部变量-p_row cur_emp%rowtype; begin open cur_emp(p_no); loop --循环 fetch cur_emp
procedure main(errbuf OUT VARCHAR2, retcode OUT NUMBER, p_no in number);
end cux_emp_info_rep;
包体:
create or replace package body cux_emp_info_rep is --定义局部变量
包头:
create or replace package cux_emp_info_rep is
-- Author : XQQ
-- Created : 2011/4/9 14:05:29 -- Purpose : 打印部门员工信息
procedure print(content varchar2);
报表输入参数
PL/SQL 开发报表
在 ERP 的报表开发中,可以用 PL/SQL 开发,现在很多公司的报表 90%的都是用 PL/SQL 开发的,PL/SQL 功能强大,可以灵活处理报表,这样的报表灵活性大。下面是总结可用 PL/SQL 开发报表的一些经验。
最基本的 PL/SQL 开发报表步骤
新建包
说明: 1.一个报表一个 PL/SQL 包,包名的命名为 cux_emp_info_rep。 2.在 print 函数中进行输出(输出到控制台和报表)。 3.cursor 的定义放在包体的最前面。 4.main 函数为该函数的入口地址。入口函数的特点为:前两个的定义必须为 errbuf OUT VARCHAR2, retcode OUT NUMBER,否则报错。 5.屏蔽不在包体外调用的函数声明。
其中 fnd_file 包是 EBS 自带的。
上传 package 文件到应用 比如我们这里上传到
可以不用上传,在数据库中 编译后即可
/u01/VIS01/apps/apps_st/appl/cux/12.0.0/reports/ZHS
定义(并发)可执行 定义(并发)程序 定义参数:
添加并发程序到请求组 (请求组分配给责任,责任分配给用户)
运行请求Biblioteka 执行结果根据请求编号查找报表输出文件位置
select t.logfile_name,t.outfile_name from fnd_concurrent_requests t where t.request_id = 5877103;
cursor cur_emp(dno number) is
select employee_id as id,
last_name as employee_name,
em ail
as e_mail,
phone_number as tel
from employees
where department_id =dno order by employee_id; -----------------输出函数-------------------------- Author : XQQ -- Created : 2011/4/9 10:54:16 -- Purpose : 在控制台输出和在报表中输出 procedure print(content varchar2) is begin dbmsouttput.put_line(content);--控制台输出 fnd_file.put_line(FND_FILE.OUTPUT, content);--报表中输出 end print; ----------------------入口函数---------------------传入一个参数:部门编号 procedure main(errbuf OUT VARCHAR2, retcode OUT NUMBER, p_no in number) is --局部变量-p_row cur_emp%rowtype; begin open cur_emp(p_no); loop --循环 fetch cur_emp
procedure main(errbuf OUT VARCHAR2, retcode OUT NUMBER, p_no in number);
end cux_emp_info_rep;
包体:
create or replace package body cux_emp_info_rep is --定义局部变量
包头:
create or replace package cux_emp_info_rep is
-- Author : XQQ
-- Created : 2011/4/9 14:05:29 -- Purpose : 打印部门员工信息
procedure print(content varchar2);
报表输入参数
PL/SQL 开发报表
在 ERP 的报表开发中,可以用 PL/SQL 开发,现在很多公司的报表 90%的都是用 PL/SQL 开发的,PL/SQL 功能强大,可以灵活处理报表,这样的报表灵活性大。下面是总结可用 PL/SQL 开发报表的一些经验。
最基本的 PL/SQL 开发报表步骤
新建包
说明: 1.一个报表一个 PL/SQL 包,包名的命名为 cux_emp_info_rep。 2.在 print 函数中进行输出(输出到控制台和报表)。 3.cursor 的定义放在包体的最前面。 4.main 函数为该函数的入口地址。入口函数的特点为:前两个的定义必须为 errbuf OUT VARCHAR2, retcode OUT NUMBER,否则报错。 5.屏蔽不在包体外调用的函数声明。