【生意多】-免费发布分类信息
当前位置: 首页 » 新闻 » 观点 » 正文

报表设计视图中的()按钮是窗体(报表设计一般包括哪些步骤)

放大字体  缩小字体 发布日期:2022-07-03 13:36:08    浏览次数:5

我们的参数联动在报表展示时,联动效果是通过客户自己的选择来实现联动的,但是在当联动内容是一一对应的时候,客户不希望还要再选一次才能实现联动效果,希望在参数面板选择一次参数之后,后面的数据自动展现出来,形如填报界面的自动匹配,这个该如何实现呢?同时还希望,后面联动的数据前面的标签在第一次打开模板时,并不展现出来,这个又该如何实现呢?

finereport报表设计

01 实现思路对照填报界面的自动匹配章节,在参数界面也用sql语句实现一一对应,当第一次打开模板时,标签不显示可以通过js控制实现。

02 描述实现选择客户名称,客户的相应信息在参数面板上展示,查询前,只显示客户名称的下拉框控件,其他的不显示,点击查询后,报表展示该客户的订单信息,如下图:

03 新建模板新建模板数据集即数据库查询,SQL语句为SELECt * FROM [订单]。定义模板参数id:模板>模板参数,添加一个模板参数id。

04 参数面板设计参数对应的控件设置添加参数id生成的控件,控件类型为下拉框控件,id标签改名为:客户名称。下拉框控件的数据字典设置如下:联动控件的设置此处,将客户详细信息显示在参数面板上,以标签控件来展示。增加2个新的标签,其中一个固定标签的控件名设置name,控件值为联系人姓名,另外一个动态标签的控件值为公式:sql("FRDemo", "select 联系人姓名 from 客户 where 客户ID='" + $id +"'", 1, 1),如下:同理,设置好联系人职务,地址和电话号码等标签的设置,完成之后,参数面板如下:标签不可见设置由于要实现在打开模板时,只显示下拉框,其余的标签不显示,那么就需要将所有固定标签设置为不可见,即属性>基本属性>可见,将勾去掉即可;同时,在编辑下拉框之后,参数面板上的标签又需要显示出来,则可以在下拉框控件处添加一个编辑后事件,代码如下:var a=this.options.form.getWidgetByName("name");a.setVisible(true);注:代码中的name是固定标签的控件名,由于要控制多个固定标签,则需要重复写多个这段代码,只是控件名需要一一对应,设置好的参数面板如下:

05 报表主体设计如下图:在A2单元格处设置模板参数的过滤。

06 保存于预览将该模板保存之后,点击分页预览就会看到如上的效果。在线查看模板效果请点击ParaConnection2.cp已完成的模板,可参照:%FR_HOME%WebReportWEB-INFreportletsdocParameterParaConnection2.cpt。

 
(文/小编)
打赏
免责声明
• 
本文为小编原创作品,作者: 小编。欢迎转载,转载请注明原文出处:https://www.31duo.com/news/show-3633951.html 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们。
 

(c)2016-2019 31DUO.COM All Rights Reserved浙ICP备19001410号-4

浙ICP备19001410号-4