逗号分隔值 (CSV) 呈现扩展插件以逗号分隔的纯文本文件形式呈现报表,而不带有任何格式。它使用字符串分隔符来分隔字段和行,其中字符串分隔符可以配置为除逗号之外的字符。最终文件可以用电子表格程序(如 Microsoft Excel)打开,也可以用作其他程序的导入格式。所导出的报表会变为 .csv 文件,并返回 MIME 类型的 text/plain。这种 .csv 文件为 MIME 1.0 版文件。
当使用默认设置进行呈现时,CSV 报表具有以下特征:
- 第一条记录包含报表中所有列的标题。
- 所有行的列数都相同。
- 默认字段分隔符字符串是逗号 (,)。
- 记录分隔符字符串是回车符和换行符 (<cr><lf>)。
- 文本限定符字符串是引号 (")。
- 如果文本包含嵌入的分隔符字符串或限定符字符串,则会用文本限定符(引号)将该文本括起来,还将嵌入的限定符字符串(引号)用引号引起来。
- 忽略格式设置和布局。
在呈现报表时,CSV 呈现扩展插件会迭代报表处理器生成的报表对象模型。在处理期间忽略以下元素:
- PageHeader
- PageFooter
- Custom
- Line
- Image
- ActiveXControl
并对其余的报表项进行排序,先从上到下排,再从左到右排。之后,每一项将呈现到一列中。如果报表有嵌套数据项(如列表或表),则会在每条记录中重复它的父项。
下表列出了各个项呈现到 CSV 时有关它们的注意事项:
项 | 呈现行为 |
---|---|
文本框 |
呈现文本框的内容。数据的格式按照该项的 Format 属性设置。 |
表 |
呈现方式为扩展该表,在只保留最起码的格式的情况下为每一行和每一列都分别创建行和列。小计行和小计列没有列标题或行标题。不支持钻取报表。 |
矩阵 |
呈现方式为扩展该矩阵,在只保留最起码的格式的情况下为每一行和每一列都分别创建行和列。小计行和小计列没有列标题或行标题。 |
列表 |
为列表中每一明细行或实例呈现一个记录。 |
矩形 |
将子报表的内容呈现为嵌套项。对于内容的每个实例,都会重复它的父项。 |
子报表 |
将子报表的内容呈现为嵌套项。对于内容的每个实例,都会重复它的父项。 |
图表 |
为一组数据值呈现一行,为另一组数据值呈现多列。 |
对于几个可配置的设备信息设置(如哪些字符将用作字段分隔符、记录分隔符和限定符),CSV 呈现扩展插件均使用这些设置的默认值。这些设备信息设置可以通过自定义应用程序来访问和更改,并且您可以通过使用设备信息设置来控制数据、默认分隔符和分页符的呈现。可以使用 FieldDelimiter、RecordDelimiter 和 Qualifier 设备信息设置来更改字段分隔符、记录分隔符和文本限定符。
为了控制分页符,则可以使用 SuppressLineBreaks 设置来控制,它的值是一个布尔值,指定呈现数据时是否删除换行符。如果 SuppressLineBreaks 为 true,则换行符和回车符就由一个空格替代。Extension 设置用于指定文本文件的文件扩展名;Encoding 设置用于将编码从默认的 Unicode 更改为 ASCII、UTF-7 或 UTF-8。最后,NoHeader 设置指示在呈现报表时是否省略表头行。