如何控制嵌套报表中子报表的显示行数

2024-04-29 09:13

1. 如何控制嵌套报表中子报表的显示行数

//i为需要显示的行数,ldw_child为需要控制的子报表
int i
datawindowchild ldw_child

dw_1.settransobject(sqlca)
dw_1.retrieve()
datastore lds_child
lds_child = create datastore
lds_child.dataobject = 'dataobject'
lds_child.settransobject(sqlca)
lds_child.retrieve()
dw_1.getchild('datawindowchild',ldw_child)
for i = 1 to 3
ldw_child.reset()
ldw_child.settransobject(sqlca)
lds_child.rowscopy(1,3, Primary!, ldw_child, ldw_child.rowcount() + 1, Primary!)
next

destroy lds_child

如何控制嵌套报表中子报表的显示行数

2. 在Datawindow 的报表中嵌套了一个子报表,怎么操作子报表

datawindowchild ldwc
if dbDataWindow1.getchild("dw_1", ldwc) = 1 then
    ldwc.setitem(row, "col", data)
end if

3. jasperreport怎么调用子报表,在页面上显示

我用的是finereport,页面上显示子报表的方法如下,楼主的应该可以参照设置一下吧

1.连接数据库frDemo2.设计报表-新建报表-表样设计-新建一数据集
新建数据集ds1:根据需要编辑SQL语句:select * from 
新建数据库ds2:根据需要编辑SQL语句:select * from
绑定数据列
将数据集的字段拖入对应报表单元格内,并作相应的设置。
单元格设置过滤
进入单元格数据列对话框,点击过滤,设置过滤条件
单元格的表单属性设置
设置表单属性
设置报表填报属性
打开报表|报表填报属性对话框,点击添加按钮,添加一个新的内置SQL。
数据库选择frDemo,模式为空,表选择订单
点击智能添加字段,用来将模板中的所要填入的字段和数据表中的字段对应
添加完后,单击智能添加单元格,填入对应的单元格。可以选单元格不改变时不参与更新,这样可以加快填报后数据更新速度。添加完后点击确定,可以看到在预览中已经自动生成了相对应的更新数据库的SQL语句。
再添加一个内置SQL2,数据库选择frDemo,模式为空以同样的方式智能添加字段à智能添加单元格
希望可以帮到你

jasperreport怎么调用子报表,在页面上显示

4. ACCESS主报表中两个以上子报表排列的问题

、导入和导出)数据存在多种在 Microsoft Office Access 和 Microsoft Office Excel 之间交换数据的方法。 

若要将 Access 中的数据装入 Excel,可以从 Access 数据表中复制数据并粘贴到 Excel 工作表中,从 Excel 工作表连接到 Access 数据库,或者将 Access 数据导出到 Excel 工作表中。 
若要将 Excel 中的数据装入 Access,可以从 Excel 工作表复制数据并粘贴到 Access 数据表中,将 Excel 工作表导入 Access 表中,或者从 Access 表链接到 Excel 工作表。 

“导入”在 Excel 和 Access 中的意义各不相同。在 Excel 中,导入指的是建立一个可刷新的永久数据连接。在 Access 中,导入则指将数据装入 Access 中一次,但不建立数据连接。 
您不能将 Excel 工作簿保存为 Access 数据库。Excel 和 Access 都不提供利用 Excel 数据创建 Access 数据库的功能。 

-------------------------------------------------------------------------------- 

在 Excel 中使用 Access 数据 

如果数据在 Access 中,但您希望在 Excel 中使用这些数据:操作: 交换的性质: 
将 Access 数据复制到 Excel 中 临时 
将 Access 数据导出到 Excel 定期 
从 Excel 连接到 Access 数据 永久 


在 Access 中使用 Excel 数据 

如果数据在 Excel 中,但您希望在 Access 中使用这些数据:操作: 交换的性质: 
将 Excel 数据复制到 Access 中 临时 
将 Excel 数据导入到 Access 定期 
从 Access 链接到 Excel 数据 永久 



-------------------------------------------------------------------------------- 

在 Excel 中使用 Access 数据 
您可能想在 Excel 工作簿中使用 Access 数据,以便利用数据分析和绘制图表功能、数据排列和布局的灵活性或其他一些 Access 中不可用的功能。 

将 Access 数据复制到 Excel 中 
您可以从 Access 的数据表视图复制数据,然后将数据粘贴到 Excel 工作表中。 

启动 Access,然后打开包含要复制的记录的表、查询或窗体。 
在“起始页”选项卡上单击“视图”,然后单击“数据表视图”。 
选择要复制的记录。 
如果要选择特定列,请在相邻的列标题之间拖动。 

在“开始”选项卡上的“剪贴板”组中,单击“复制” 。 
启动 Excel,然后打开要在其中粘贴数据的工作表。 
单击要显示第一个字段名称的工作表区域的左上角。 
若要确保复制的记录不替换现有记录,请确保工作表中您单击的单元格的下方和右方不存在数据。 

在“开始”选项卡上的“剪贴板”组中,单击“粘贴” 。 

将 Access 数据导出到 Excel 
通过使用 Access 中的“导出向导”,可以将一个 Access 数据库对象(如表、查询或窗体)或视图中选择的记录导出到 Excel 工作表中。您在执行导出操作时,可以保存详细信息以备将来使用,甚至还可以制定计划,让导出操作按指定时间间隔自动运行。 

下面是需要将数据从 Access 导出到 Excel 的常见情形: 

您的部门或工作组在处理数据时既使用 Access 也使用 Excel。您在 Access 数据库中存储数据,但使用 Excel 来分析数据和分发分析结果。您的小组目前在需要时将数据导出到 Excel,但您想让这个过程更加高效一些。 
您多数时间都在使用 Access,但您的经理更愿意在 Excel 中查看报表。您要按固定时间间隔将数据复制到 Excel 中,但您想自动完成这个过程以便节省您自己的时间。 

有关将数据从 Access 导出到 Excel 的详细信息,请参阅 Access“帮助”系统。 


从 Excel 连接到 Access 数据 
若要将可刷新的 Access 数据装入 Excel 中,您可以创建一个到 Access 数据库的连接,这个连接通常存储在 Office 数据连接文件 (.odc) 中,并检索表或查询中的所有数据。连接到 Access 数据的主要好处是:您可以在 Excel 中定期分析这些数据,而不需要从 Access 反复复制或导出数据。连接到 Access 数据后,当原始 Access 数据库使用新信息更新时,您还可以自动刷新(或更新)包含该数据库中的数据的 Excel 工作簿。例如,您可能想更新每月分发的 Excel 预算摘要报表以使其包含当月数据。 

单击要存放 Access 数据库中的数据的单元格。 
在“数据”选项卡上的“获取外部数据”组中,单击“自 Access”。 
在“查找范围”列表中,找到并双击要导入的 Access 数据库。 
在“选取数据源”对话框中,单击要导入的表或查询,然后单击“确定”。 

在“导入数据”对话框中,执行以下操作: 
在“选择数据显示方式”下,执行下列操作之一: 
若要以表 (表:关于特定主题的一组数据的集合,以记录(行)和字段(列)的形式存储。)的形式查看数据,请选择“表”。 
若要以数据透视表 (数据透视表:一种交互的、交叉制表的 Excel 报表,用于对多种来源(包括 Excel 的外部数据)的数据(如数据库记录)进行汇总和分析。)的形式查看数据,请选择“数据透视表”。 
若要以数据透视图 (数据透视图:提供交互式数据分析的图表,与数据透视表类似。可以更改数据的视图,查看不同级别的明细数据,或通过拖动字段和显示或隐藏字段中的项来重新组织图表的布局。)和数据透视表的形式查看数据,请选择“数据透视图和数据透视表”。 
或者单击“属性”为导入的数据设置刷新、格式和布局选项,然后单击“确定”。 
在“数据的放置位置:”下,执行下列操作之一: 
若要将数据返回到选择的位置,请单击“现有工作表”。 
若要将数据返回到新工作表的左上角,请单击“新建工作表”。 
单击“确定”。 
Excel 将外部数据区域放在您指定的位置。 
有关连接数据的详细信息,请参阅连接(导入)外部数据。 

在 Access 中使用 Excel 数据 
您可能想在 Access 数据库中使用 Excel 数据,以便利用 Access 的数据管理、安全或多用户功能。Access 中有许多有用的功能,对于使用 Excel 数据的用户来说其中有两个功能尤为有用: 

报表 如果您熟悉 Access 报表的设计,并且想以此类报表的形式汇总和组织 Excel 数据,则可创建 Access 报表。例如,您可以创建更灵活的报表,例如分组和摘要报表、打印的标签和图形报表。 
窗体 如果您想使用窗体查找或显示 Excel 中的数据,则可创建 Access 窗体。例如,您可以创建一个 Access 窗体以与工作表中的列顺序不同的顺序显示字段,或者以更方便的方式在一屏中查看较长的行数据。 

有关使用 Access 窗体和报表的详细信息,请参阅 Access“帮助”系统。 


将 Excel 数据复制到 Access 中 
您可以在 Excel 的工作表视图中复制数据,然后将数据粘贴到 Access 数据表中。 

注释 如果您将工作表中多个字段的数据粘贴到一个数据表中,请确保这些列与要复制的数据的顺序匹配。将多个字段中的数据粘贴到一个窗体中时,Access 将数据粘贴到与源字段同名的字段中,无论它们在窗体中的顺序如何。如果您要复制的数据包含目标窗体中不存在的字段,则 Access 会询问您是否仅粘贴名称匹配的字段。如果不存在名称匹配的字段,则 Access 会根据目标窗体的选项卡顺序粘贴字段,此顺序可能不是所需的顺序。如果源字段名称与目标字段名称不同,您可能需要将数据粘贴到数据表而不是窗体中。 

启动 Excel,然后打开包含要复制的数据的工作表。 
选择要复制的行。 
在“开始”选项卡上的“剪贴板”组中,单击“复制” 。 
启动 Access,然后打开要在其中粘贴行的表、查询或窗体。 
在“数据表”选项卡上,单击“视图”,然后单击“数据表视图”。 
请执行下列操作之一: 
若要替换记录,请选择这些记录,然后在“开始”选项卡上的“剪贴板”组中,单击“粘贴” 。 
若要将数据作为新记录追加,请在“起始页”选项卡上的“剪贴板”组中,单击“编辑”菜单上的“粘贴追加”。 

将 Excel 数据导入到 Access 
若要将 Excel 中的数据存储到 Access 数据库中,并且此后在 Access 中使用和维护这些数据,您可以导入这些数据。导入数据时,Access 会在新表或现有表中存储这些数据,而无需改变 Excel 中的数据。进行导入操作时,一次只能导入一个工作表。若要导入来自多个工作表的数据,请为每个工作表重复执行导入操作。 

下面是需要将 Excel 数据导入 Access 的常见情形: 

您多数时间都在使用 Excel,但以后准备使用 Access 处理这些数据。您想将 Excel 工作表的数据移到一个或多个新的 Access 数据库中。 
您所在的部门或工作组使用 Access,但有时您会收到 Excel 格式的数据,而这些数据又必须合并到 Access 数据库中。您想在接收到 Excel 工作表时将它们导入到数据库中。 
您使用 Access 管理数据,但您所在工作组的其他人员发来的周报是 Excel 工作簿。您想简化导入过程,以确保数据能在每周的特定时间导入到数据库中。 
有关将数据从 Excel 导入 Access 的详细信息,请参阅 Access“帮助”系统。 


从 Access 链接到 Excel 数据 
您可以将 Excel 区域作为表链接到 Access 数据库中。如果您计划继续维护 Excel 中的区域,但又希望可以从 Access 中访问此区域,则可使用此方法。您应该从 Access 数据库而不是从 Excel 创建此类链接。 

在链接到 Excel 工作表或命名区域时,Access 会创建一个新表并链接到源单元格。在 Excel 中对源单元格所做的任何更改都会反映到链接的表中。不过,您不能在 Access 中编辑对应表的内容。如果要添加、编辑或删除数据,必须在源文件中进行更改。 

下面是需要从 Access 中链接到 Excel 工作表的常见情形: 

您想继续在 Excel 工作表中保留数据,但要能够使用 Access 强大的查询和报表功能。 
您所在的部门或工作组使用 Access,但需要处理的外部源数据位于 Excel 工作表中。您不想维护外部数据的副本,但要能够在 Access 中处理这些数据。

5. irport怎么从主表传递fields值给子表

方法/步骤
1
1.     打开ireport后,首先设置数据源,这里对数据源进行命名为JDBCCONN,设置好之后点击test可以测试连接是否正确,若是不正确可能有以下几种原因,
Ø  url地址错误
Ø  用户名或者密码错误
Ø  没有引入连接数据库所需要的jar包

2
2.  新建报表后对该报表绑定数据集,如下图所示,选择你所需要在报表中显示的数据所对应的数据库表。然后选出所需要显示的表数据。

3
3.     将通过步骤二所得到的数据添加到报表中来,此时数据会显示在Fields中。这里可以根据自己的需要将这些Field拖动到报表中来,根据自己所需要的格式来布局。

4
4.     设计字表,在组件面板中找到subreport,将子报表拖到父表中来,

5
5.     若是子报表存在则选择该表所存在的位置,若不存在则新建子报表,如图所示:

6
6.     为字表显示数据绑定所需的数据集
 

7
7.     将查询出来的数据添加到字表中的fields中。

8
8.     此处的分组可以设置可不设置,在设计好子表后也可以对所需的数据进行分组操作。

9
9.     设置子报表的名称,这里可以看到子表所存在的相对路径和绝对路径。

10
10.     子表和父表

11
11.     子表中新增一个参数,这里设置为sid,该变量的含义是父表示通过一个参数来查询所对应的子表。这里的sid的类型必须和父表中查询所对应的字段类型相同,不然会出现类型不匹配错误。

12
12.     父表中选中字表,查看子表的属性,查找parameters选项。新建一个parameter,该参数是和子表交互所传的参数。上面说过子表中建立的sid参数的数据类型必须和父表中参数的数据类型一样,主要体现在这里。

13
13.     设计好子表,点击preview后首先弹出的是如下图所示的对话框,这里就是通过附表索要传递的参数,这里可以通过手动输入来查看。

14
14.     现在点击父表的preview,查看如下图所示,证明参数已经传递到了字表中。
子报表的设计以及参数的传递已经正确执行。

15
同为比较常用的java报表生成工具,FineReport对子报表的解决方案和实现方法与ireport有所不同,具体实现思路和步骤如下,供ireport使用者借鉴:
16
表单式主子表
1. 描述
单表式主子报表特点是用单个报表实现主子表的业务逻辑。一般包含多个数据集,通常由自由格式部分及列表格式部分,且为一对多,父与子的关系,如下图上方为订单信息,下方这个订单的明细:
这样的主子报表制作比较方便,且可以用于填报,因此称之为表单式主子报表。

17
2. 示例
2.1 打开报表
打开报表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\FreeReport\Free.cpt。在该报表基础上来实现表单式主子表。
18
2.2 新增数据源
新增数据集ds2 ,SQL语句为SELECT * FROM [订单明细]。
19
2.3 表样设计
在原报表基础上,添加子表区域:

20
2.4 绑定数据列
将子表字段拖入对应单元格内,并作相应的设置。
单元格A9输入公式:=&B9,左父格为B9,给B9单元格扩展出来的数据编号;
单元格F9输入公式:=C9*D9*(1-E9),表示求产品的金额;
给每个订单进行合计,A10单元格设置父格为C2,并在F10中输入公式:=sum(F9)。

21
2.5 建立主子表的关联
主子表有着一个相同的数据列:订单ID,可通过过滤将两个表中的订单ID关联起来,双击B9增加过滤条件:订单ID等于'C2':

22
2.6 设置分页
此时主子表便制作好了,为了使报表可读性更强,我们设置分页,使得每页显示一个订单信息。右击A10单元格,选择其他属性>行后分页。
23
3. 保存与预览
保存模板。点击设计器中的分页预览,效果如上。
24
嵌入式主子表
1. 描述
嵌入式主子报表特点是在单元格中嵌入独立的报表模板,嵌入的模板称为子报表,嵌入子报表后的整体称为主报表。
各子报表间格式可以不对齐,子表与主表的格式也可以不对齐,子报表能够获取主表中的值。如下图员工销售一览表:

25
2. 示例
2.1 制作主报表
如下图设计主表:

26
添加参数
在主表中定义一个报表参数,参数名为销售员,通过参数查询某一个销售员的个人信息及订单信息。
使用默认的参数界面,销售员参数控件选择下拉框,实际值为雇员表中的雇员ID,显示值为对应的姓名。具体可查看参数定义与参数面板制作章节。
27
2.2 添加不同参数的子报表
子报表sub_1.cpt说明
子报表1:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\MasterReport\sub_1.cpt。
该子表中通过参数“ID”查询出对应销售员的个人信息。SQL语句为:SELECT * FROM 雇员 where 雇员ID = ${ID},表样为:

28
在主表中插入子表1
右击主表B3单元格,单元格元素>插入子报表,弹出编辑子报表对话框,选择子表1所在路径;
添加参数ID(子表中的参数名称),值使用公式$销售员,将主表的销售员参数值传递给子表1的ID参数,如下图设置:

29
2.3 添加相同参数的子报表
子报表sub_2.cpt说明
子报表2:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\MasterReport\sub_2.cpt。
该子表中通过参数“销售员”查询出对应销售员的订单信息。SQL语句为:SELECT * FROM 订单 where 雇员ID = ${销售员},表样为:

30
在主表中插入子表2
右击主报表D5单元格,单元格元素>插入子报表,弹出编辑子报表对话框,选择子表2所在路径;
由于子表2的参数名与主表中的参数名相同,这时可以不设置传递参数,直接选择继承报表的参数。

31
3. 保存与预览
保存模板,点击设计器中的分页预览,效果如上。

irport怎么从主表传递fields值给子表

最新文章
热门文章
推荐阅读