定义样式以编程方式
这个例子展示了如何通过编程方式定义一组风格。样式是一组命名的格式。允许您定义报表元素的外观风格通过指定样式的名称,而不是个人的定义所有格式。使用样式可以简化创建报告程序。DOM API允许您使用样式中定义一个报告模板。另外,如本例所示,您可以定义风格在一份报告中项目。考虑定义风格程序如果你需要或喜欢的一份报告中创建一个报告程序,不需要模板。
在本例中,您生成一个报告,其中包含一个表,总结了一系列的测试的结果。这个例子创建测试数据。在现实的应用程序中,您可以实现报告程序作为一个函数,接受测试数据作为它的一个输入。这是这个例子:生成的报告
创建测试数据
创建测试数据作为一个结构数组。
(1)测试。Name =“100%的成功”;(1)测试。描述=“损失总额的百分比(失败的打击)必须= = 0%”;(1)测试。状态=“失败”;(1)测试。StatusDetail =“损失= 22.33%”;(2)测试。Name =“没有失败”;(2)测试。描述=“失败数必须= = 0 ";(2)测试。状态=“失败”;(2)测试。StatusDetail =“失败”数= 69;(3)测试。Name =“快命中率”;(3)测试。描述=“最终吞吐量必须> =每秒10支安打”;(3)测试。状态=“通过”;(3)测试。StatusDetail =“点击”每秒= 27.978;(4)测试。Name =“低执行时间”;(4)测试。状态=“通过”;(4)测试。描述=“Avg。Exe(女士)必须< 750.0”;(4)测试。StatusDetail =“Avg Exe时间”(ms) = 244.33;
DOM API导入包
DOM API包导入,这样就不必使用完全限定的类名。
进口mlreportgen.dom。*;
创建一个文档
创建一个Microsoft®Word文档,改变输出类型pdf
来多克斯
。创建HTML文档,改变pdf
来html
或html文件
。
d =文档(“报告”,“pdf”);
创建一个容器的风格
创建一个containers.Map
对象作为样式表,也就是说,一个样式的名称映射到对象的格式集包含的样式。
风格= containers.Map;
定义的样式
这个示例使用风格顶级栏目标题样式和风格小节标题。首先,创建一个外观风格定义了共同的标题。
样式(“baseHeadingPara”)={颜色(“darkblue”),FontFamily (“天线”)};
定义样式的段落作为顶级报告的标题部分。这种风格指定大纲级别1的标题作为顶级条目出现在报告目录。
样式(“heading1Para”)=(样式(“baseHeadingPara”),{OutlineLevel(1),大胆,…字形大小(“16 pt”)});
定义一个二级标题。
样式(“heading2Para”)=(样式(“baseHeadingPara”),{OutlineLevel (2),…OuterMargin (“0”,“0”,“12 pt”,“5 pt”)、斜体、字形大小(“14 pt”)});
定义的样式表、表标题和表条目。
样式(“testSummaryTable”)={边界(“固体”),RowSep (“固体”),ColSep (“固体”),宽度(“7”)};样式(“testSummaryTableHeader”)={大胆};样式(“testSummaryTableEntry”)= {InnerMargin (“10 pt”)};
定义测试状态的风格。
样式(“passText”)={颜色(“绿色”)};样式(“failText”)={颜色(“红色”)};
创建报告内容
创建报告的标题。
heading1Para =段(“负载测试信息”);heading1Para。风格=样式(“heading1Para”);追加(d, heading1Para);
创建测试汇总表描述标题。
heading2Para =段(“服务质量总结报告”);heading2Para。风格=样式(“heading2Para”);追加(d, heading2Para);
创建测试汇总表标题内容。定义标签来显示表中的标题。
testSummaryTableHeader = [“名称”,“描述”,“状态”,“细节”状态];
创建一个数组来保存细胞的内容测试汇总表。使用单元阵列后创建的表。
nTests =元素个数(测试);testSummaryTableBody =细胞(nTests 4);
每一项的测试数据存储在一个细胞的细胞阵列。
为t, t = 1: nTests testSummaryTableBody{1} =测试(t) . name;testSummaryTableBody {t 2} =测试(t) .Description;结果=测试(t) .Status;状态=段(结果);如果结果= =“通过”的地位。风格=样式(“passText”);其他的的地位。风格=样式(“failText”);结束testSummaryTableBody {t, 3} =状态;testSummaryTableBody {t 4} =测试(t) .StatusDetail;结束
创建测试汇总表。
testSummaryTable = FormalTable (testSummaryTableHeader testSummaryTableBody);testSummaryTable。风格=样式(“testSummaryTable”);testSummaryTable.Header。风格=样式(“testSummaryTableHeader”);testSummaryTable。TableEntriesStyle =样式(“testSummaryTableEntry”);
附加文档测试汇总表。
追加(d, testSummaryTable);
关闭并查看文档
关闭(d);rptview (d);
另请参阅
mlreportgen.dom.Color
|mlreportgen.dom.Document
|mlreportgen.dom.FontFamily
|mlreportgen.dom.OutlineLevel
|mlreportgen.dom.Paragraph
|mlreportgen.dom.FormalTable
|mlreportgen.dom.FontSize
|mlreportgen.dom.RowSep
|mlreportgen.dom.InnerMargin
|mlreportgen.dom.Border
|mlreportgen.dom.OuterMargin