<?xml version="1.0" encoding="UTF-8"?"> <WorkSheet name="销售额统计表"> <data name="OrgID" Cell="D6">001</data> <data name="Target1" Cell="D7">3000</data> <data name="Target2" Cell="D8">2039.12</data> </WorkSheet>里面的name元素就是别名,这样便于后端(服务器端)解析; Cell是单元格名,用处不大。 解析、处理这段XML的后端程序需要自己写,通常就是把这段采集到的数据写到数据库中而已。
<?xml version="1.0" encoding="UTF-8"?"> <root> <project name="业务指标"> <project name="部门(单独)"> <item id="res1" datatype="int">人数</item> <item id="res2" datatype="int">临时工</item> </project> <item id="con1" editType="checkbox">是否盈利</item> <item id="con33">应收款</item> </project> <project name="财务指标"> <item id="KML1">资产负债率</item> <item id="KML2">存货周转率</item> <item id="KML3" decimal="4">应收帐款周转率</item> </project> </root>上面的XML中,树的级次可以任意嵌套,Report能原样显示,其中的树叶就是单个指标。树叶的可用属性规定如下:
属性名 | 含义 | 可用值 | 默认值 |
id 或 alias | 唯一的ID,拖入报表中就是“别名” | 串 | 无 |
editType | 输入类型 | edit / checkbox | edit |
dataType | 数据类型 | decimal / int / string / date / datetime | decimal |
decimal | 小数位数 | 数字 | 2 |
tip | 帮助说明 | 串 | 无 |
max min | 最大值和最小值,用于输入限制 注:仅限于数值型和日期型 | 值 | 无 |
maxChars maxMBytes | 串的最大长度,用于输入限制 注1:仅限于字符型; 注2:maxChars以字计,中英文一视同仁; maxMBytes以字节计,中文占2字节; 注3:定义其中一个即可,无法同时生效 | 数字 | 无 |
text | 指标的中文名称,例如“人数”,也可以写成: <item id="res1">人数</item> | 文字 | 无 |
<?xml version="1.0" encoding="UTF-8"?"> <root> <project name="财务指标"> <item id="km101" text="资产负债率"> <attr name="month" text="月份"/> <attr name="dept" text="部门"/> </item> <item id="km103" decimal="4" text="应收帐款周转率"> <attr name="month" text="月份"/> <attr name="dept" text="部门" value="3"/> </item> </project> </root>上面的 <attr>就是属性,其中name是属性名;text是属性的中文说明,用于设计时的帮助;value表示默认值,可选的,当鼠标将指标拖入单元格时,自动赋予该属性的值.
<?xml version="1.0" encoding="UTF-8"?"> <WorkSheet name="销售额统计表"> <data name="km101" attr="month=2;dept=3" >3003.12</data> <data name="km103" attr="month=;dept=" >2500</data> </WorkSheet>报表的在线演示页中,"38.设计阶段(方法二)"的指标中的 “财务指标” 含有属性,您可以体验一下。
<?xml version="1.0" encoding="UTF-8"?"> <root> <project name="业务指标"> <project name="部门(单独)"> <item id="res1" datatype="int">人数</item> ... </project> </project> <item type="embedTable" id="FiGroup" name="财务指标"> <properties rows="5" addRowAble="true"/> <cols> <col id="kmdm" datatype="string" editAble="false" align="center">科目代码</col> <col id="kmmc" datatype="string" editAble="false">科目名称</col> <col id="je" decimal="4">金额</col> </cols> <Table> <TR> <TD>101</TD><TD>现金</TD> </TR> <TR> <TD>102</TD><TD>银行存款</TD> </TR> </Table> </item> </root>上图中,第 9 行到第 24 行就是内嵌表格类型的指标,关键是第9行 type="embedTable" 的声明,该指标一旦被鼠标拖入报表中,报表将自动划定一块区域,作为其指标输入区。
<item id="FiGroup" name="财务指标" type="embedTable" ref="../libs/FisGroup.xml"/>内嵌表格的语法和 "硕正树列表(Treelist)" 的XML规范很相似,它采纳了一部分的Treelist的XML属性,也有自己的特有的一些属性。元素、属性列举如下:
类型 | 属性名称 | 含义 | 可用值 | 默认值 |
Treelist 属性 | addRowAble | 在上报运行时, 是否允许添加行 | true/false | false |
enter | 在上报运行时, 击回车键后的光标跳转方向 | down/right | right | |
自有属性 | rows | 设计时鼠标拖入后,内嵌表格区域所占的行数 | 数字 | 5 |
类型 | 属性名称 | 含义 | 可用值 | 默认值 |
Treelist 属性 | id | 列ID | 串,相当于字段名 | (无) |
datatype | 数据类型 | sting / double / int / date / datetime | decimal | |
decimal | 小数位数,仅用于 datatype 为 double 时 | -1表示小数位数不确定, 在0和8之间可以任意输入. | 2 | |
EditAble | 是否允许输入 | true/false | true | |
maxChars maxMBytes | 长度限制,仅用于 datatype 为 string 时 | maxChars表示限制输入字数,以Unicode计(中英文一视同仁); maxMBytes表示限制输入字节数,以多字节(非Unicode)计(中文2字节、英文1字节). 注: 不能同时使用maxChars和maxMBytes | 0 | |
max | 限制输入的最大值 | 仅用于int、 double、date、 datetime | 无 | |
min | 限制输入的最小值 | 仅用于int、 double、date、 datetime | 无 | |
align | 水平对齐 | left / center / right | 和数据类型有关 | |
valign | 垂直对齐 | top / middle / bottom | middle | |
edittype | 输入方式 | edit / checkbox / droplist | edit | |
droplistId | 相关联的下拉资源ID,仅用于下拉输入 | 该ID须存在于下面的<Droplists>节点中,或者是报表内的字典名 | 无 | |
isHide | 是否隐藏列 | true/false 在报表中不会生成隐藏列,但其数据能够被传递、上报 | false | |
自有属性 | updateAble | 本列内容是否需要上报 | true/false | true |
属性名称 | 含义 | 可用值 | 默认值 |
editAble | 本行是否可输入 | true/false | true |
updateAble | 本行内容是否可上报 注: 如果不上报,本行的单元格数据类型将是字符串 | true/false | true |
bgColor | 本行底色 | 颜色串 | 无(透明) |
textColor | 本行文字色 | 颜色串 | #000000 |
属性名称 | 含义 | 可用值 | 默认值 |
editAble | 本单元格是否可输入 | true/false | true |
bgColor | 本单元格底色 | 颜色串 | 无(透明) |
textColor | 本单元格文字色 | 颜色串 | #000000 |
rowspan | 单元格垂直合并,含义同html table | 数字 | 无 |
colspan | 单元格水平合并,含义同html table | 数字 | 无 |
align | 水平对齐 | left / center / right | 无 |
valign | 垂直对齐 | top / middle / bottom | 无 |
isVerticalText | 文字是否垂直显示 | true/false | false |
... <item id="d010" type="treelist" tip="销售单" url="../treelist/t1.xml">销售单</item> ...内嵌树列表的指标库元素规则如下:
属性名称 | 含义 | 可用值 | 默认值 |
type | 指定为树列表 | 必须为 treelist | treelist |
url | 树列表的XML的URL | 相对或绝对URL | |
GetChangedXMLPara | 上报提交时的选项串 | 参数串,请参见树列表的GetChangedXML( )函数说明 | level=0;isIgnoreChange=true |