Finreport相关习题bug

练习1 明细表习题4:图表练习5:参数联动现成报表习题7:图表热点链接 饼状图太多习题 7 的子模板排版不对 思路是应该是左父格关系 但是都试完了自定义左父格还是不太行设置下拉框联动图表步骤创建数据库数据库插入图片第8题 填报地区销售概况的一个小问题决策报表的一些小问题试卷2 中的第一题 模拟考试中的bug试卷2 第三题 参数联动习题7 超级链接钉钉集成相关卷2 综合考核资深试卷Finreport 别怕动态卡片思路range公式综合考核移动端问题


只是当时做的一些记录 可能不是特别细节 不懂的可点赞评论免费解答

练习1 明细表

image-20211018154608539

习题二 多元报表

image-20211018162516367

image-20211018162556538

数据字典不会用

这个地方需要增加过滤条件

就是两个不同的表 然后 弄的时候 需要把两个不同的表之间关联的字段鼠标右键增加过滤条件就可以了

然后小计的字段是跟A7 一共有两个地方是需要左父格的

image-20211018174201790

image-20211018164316111

image-20211018165825624

image-20211018165845781

这个公式意思就是 用这个cpt举例 用“单价” 除以 (c[!0])意思是循环“单价”的所有数据 然后“单价”/“循环”数据和 就是占比

{A2=$A2} 这个是层次坐标 但是不知道什么意思

习题4:图表

image-20211019131849448

控制的是图表右侧的汉字标题

image-20211019131915599

对照系列名的值

image-20211019131948715

分类名对照图表的最下面的地方

image-20211019152428843

三个问题

1.点击查询 不随查询的年份更改图表分类 【参数联动】

2.柱形图粉红色没有显示出来 然后 太细了

3.y轴的数据 左右互换

4.将右边统计图的已付订单数量 调换位置到中间

原堆积数据

image-20211021154419946

image-20211027163736586

练习5:参数联动

image-20211027163509229

现成报表

image-20211020093218822

习题7:图表热点链接 饼状图太多

image-20211020101307828

image-20211020102850401

3.饼图分类名前面的图标不是菱形 应该是正方形

习题 7 的子模板排版不对 思路是应该是左父格关系 但是都试完了自定义左父格还是不太行

image-20211020105911378

image-20211021214148285

image-20211020150544548

image-20211020150749126

image-20211020150920531

image-20211020151050126

image-20211020151139854

习题五联动的

 班级的数据集:-- where 1=1   ${if(len(classno)==0,"","and classno = '"+classno+"'")}
 学号的数据集:-- ${if(len(学号)==0,"","and studentno = '"+学号+"' ")}

设置下拉框联动图表步骤

 1)新建普通报表,添加数据集 ds1,SQL 语句为:select distinct 销售员 from 销量
 2)添加数据集 ds2,SQL 语句为:SELECT * FROM 销量 where 销售员='${销售员}'
 1)B1 单元格写入文本信息销售员,C1 单元格添加下拉框控件,合并一片单元格,插入折线图,如下图所示:
 菜单栏选择模板>模板 Web 属性>填报页面设置,勾选直接显示控件,使填报预览时直接显示控件类型:
 选中 C1 单元格,右边属性面板选择控件设置>属性,下拉框数据字典的实际值和显示值都绑定为销售员,如下图所示:
 选中 C1 单元格,右边属性面板选择控件设置>事件,添加编辑后事件,如下图所示:
 # JavaScript 代码如下:
 ​
 # //将当前选择的销售员设置进D1单元格
 # contentPane.setCellValue('D1',null,this.getValue());
 # //点击D1单元格中的超链接
 # $('td[id^=D1] .linkspan').click();
 1)选中折线图所在 B3 单元格,如下图绑定图表数据:
 1)选中 D1 单元格,添加一个联动单元格类型的超级链接,设置联动的单元格为折线图所在的 B3 单元格,新增一个参数销售员,值为 D1 单元格,如下图所示:
 注:此处联动的销售员必须是单元格号,不能用公式=$$$,否则取不到用 JS 动态设置到此单元格的值。
 ​
 2)为了前端展示时隐藏 D1 单元格的值,选中 D1 单元格,右边属性面板选择单元格属性>形态,设置公式形态为公式'',如下图所示:
 保存模板,点击填报预览,效果如下: 不支持移动端

创建数据库

image-20211021111428113

image-20211021111458998

image-20211021111633855

image-20211021111837588

数据库名字不能带有空格

数据库插入图片

image-20211021125425900

image-20211021130213084

 在MySQL中Blob是一个二进制的对象,它是一个可以存储大量数据的容器(如图片,音乐等等),且能容纳不同大小的数据,在MySQL中有四种Blob类型,他们的区别就是可以容纳的信息量不容分别是以下四种:
       ①TinyBlob类型  最大能容纳255B的数据
       ②Blob类型  最大能容纳65KB的
       ③MediumBlob类型  最大能容纳16MB的数据
       ④LongBlob类型  最大能容纳4GB的数据

第8题 填报

出现的问题就是 表格中没有数据了

image-20211021222909027

排查bug思路 就是将不能显示的报表部分全部清楚内容 然后复制好的报表部分 从头再来

即使一无所有 也不缺从头再来的勇气 —— 张一山

image-20211021225431780

这个地方之所以选择参数联动表格没有变化 是因为在数据集中没有对应的参数接收控件所发出的信号

按照学号进行查询 将学号设计为参数就可以查询的到了

image-20211021230859993

image-20211021232607656

image-20211022140211185

image-20211022141559082

image-20211022141832069

image-20211022142723941

image-20211022144214532

地区销售概况的一个小问题

image-20211022095404342

image-20211022100124420

还有一种情况就是 单元格中的字段不同 所以需要的操作也略微不同 就是我使用销量字段可以直接进行销量的汇总

使用销售总量 就需要给他一个分组相当于参考线 给一个销售员作为分组

image-20211022100343314

决策报表的一些小问题

image-20211022102156086

image-20211022103152803

试卷2 中的第一题 模拟考试中的bug

从图中可以看到浏览器浏览的答案部分 和原题中的答案排版不太一样 怎么解决呢

使用sql 列合并 然后分割 纵向扩展

sql合并有两种

第一种是Frdemo自带数据库 可使用 a|| ‘-’ ||B 进行连接

第二种是数据集sql 可使用CONCAT(str1,str2)

返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。

image-20211026200027718

image-20211026202145696

试卷2 第三题 参数联动

image-20211027154918824

image-20211027152639461

image-20211027153323225

问题就是季度可以显示实际值 但是月份就不显示实际值了

解决 增加控件的名称 继续判断

 switch($comboBox0,"一季度",1,"二季度",2,"三季度",3,"四季度",4,$t,"1月",1,,"2月",2,"3月",3,"4月",4,"5月",5,"6月",6,"7月",7,"8月",8,"9月",9,"10月",10,"11月",11,"12月",12)

还有一个问题就是在

 select jd,jdid from mwh0tn where '${t}'='季度' 
 UNION 
 SELECT yf,yfid from am32r6 where '${t}'='月份' order by yfid 
 ​

image-20211027155106073

习题7 超级链接

image-20211028090927553

image-20211028100550275

数据集使用的是

 SELECT * FROM PRODUCT where PRODUCERID='${PRODUCERID}' order by cost ${A} ${B},quantity ${A} ${B}
 ​

image-20211028100743509

修改bug

主要是修改数据集

image-20211028101107296

钉钉集成相关

钉钉集成请确认当前应用ID和AppKey是否对应 bug

image-20211028143040487

image-20211028143111001

image-20211028150038758

这个地方是因为有一个权限没有打开

image-20211104174121920

卷2 综合考核

image-20211028161956962

资深试卷

第一题

image-20211029105415876

要求是每6行一页

 $$$=min(B2[;!0]{B2>0})
 ​
 公式含义
 当前值 = min(number1,number2)
 ​
 ​
 $$$=min(B2[;!0]{B2>0})

错误的

image-20211029125430033

正确的

image-20211029125537185

没有关系的 就是单纯坐标

image-20211029135638911

这个公式是说 循环C2扩展出来的所有单元格的值 过滤条件是A2 但是这个A2

Finreport 别怕

image-20211029163554359

第二题

image-20211029095156742

动态排名- FineReport帮助文档 - 全面的报表使用教程和学习资料 (fanruan.com)

image-20211029105201155

动态卡片思路

image-20211103171715159

思路:

 首先根据题目要求:
 # 1.所有卡片的装箱数和为总货物数
 # 2.每箱箱数不能超过箱数最大可装
 # 3.操作员 循环 
 # 4.每页最多生成6张卡片
 # 5.图中样式排列 [每页横向排列两张卡片]
 首先第一个需求 需要判断 控件获取值
 总货物为 $huowu
 每箱最大可装 $max
 操作员数 $people
 if(int($huowu/$max)>=int(right(B2,3)),$max,mod($huowu,$max))
 ​
 ​

range公式

RANGE(from,to,step)函数表示从整数from开始,以step为每一步的大小,直到整数to的一个数字序列。 例如: RANGE(1,5,1)表示从1开始,直到5(包括5),每一步大小为1,那么它返回一个数字序列为[1,2,3,4,5]。 RANGE(-1,6,2)表示从-1开始,直到6(包括6),每一步大小为2,那么它返回一个数字序列为[-1,1,3,5]。 备注:RANGE函数有三种参数形式:

  1. RANGE(to),默认的from为1,step为1,例如:RANGE(4)返回[1,2,3,4]。RANGE(-5)返回[]。

  2. RANGE(from,to),默认的step为1,例如:RANGE(-1,3)返回[-1,0,1,2,3]。RANGE(0,5)返回[0,1,2,3,4,5]。

  3. RANGE(from,to,step),三个参数的情况参照上面的注释,例如:RANGE(6,-1,-2)返回[6,4,2,0]。RANGE(4,1,1)返回[]。

综合考核

分组

image-20211112104236612

移动端问题

这个移动端有一个地方就是app服务器连接 使用的ip是命令提示符中的ipconfig

手机热点——电脑热点

手机WIFI——电脑WIFI

即同IP下

image-20211115144921958

image-20211115144933655

image-20211115104021634

image-20211115144306417

bug

image-20211115144613176

解决:直接刷新即可

效果图

image-20211115144646882

おすすめ

転載: blog.csdn.net/nanyangnongye/article/details/121412012