在子报表中创建和使用CSV数据 背景

在子报表中创建和使用CSV数据 背景,csv,jasper-reports,subreport,Csv,Jasper Reports,Subreport,Jaspersoft社区论坛提出了关于如何在报告中使用CSV数据源的未回答问题 问题 使用时,可以方便地将本地文件用作数据源。完成这项任务的指令充其量是零碎的,充其量是不完整的 问题: 将CSV文件(数据源)与主报表一起使用以及子报表使用该数据需要哪些步骤?注意:此解决方案会从子报表中的列表中删除第一个结果,这需要解决方法,但此答案中没有描述 概述 主要步骤包括: 创建CSV文件 创建数据适配器 创建主报表和子报表 连接数据集 创建报告字段 连接子报表 创建CSV文件 按如下方式创建CSV文件:

Jaspersoft社区论坛提出了关于如何在报告中使用CSV数据源的未回答问题

问题 使用时,可以方便地将本地文件用作数据源。完成这项任务的指令充其量是零碎的,充其量是不完整的

问题:
将CSV文件(数据源)与主报表一起使用以及子报表使用该数据需要哪些步骤?

注意:此解决方案会从子报表中的列表中删除第一个结果,这需要解决方法,但此答案中没有描述

概述 主要步骤包括:

  • 创建CSV文件
  • 创建数据适配器
  • 创建主报表和子报表
  • 连接数据集
  • 创建报告字段
  • 连接子报表
  • 创建CSV文件 按如下方式创建CSV文件:

  • 打开一个文本编辑器
  • 粘贴以下内容: city,age,name,address,status "Dallas",47,"Janet Fuller","445 Upland Pl.","Trial" "Lyon",38,"Andrew Heiniger","347 College Av.","Active" "Dallas",43,"Susanne Smith","2 Upland Pl.","Active" "Berne",22,"Bill Ott","250 - 20th Ave.","Active" "Boston",32,"Michael Ott","339 College Av.","Trial" "Dallas",4,"Sylvia Ringer","365 College Av.","Active" "Boston",23,"Julia Heiniger","358 College Av.","Active" "Chicago",39,"Mary Karsen","202 College Av.","Active" "Dallas",40,"Susanne Miller","440 - 20th Ave.","Trial" "Berne",9,"James Schneider","277 Seventh Av.","Active" "Dallas",36,"John Steel","276 Upland Pl.","Suspended" "Chicago",35,"George Karsen","412 College Av.","Suspended" "Dallas",37,"Michael Clancy","19 Seventh Av.","Deleted" "Lyon",2,"Anne Miller","20 Upland Pl.","Active" "Dallas",0,"Laura Steel","429 Seventh Av.","Active" "Lyon",28,"Susanne White","74 - 20th Ave.","Deleted" "Paris",5,"Laura Miller","294 Seventh Av.","Active" "Lyon",17,"Laura Ott","443 Seventh Av.","Active" "New York",46,"Andrew May","172 Seventh Av.","Active" "New York",44,"Sylvia Ott","361 College Av.","Active" "Dallas",19,"Susanne Heiniger","86 - 20th Ave.","Active" "Chicago",11,"Julia White","412 Upland Pl.","Active" "Dallas",10,"Anne Fuller","135 Upland Pl.","Active" "New York",41,"Bill King","546 College Av.","Deleted" "Oslo",45,"Janet May","396 Seventh Av.","Active" "Paris",18,"Sylvia Fuller","158 - 20th Ave.","Trial" "San Francisco",48,"Robert White","549 Seventh Av.","Active" "Paris",25,"Sylvia Steel","269 College Av.","Suspended" "San Francisco",7,"James Peterson","231 Upland Pl.","Active" "Oslo",42,"Robert Ott","503 Sixth Av.","Trial" 城市、年龄、姓名、地址、身份 “达拉斯”,47,“珍妮特·富勒”,“445高地党”,“审判” “里昂”,38岁,“安德鲁·海尼格”,“347学院大道”,“活跃” “达拉斯”,43岁,“苏珊娜·史密斯”,“高地2号”,“活跃” “伯尔尼”,22岁,“比尔·奥特”,“第20大街250号”,“活跃” “波士顿”,32,“迈克尔·奥特”,“339学院大道”,“审判” “达拉斯”,4,“西尔维亚·林格”,“365学院大道”,“活跃” “波士顿”,23,“朱莉娅·海尼格”,“358学院大道”,“活跃” “芝加哥”,39岁,“玛丽·卡森”,“202学院大道”,“活跃” “达拉斯”,40,“苏珊米勒”,“第20大街440号”,“审判” “伯尔尼”,9,“詹姆斯·施耐德”,“第七大道277号”,“活跃” “达拉斯”,36,“约翰钢铁公司”,“276高地公司”,“暂停” “芝加哥”,35岁,“乔治·卡森”,“412学院大道”,“停学” “达拉斯”,37,“迈克尔·克兰西”,“第七大道19号”,“删除” “里昂”,2,“安妮·米勒”,“高地20号”,“活跃” “达拉斯”,0,“劳拉钢铁”,“第七大道429号”,“活跃” “里昂”,28,“苏珊娜·怀特”,“第20大街74号”,“删除” “巴黎”,5,“劳拉·米勒”,“第七大道294号”,“活跃” “里昂”,17岁,“劳拉奥特”,“第七大道443号”,“活跃” “纽约”,46,“安德鲁·梅”,“第七大道172号”,“活跃” “纽约”,44,“西尔维亚奥特”,“361学院大道”,“活跃” “达拉斯”,19,“苏珊娜·海尼格”,“第20大街86号”,“活跃” “芝加哥”,11,“朱莉娅·怀特”,“412高地公司”,“活跃” “达拉斯”,10,“安妮·富勒”,“135高地党”,“活跃” “纽约”,41,“比尔·金”,“546学院大道”,“删除” “奥斯陆”,45,“珍妮特·梅”,“第七大道396号”,“活跃” “巴黎”,18,“西尔维亚·富勒”,“第20大街158号”,“审判” “旧金山”,48,“罗伯特·怀特”,“第七大道549号”,“活跃” “巴黎”,25,“西尔维亚钢铁”,“269学院大道”,“停课” “旧金山”,7,“詹姆斯·彼得森”,“高地231号”,“活跃” “奥斯陆”,42,“罗伯特·奥特”,“第六大道503号”,“审判”
  • 将文件另存为
    data.csv
    ,保存到已知位置
  • 将创建CSV文件

    创建数据适配器 按如下方式创建数据适配器:

  • 启动Jaspersoft Studio
  • 打开项目浏览器
  • 右键单击项目
  • 单击新建→ 数据适配器
  • 文件名设置为:
    csv.xml
  • 单击下一步
  • 单击CSV文件
  • 单击下一步
  • 名称设置为:
    CSV
  • 单击文件
  • 浏览并选择上一节中创建的
    data.csv
  • 单击从文件的第一行获取列名
  • 单击“完成”
  • 数据适配器已创建

    创建主报表和子报表 本节介绍如何创建报告

    创建主报告 按如下方式创建主报告:

  • 单击文件→ 新的→ 贾斯珀报告
  • 选择空白A4
  • 单击下一步
  • 文件名设置为:
    main.jrxml
  • 单击下一步
  • 将数据适配器设置为:
    csv.xml
  • 单击“完成”
  • 将创建主报告

    请注意,数据源尚未连接到主报表。这就是人们遇到麻烦的地方。分配CSV数据源并不意味着报表可以“查询”数据。还需要一个附加步骤,将在本答案后面介绍

    创建子报表 按如下方式创建子报表:

  • 单击文件→ 新的→ 贾斯珀报告
  • 选择空白A4
  • 单击下一步
  • 将文件名设置为:
    subreport.jrxml
  • 单击“完成”
  • 将创建子报表

    创建数据集 根据CSV文件创建数据集,如下所示:

  • 切换到Jaspersoft Studio中的主报告选项卡(
    main.jrxml
  • 单击设计选项卡
  • 大纲选项卡中,右键单击main
  • 单击创建数据集
  • 将数据集名称设置为:
    csv
  • 单击下一步
  • 将数据适配器设置为:
    csv.xml
  • 单击下一步
  • 单击>将字段向右移动
  • 单击“完成”
  • 将创建CSV数据集

    连接数据集
  • 大纲中,展开main
  • 右键单击csv
  • 单击连接到主数据集
  • 将数据适配器语言设置为:
    csv
  • 单击“完成”
  • 数据集已连接

    创建报告字段 在主报告中创建字段,如下所示:

  • 大纲中,右键单击main
  • 单击数据集并查询
  • 语言设置为:
    csv
  • 单击读取字段
  • 单击确定
  • Th