在oracle中通过字段信息生成xml文件
来源:互联网 发布:人类起源于非洲 知乎 编辑:程序博客网 时间:2024/05/18 13:27
一般地,在开发xmlp的时候,我们要先用report builder制作rdf模板,然后上传rdf到客户化应用下的reports文件夹下,通过并发请求,输出xml数据,然后保存成xml文件,或者直接将请求输出的out文件改后缀为xml,同样得到输出数据的xml文件,接着通过加载xml数据制作rtf模拟,定义数据和模板,再次处理并发请求,以求得到我们想要输出格式的报表。(其中的详细过程就不再啰嗦了,想必都已经很熟了)
但是如果我们的开发环境中没办法上传rdf模板的时候,我们就要用其他的办法输出得到xml文件了,这里是介绍了一种使用plsql通过字段信息生成xml文件的方法:
dbms_xmlgen这个程序包是关键,有兴趣的可以去了解下,它可以根据一个游标输出一个CLOB格式的XML文本,下面是参考程序:
PROCEDURE xml_print(errbuf OUT VARCHAR2,
retcode OUT NUMBER) IS
ctx dbms_xmlgen.ctxhandle;
c_result CLOB;
xmltext VARCHAR2(5000);
v_source ref_cursor;
line VARCHAR2(200);
TYPE ref_cursor IS REF CURSOR;
BEGIN
--定义数据,数据集必须为游标变量
OPEN v_source FOR
SELECT 1,
2,
CURSOR (SELECT 3,
4
FROM dual
WHERE 1 = 1
UNION ALL
SELECT 5,
6
FROM dual
WHERE 1 = 1)
FROM dual
WHERE 1 = 1;
--定义XML CLOB文件
ctx := dbms_xmlgen.newcontext(v_source);
--设置XML文件标签
dbms_xmlgen.setrowsettag(ctx,
'HEADER');
dbms_xmlgen.setrowtag(ctx,
'LINE');
-- generate the CLOB as a result.
c_result := dbms_xmlgen.getxml(ctx);
/* --直接输出clob
dbms_output.put_line(c_result);*/
--以文本形式输出XML文件
xmltext := substr(c_result);
LOOP
EXIT WHEN xmltext IS NULL;
line := substr(xmltext,
1,
instr(xmltext,
chr(10)) - 1);
fnd_file.put(fnd_file.output,
line);
xmltext := substr(xmltext,
instr(xmltext,
chr(10)) + 1);
END LOOP;
dbms_xmlgen.closecontext(ctx);
CLOSE v_source;
END xml_print;
上面的输出格式等自己可以控制,更多的方法可以查看dbms_xmlgen程序包
- 在oracle中通过字段信息生成xml文件
- 在oracle数据库中如何生成UUID字段,生成随机数
- 通过XML文件生成View
- 通过XMLEncoder生成XML文件
- 通过文件系统生成XML文件
- 如何将文件存放在oracle中bfile字段中
- java生成通过jdom生成xml文件
- xml文件无法在R文件中生成id
- 生成XML文件,通过实体生成XML文件
- 在web.xml文件中配置信息,未起作用问题解决
- 如何在map文件中生成行信息?
- 如何在map文件中生成行信息?
- 在HTML 中通过javascript解析XML文件
- cxf在cmd中通过wsdl2java生成客户端文件
- Kettle 生成的XML格式数据保存到Oracle 数据库的BLOB类型字段中
- Oracle中有关字段信息储存
- 在android中使用Pull解析器生成xml文件
- 在Struts的action中使用Jdom生成xml文件
- smartassembly的使用说明
- android wifi 移植记录
- 又在做管理
- 采用org.apache.tools.zip来进行zip包的解压缩,支持目录嵌套和中文名
- 第一个MeeGo Touch程序
- 在oracle中通过字段信息生成xml文件
- Java基础(1)-泛型
- Weka开发 -J48源代码介绍
- android入门——2011.3.7-2011.3.13第一周
- 仿Baidu,Google查询分页技术实现分析之一
- hibernate之什么时候应该使用悲观锁?
- 使用AjaxPro联动DropDownList的变相方法
- 项目管理之目标管理方法
- 什么是Android——Android平台简介