报表使用的
数据格式有2种,一种是
文本格式(推荐使用),另一种是
XML格式(解析速度较慢)。(
2种格式在STUDIO设计器的数据源定义里面有生成数据格式文件例子)
取数方式有3种
1,
数据库方式,直接链接数据库无需关心报表使用的数据格式。
2,
web方式,就是用相对或者绝对路径指向一个取数的文件(
可以是URL路径访问到的任何文件,这个文件必须符合报表的2种数据格式)
3,
本地方式,也是相对或绝对路径指向的一个取数文件,
与WEB不同的是访问的是本地电脑上任何符合报表2种数据格式的取数文件。
-------------------------------------------------
此上述在报表统计脚本中的展示是:
//以下是报表的统计脚本,用于保存报表的一些数据应用方面的信息
//可以通过obChinaExcel.GetStatScript(1);来得到统计脚本内容,后面的注释不在应用范围
//函数原型
//BSTR GetStatScript(short nStatType)
//参数说明
//nStatType 统计脚本编号,目前所有的报表只用统计脚本1。
/*统计脚本概要(新式普通报表的脚本为例)
<stat> -------第一个数据源脚本
<cmd>6</cmd> -------这个数据源的报表类型,6为普通报表
<data>
<dname>ds1</dname> -------这个数据源的数据源名称,第一个数据源名。
<readfromhttp>1</readfromhttp> -------取数方式,1为WEB取数方式,0为非WEB方式
<dataflag>1</dataflag> -------取数数据类型,0是数据库,1为文本格式,2为XML格式
<sql></sql> -------取数SQL,在直连数据库方式时有效,如果是主从报表中则代表主表的SQL
<sql2></sql2> -------取数SQL2,在直连数据库方式时有效,只在主从报表中有效,代表从表的SQL
<xml>data.aspx?id1=xxx&id2=xxx</xml> -------取数文件,可以是绝对路径,可以是同目录下相对路径,或者URL
<sub>
-------以下部分报表类型不同时参数也不相同
<onerecrows>2</onerecrows>
<insertflag>1</insertflag>
<rowcombi>0</rowcombi>
</sub>
</stat>
第1个数据源结束
<nextrec1>
第2个数据源
........
第2个数据源的脚本内容
</nextrec1>
第2个数据源结束
<nextrecN>
第N个数据源
........
第N个数据源的脚本内容
</nextrecN>
第N个数据源结束
*/
//第1个数据源取数,全URL路径
obChinaExcel.SetStatScriptItem("stat:data:xml","http://localhost/myData.aspx",1);
//第1个数据源取数,相对URL路径
obChinaExcel.SetStatScriptItem("stat:data:xml","myData.aspx",1);
//第2个数据源取数,全URL路径
obChinaExcel.SetStatScriptItem("nextrec1:data:xml","http://localhost/myData.aspx",1);
//第2个数据源取数,相对URL路径
obChinaExcel.SetStatScriptItem("nextrec1:data:xml","myData.aspx",1);
//动态传参数取数设置,完整方案(B/S)
obChinaExcel.ReadHttpFile('xxx.tab');
//第一次加载报表
.............
//其他代码部分
obChinaExcel.SetStatScriptItem("stat:data:xml","myData.aspx",1);
//动态设置报表的取数文件,没带参数
obChinaExcel.ReCalculate();
//报表不带参数直接计算
//-----以上已经显示报表的不带参数计算结果-------
//-----以下对这个报表直接进行带参数查询---------
obChinaExcel.RestoreAfterCalculate();
//恢复报表到最近一次计算之前的状态
obChinaExcel.SetStatScriptItem("stat:data:xml","myData.aspx?id=xxxx",1);
//动态设置报表的取数带ID参数
obChinaExcel.ReCalculate();
//报表再计算。
统计脚本界面化定义:
代码化设置报表类型部分应用:
取数文件格式1(文本格式)(推荐使用):
取数文件格式2(XML格式):