5.工具条功能号


  通过上面的CallFunc函数可以调用工具条中的各个功能,各个工具条中的功能号规则如下:

5.1.主工具条 ( ):

功能号含义CallFunc函数参数
102新建报表 如果没有参数,表示直接打开对话框,就像鼠标点击工具条一样; 如果含有参数,则不打开对话框,而是直接建立新表,参数规则如下:
name=[?]; rows=[?];cols=[?]; rowheight=[?]; colwidth=[?]; filename=[?], 含义如下:
name - 工作表名;
rows/cols - 总行数/列数;
rowheight/colwidth - 行高/列宽
filename - 本地的XML全文件名, 可以不指定
示例: AF.func("callfunc", "102 \r\n name=我的工作表;rows=20;cols=8");
103弹出打开报表文件的对话框如果没有参数,就表示像鼠标点击工具条一样;如果有参数,那么参数格式为:
type=[?];Dir=[?], 含义如下:
type - xml 或 xlsx、xls,表示对话框默认的文件类型;
dir - 本地文件目录,表示对话框的初始目录定位;
isWithFormula - true/false, 含义为当打开 xlsx、xls 文件时,是否导入计算公式, 默认是true
104保存报表文件名,用于强制指定文件名,文件类型可以是xml、zip
1074报表另存为如果没有参数,表示直接打开对话框,就像鼠标点击工具条一样; 如果含有参数,参数格式为 "Filename=[?]; WorkSheets=[?]; isReturnContent=[?]; isSaveCalculateResult=[?]",这些参数均可选.
 Filename - 本地文件名, 可以是全文件名,也可以不包含路径,如果不含路径,则会生成到 BC\Temp 下。指定文件名后将不会弹出文件选择对话框;
 WorkSheetsWorkSheet- 指定工作表顺序号,用于有多工作表的情形,如果需要多个工作表,需以逗号分隔,指定工作表顺序号后将不会弹出工作表选择对话框;
 isReturnContent - 如果为true, 表示函数返回的不是文件名,而是内容本身的XML串, 默认是false. 如果 isReturnContent = true, 那么 Filename 就不需要指定了,也不会弹出文件选择对话框, 因为不输出到文件了;
 isSaveCalculateResult - true/false, 是否将数据源填入的数据也一起保存,默认值是该报表属性中的同名选项;
示例
 var filename = AF.func("callfunc", "1074\r\n WorkSheets=3,5");  //表示将第四、第六工作表另存
返回值
 含路径的全文件名, 或 XML 串 (在 isReturnContent=true 时)
105转换输出. 如果没有参数,表示直接打开转换输出对话框,就像鼠标点击工具条一样; 如果含有参数,则不打开对话框,而是直接生成转换文件,并返回文件名,参数格式分数据文件和图像文件二种。

1.数据文件

参数格式为:"Type=[?]; asData=[?]; includeHide=[?]; gridLine=[?];filename=[?];isForMobile=[?];isReturnContent=[?]"
 Type是输出文档格式,有xlsx, xls, htm, mht, doc, txt, xml, dif, rtf 这几种;
 asData 为 true 表示输出纯数据,否则是包含了格式掩码的数据(比如含千位符),默认false;
 includeHide 表示是否包含隐藏行、隐藏列,默认false;
 gridLine 表示是否是否显示表格线,仅用于XLS,默认false;
 includeFormula 用于 xlsx、xls 格式的转换,表示是否连公式一起转换, 默认是true.
 filename 要生成的全文件名,如果文件名为空或没有指定目录,则文件生成到硕正的临时目录 (BC\Temp) 下.
如果转换格式是 xlsx 或 xls, 则还可以有如下选项:
 WorkSheet 工作表范围, all - 全部工作表, current - 当前工作表,默认是全部工作表.
如果转换格式是 htm, 则还可以有如下选项, 主要用于服务器专版的移动端展现功能:
 isForMobile 是否用于手机客户端 (服务器专版), 该选项将对转换输出作优化, 比如采用单一字体、减少格式冗余, 默认是false;
 isReturnContent 如果为true, 表示函数返回的不是文件名,而是内容本身的字符串, 默认是false;
 isUsingDefineFormat 是否套用报表属性对话框中“当前工作表属性(3)”中指定的格式转换, 默认是 true;
 Template 指定模板文件,可以是URL、或文件,用于服务器专版,详细说明请参考开发文档 "服务器专版" 中的 "9.报表转换模板";
 isQueryPage 是否用于转换一体化查询的 jQuery Mobile查询条件页,请看 "服务器专版" 中的 "9.报表转换模板";
 uploadURL 用于生成上报汇总模式的 html, 当手机端输入后,用 ajax 把 XML 数据发往该目的地,详细说明请参考开发文档“服务器专版”中的“9.3.上报汇总模板”;

2.图像文件

参数格式为:"Type=[?]; Scale=[?]; Precision=[?];filename=[?];WorkSheet=[?]"
 Type是输出文档格式,有pdf, jpg, bmp, gif, png, tif 这6种,默认是jpg;
 ExportAsPrint, true - 按打印预览的分页方式输出; false - 按显示尺寸(和打印无关)输出.
 Scale是打印比例,范围是10 到 400,默认100。对于PDF而言,Scale越大越清晰,例如300表示在300%的显示比例下仍很清晰;
 Precision是JPG精度,仅对JPG有效,精度范围1-100(默认85),越接近100越清晰,但文件尺寸越大.
 filename 要生成的全文件名,如果文件名为空或没有指定目录,则文件生成到硕正的临时目录 (BC\Temp) 下.
 WorkSheet 工作表范围, all - 全部工作表, current - 当前工作表,默认是当前工作表.

示例
 var filename = func("callfunc", "105\r\nType=jpg; Scale=100; Precision=85");

返回值
 均为输出文件名(含路径的全文件名),由于图像文件是分页输出的,所以象jpg、bmp这些格式可能会有多个文件名(PDF除外),文件名间以回车分隔,空串表示转换过程有错误.

备注
 1.如果无法确定输出文件位置、希望能弹出对话框让用户选择文件目录,那么请先调用全局函数 FileDialog;
 2.如果指定了 filename 参数,则 Type 参数可以省去,因为插件也能根据文件名后缀辨认类型的.
100报表属性设置
189关于
2020复制
31剪切
3234粘贴格式和文字
35仅粘贴文字
106Undo
107427查找
426替换


2.打印工具条 ( ):

功能号含义CallFunc函数参数
1111打印报表请参考 Print( ) 函数
318转换为PDF或图片文件请参考功能号105(转换输出)
216打印设置
18打印预览


3.常用功能工具条 ( ):

功能号含义CallFunc函数参数
110单元合并
162求和
164计算器
163163重新计算
260除数据源外,重新计算
630仅计算当前工作表
786仅计算当前单元格
140140打开数据源对话框
536自定义显示列数据源的ID, 或数据源的顺序号
537自定义排序同上
116自定义超链接同上
395数据分类汇总同上
520交叉表同上
143清理从数据源填入的数据如果参数是 true, 表示同时清理表头的信息
717全屏显示0-自动,1-退出全屏, 2-进入全屏
4折叠/展开工具条


4.工具箱工具条 ( ):

功能号含义CallFunc函数参数
301打开工具箱参数可以为1、2、3、4、5,分别表示将当前页定位在属性、计算公式、数据源、字典、上报的指标库页
22单元格显示计算公式
64单元格显示计算结果
734单元格显示计算公式、数据源标题
759单元格显示别名
25设置数据验证
50执行数据验证如果没有参数,就表示像鼠标点击工具条一样; 如果含有参数,参数格式为: range=[?];isReport=[?];isBeforeCalc=[?];isAfterCalc=[?];isIgnoreEmpty=[?], 其参数含义如下:
range - 表示工作表范围,空串或忽略该参数表示验证全部工作表;-1表示仅验证当前工作表; 0 到 n 或工作表名称,表示验证指定名称或次序的工作表;
isReport - true/one/false, 表示是否仅返回验证报告, true 表示返回全部错误, one 表示只要返回第一条错误即可, 默认是 false;
isBeforeCalc - 表示是否匹配标记为计算前的那部分验证, 默认是 false;
isAfterCalc - 表示是否匹配标记为计算后的那部分验证, 默认是 false;
isIgnoreEmpty - 如果为 true, 表示当没有发现验证条项时,无论如何都不弹出提示, 默认是 false;
返回值:如果 isReport = FALSE, 返回1表示通过验证, 0表示未通过,空串表示工作表不存在; 如果 isReport = true, 则返回验证报告串,空串表示全部通过验证;
示例:
var ErrStr = AF.func("callfunc", "50 \r\n isReport = true");
ErrStr = ErrStr.replace(/\r\n/g, "\\r\\n");
AF.func("MessageBoxFloat", ErrStr + "\r\n center=true;hold=20");
112添加文本框 如果没有参数,就表示像鼠标点击工具条一样; 如果含有参数,则参数规则如下:
x=[?];y=[?];width=[?];height=[?]; alias=[?];text=[?] 或
x1=[?];y1=[?];x2=[?];y2=[?]; alias=[?];text=[?] 或
其中的 x / y / x1 / x2 / y1 / y2 / width / height为坐标参数,alias表示别名,text表示文本框的文字(也可以是计算函数)。
坐标参数含义及可用值语法为:
 x / y 或 x1 / y1 - 左上角坐标, 可以是像素数,也可以是单元格名 (表示位于该单元格的左上角位置),此外,如果是串"drag", 表示位置不固定,并将随即出现拖拽中的鼠标,效果如同点击该按钮;
 x2 / y2 - 右下角坐标, 可以是像素数,或单元格名 (表示位于该单元格的右下角位置);
 width / height - 宽度和高度, 像素数
备注:如果 x / y 使用像素单位,它们是相对于报表第一行、第一列左上角的, 和插件在页面的位置完全无关.
示例:
 AF.func("callfunc", "112 \r\n x=drag; text=测试");
192192添加图片同上,但有三个跟图片相关的参数:URL、IsSaveURLOnly、MaxSize, 其含义如下:
URL - 图片的URL(也可以是本地的全文件名);
IsSaveURLOnly - 是否仅仅将图片的URL保存入到报表,默认是false;
MaxSize - 限定图片尺寸,格式为宽度和高度的像素数,逗号分隔。当图片的宽度或高度超过时,将自动转换到该尺寸,以减小报表文件的尺寸,仅用于IsSaveURLOnly=false时。当设置了maxSize后,图片将按比例缩放,x2、y2、width、height参数可以省略;
示例:
 AF.func("callfunc", "192 \r\n x=drag; URL=../mylib/demo.jpg; maxSize=400,400");
17添加图片(打开对话框)
683从剪切板粘贴图片
144添加线条同上,但有二个跟线条相关的参数:color、thick, 其含义如下:
thick - 线条粗细,像素数,默认是1;
color - 线条颜色;
478添加统计图
382添加树列表同上,但有三个跟树列表相关的参数:URL、isSaveURLOnly、isBackGround, 其含义如下:
URL - 树列表的URL(也可以直接是XML大串);
isSaveURLOnly - true/false, 分别表示仅将URL保存到报表/把树列表的XML串储存到报表中, 默认是true;
isBackGround - true/false, 分别表示树列表采用原始背景效果/采用白色背景, 默认是true.
274274格式刷
122表格线橡皮


5.文字输入工具条 ( ):

功能号含义CallFunc函数参数
541公式/计算结果录入为主如果没有参数表示切换, 否则: 1 - 公式录入为主; 2 - 计算结果录入为主
585弹出公式引导输入对话框


6.不在工具条上的其它功能号

  如下功能不在工具条上,部分在鼠标右键菜单中,也允许通过 callfunc 函数调用:
功能号含义CallFunc函数参数
404自动调整行高,使文字能全部显示
405自动调整列宽,使文字能全部显示
446合并相同内容行参数为列号,列号从0开始;也可以是多个列按大类、小类合并, 列号之间以逗号分隔
0计算消息窗的打开方式0-始终不打开;1-遇到计算有错误就打开
900取得当前报表已打印的次数,返回值其实是整数
108切换为分页显示
109切换为常规显示
15切换显示比例参数可为20、50、80、100、150、200
309切换上报模式时的普通输入和设定输入顺序.
800分析当前单元格数据构成.