【发布时间】:2017-12-05 18:14:47
【问题描述】:
背景
Jaspersoft 社区论坛是 riddled,有关于如何将 CSV 数据源用于报告的未回答问题。
问题
使用Jaspersoft Studio时,可以方便的使用本地文件作为数据源。完成这项任务的说明充其量是零碎的,最坏的情况是不完整的。
问题
在主报告中使用 CSV 文件(数据源)并让子报告使用该数据需要哪些步骤?
【问题讨论】:
标签: csv jasper-reports subreport
Jaspersoft 社区论坛是 riddled,有关于如何将 CSV 数据源用于报告的未回答问题。
使用Jaspersoft Studio时,可以方便的使用本地文件作为数据源。完成这项任务的说明充其量是零碎的,最坏的情况是不完整的。
在主报告中使用 CSV 文件(数据源)并让子报告使用该数据需要哪些步骤?
【问题讨论】:
标签: csv jasper-reports subreport
注意:此解决方案会从子报表的列表中删除第一个结果,这需要解决方法来解决,此答案中未描述。
主要步骤包括:
按如下方式创建 CSV 文件:
城市、年龄、姓名、地址、状态 “达拉斯”,47,“珍妮特富勒”,“445 Upland Pl.”,“审判” “里昂”,38,“安德鲁·海尼格”,“347 College Av.”,“活跃” “达拉斯”,43,“苏珊·史密斯”,“2 Upland Pl.”,“活跃” “伯尔尼”,22,“比尔奥特”,“250 - 20th Ave.”,“活跃” “波士顿”,32,“迈克尔·奥特”,“339 College Av.”,“审判” “达拉斯”,4,“西尔维娅·林格”,“365 College Av.”,“活跃” “波士顿”,23,“朱莉娅·海尼格”,“358 College Av.”,“活跃” “芝加哥”,39,“玛丽·卡森”,“202 College Av.”,“活跃” “达拉斯”,40,“苏珊米勒”,“440 - 20th Ave.”,“审判” “伯尔尼”,9,“詹姆斯施耐德”,“277 第七大道”,“活跃” “达拉斯”,36,“约翰斯蒂尔”,“276 高地广场”,“暂停” “芝加哥”,35,“乔治·卡森”,“412 College Av.”,“暂停” “达拉斯”,37,“迈克尔克兰西”,“19 第七大道”,“已删除” “里昂”,2,“安妮·米勒”,“20 Upland Pl.”,“活跃” “达拉斯”,0,“劳拉钢铁”,“第四大道 429 号”,“活跃” “里昂”,28,“苏珊·怀特”,“74 - 20th Ave.”,“已删除” “巴黎”,5,“劳拉·米勒”,“第七大道 294 号”,“活跃” “里昂”,17,“劳拉·奥特”,“第四大道 443 号”,“活跃” “纽约”,46,“安德鲁·梅”,“第七大道 172 号”,“活跃” “纽约”,44,“西尔维娅奥特”,“361 College Av.”,“活跃” “达拉斯”,19,“苏珊娜·海尼格”,“86 - 20th Ave.”,“活跃” “芝加哥”,11,“朱莉娅怀特”,“412 Upland Pl.”,“活跃” “达拉斯”,10,“安妮·富勒”,“135 Upland Pl.”,“活跃” “纽约”,41,“比尔金”,“546 College Av.”,“已删除” “奥斯陆”、45、“珍妮特·梅”、“第七大道 396 号”、“活跃” “巴黎”,18,“西尔维娅·富勒”,“158 - 20th Ave.”,“审判” “旧金山”,48,“罗伯特怀特”,“549 第七大道”,“活跃” “巴黎”,25,“西尔维亚钢铁”,“269 College Av.”,“暂停” “旧金山”,7,“詹姆斯·彼得森”,“231 Upland Pl.”,“活跃” “奥斯陆”,42,“罗伯特·奥特”,“第五大道 503 号”,“审判”
data.csv 到已知位置。CSV 文件已创建。
如下创建数据适配器:
csv.xml。CSV
data.csv。数据适配器已创建。
本节介绍如何创建报告。
如下创建主报表:
main.jrxml
csv.xml。主报告已创建。
请注意,数据源尚未连接到主报表。这就是人们遇到麻烦的地方。分配 CSV 数据源并不意味着报表可以“查询”数据。需要一个额外的步骤,在这个答案的后面进行描述。
按如下方式创建子报表:
subreport.jrxml
子报表已创建。
从 CSV 文件创建数据集,如下所示:
main.jrxml)。csv
csv.xml。CSV 数据集已创建。
csv
数据集已连接。
在主报表中创建字段如下:
csv。报告字段已创建。
按如下方式将子报表连接到主报表:
main.jrxml 报告。subreport.jrxml 报告。main.jrxml 报告。$P{REPORT_DATA_SOURCE}。输出类似于:
【讨论】: