### Supcan Report组件

Supcan Report组件是一个集自定义设计、编辑、查询、打印功能的通用报表组件，并作为一个组件供插件/加载项展示到浏览器页面。
和Supcan Treelist组件相比，Supcan Report实现了格式不固定的表格处理的功能，并允许程序员、实施人员、最终客户参与对格式的修改，Supcan Report通常用于展现，实现类似自由报表的功能。
Supcan Report组件依赖于Supcan Treelist组件。
1.创建实例

Supcan Report组件是通过插件/加载项创建的，所以应该用使用指南 \ 页面语法中叙述的插件/加载项的页面创建语法创建， <Object>中的某几个Param参数规则如下:

    <Object ...(略)>
    <Param name="CtlName" value="LuxForm">　　//固定
    <Param name="ZipUrl" value="BCV1.bin,LuxForm.bin">	　　//也可以是绝对URL
    <Param name="CtlPara" value="Border=single,3D;  Ruler=Horz;  Rebar=Print,Property,Font;  print=11, 216">	//例子
    ...

如果页面是直接调用dynaload.js，那么可能就是这样:

    insertReport('AF', 'Border=single,3D;  Ruler=Horz;  Rebar=Print,Property,Font;  print=11, 216')

CtlPara参数决定了如何在页面上展现Supcan Report实例，在上面的例子中，参数串中可包含多个子串，子串间以 "；" 分隔。
子串的 名-值对 的规范如下：

子串名 | 含义 | 可用值 | 默认值
Border | 边界 | 1.none - 无边界 2.single - 单线条边界 3.3dLower(或3d) - 3D凹进边界 4.3dRaise - 3D凸起边界 | single
BorderColor | 边界色 | 颜色，仅用于Border=single | #7f9db9
Hue | 强制更改色调 | LightGray - 浅灰色 Caramel - 焦糖色 Lilian - 百合花色 Lividity - 青黑色 注：更改结果将保存至系统文件，永久有效. | (无)
FadeInStep | 淡入淡出效果 | 打开报表时的淡入淡出效果 0 至 255，数值越小效果越明显, 0表示关闭此效果 | 5
UserRebar | 自定义工具条 | URL(绝对或相对)，指向一个包含自定义信息的Zip包 | 无
Rebar | 工具条 | 1.none - 无工具条 2.Main - 主工具条 3.Print - 打印功能的工具条 4.Form - 常用功能工具条 5.Font - 字体工具条 6.Property - 工具箱等功能的工具条 7.Text - 文字输入工具条 注:含空串表示在该处强制断行，请参见默认值 | Main, Print, Form,,Font, Property,,Text
CollapseToolbar | 是否折叠工具条 | true/false - 折叠/不折叠. 备注: 下图为折叠控制按钮. | false
SeperateBar | 分隔条 | 1.Vert - 垂直分隔条 2.Horz - 水平分隔条 注: 组件内置了2根分隔条，可以把窗口分为4份，分隔条通常隐藏在左侧、顶部，可用鼠标拖动 | Vert, Horz
Ruler | 标尺 | 1.Vert - 垂直标尺 2.Horz - 水平标尺 | Vert, Horz
Main | 主工具条图标 | 这些图标的功能号分别为102, 103, 104, 1074, 105, 100, 189, 20, 32, 106, 107 | 102, 103, 104, 1074, 105, 100, 189, 0, 20, 32, 106, 107
Print | 打印工具条图标 | 这些图标的功能号分别为11, 216, 18 | 11, 216, 18
Form | 常用工具条图标 | 左侧6个图标的功能号分别为110, 162, 164, 163, 140, 717 | 110, 162, 164, 163, 140, 717
Property | 工具箱工具条图标 | 这些图标的功能号分别为301, 2, 112, 192, 144, 478, 382, 274 | 301, 2, 0, 112, 192, 144, 478, 382, 274
Text | 文字输入工具条图标 | 这3个图标的功能号分别为541, 23, 585. 注："23"完全用于自定义功能，Supcan report是没有针对23的功能的. | 541, 585
PagesTabPercent | 底部滑动条的左侧Tab区长度比例 | 百分比，0至100 | 30
TabScrollBar | 底部整个滑动条(含左侧Tab)显示与否 | show - 始终显示; none - 设置不显示 moresheet - 多于1个工作表时才显示; outofsize - 宽度超出时才显示 moresheet,outofsize - 合并上述二者(“或”的关系) | show
DSCenterDialogHeader | 中心数据源对话框的顶部布局 | url - 显示中心数据源URL下拉框 search - 显示搜索选项 none - 无顶部内容 | url
WorkMode | 工作方式 | DesignTime - 设计时; RunTime - 运行时; 二者差别有: 1."运行时"的界面略有简化、提示略少些专业性; 2."设计时"插入的树列表是虚拟的，不可输入： 3."设计时"工具条属性中的这个选项是不生效的： 4."设计时"数据源的高级功能更多; 5."设计时"的工具条“打开”按钮有20个历史文件的弹出菜单; 6."运行时"文本框单击即进入编辑("设计时"需要双击); 如下2种模式用于报表的上报汇总： UploadDesignTime - 上报报表的设计时; UploadRunTime - 上报报表的填报时; | DesignTime
isHiLightProtect | 是否在被保护的单元格的左侧显示红色醒目标记 | true / false | true
isHiLightTabOrder | 填报时是否在 TabOrder 单元格左侧显示红色醒目标记 | true / false 注: 仅用于上报的填报时(workMode="UploadRunTime") | true
image.功能号 | 强制设定某功能号的图标 | 图标文件的URL, 例如: image.102=../icons/jd.bmp; image.301=icons/bp.ico | (无)
tip.功能号 | 强制设定某功能号的tip | 文字串, 例如: tip.102=打开|Open; tip.301=工具盒|Tool box | (无)
EventLog | 事件日志 | 文件名，建议后缀是txt, 不必带路径，系统将自动在 BC 目录下创建. 该文件能自动记录本组件实例的所有事件, 用于程序调试. 注：正式运行时请不要使用，因为频繁读写磁盘会导致性能下降. | 无
FuncLog | 函数调用日志 | 文件名，建议后缀是txt, 不必带路径，系统将自动在 BC 目录下创建. 该文件能自动记录本组件实例被调用的所有函数, 用于程序调试. 注：正式运行时请不要使用，因为频繁读写磁盘会导致性能下降. | 无
FuncParaChars | 函数日志中参数最大字数 | 数字，当启用函数日志时，函数的参数最多保留字数. | 128
FuncReturnChars | 函数日志中返回值最大字数 | 数字，当启用函数日志时，函数的返回值最多保留字数. | 0

注1: 所谓“默认值”就是在没有设定值的情况下，Supcan Report自动采用的值.
注2: Main、Print... 这些工具条，除了允许含系统功能号以外，还允许含自定义功能号(大于3000的功能号就是自定义功能号).
2.函数

Supcan Report的函数是通过插件/加载项的 func( string funcname, string paras ) 函数间接调用的，在此列举了Supcan Report组件的可用funcname及用途说明。
3.扩展函数和全局函数

3.1 扩展函数
上述API中，涉及对单元格、行列的操作都是相对于当前工作表而言，如果要存取其它工作表，就必须要先切换工作表。
为了方便存取其它工作表的内容，可以采用Report的扩展函数语法：首先通过GetHandle( )函数取得该工作表的句柄，然后在函数名前加句柄调用。下面是例子:

     var handle = AF.func("GetHandle", "3");  //取得第四个工作表的句柄
     var data = AF.func(handle + "GetCellData", "B5");  //取得该工作表B5单元格的内容

3.2 全局函数
Report还拥有和Treelist、Freeform完全一样的全局函数，请参见全局函数介绍。