关于【层次坐标--循环引用】的疑问

大家好,请教个问题,提前感谢。

做了一个关于【层次坐标--循环引用】的报表,写的【循环引用公式】得出的结果有误。

如下图示。 

导出来的Excel表可以看到,【单元格--N6】的值为【-26516】。

并没有按照公式进行计算:-21383 - 0 + 375 + 20980 = -28


问题一:请问我错在什么地方?

我对【日期列_A4】单元格,做了【扩展后排序】。会是这个原因吗?应该如何处理?

虽然可以在【数据集】中通过【SQL--order by】的方式实现。

但是真实业务场景下,不适合写这么长的SQL。(不方便阅读查看,不方便后期运维)

我目前是每个【模块的SQL】单独写一个【数据集】,多个【数据集】汇总成一个【关联数据集】。


问题二:设计页面中,最下面的【合计】行的单元格【N5】,等于【N4】扩展后最下面单元格的值,应该如何编写【公式】?

测试_内置数据集.cpt


image.png

FineReport 冥王星 发布于 2020-1-12 21:14 (编辑于 2020-1-13 09:11)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
shirokoLv6资深互助
发布于2020-1-13 08:42(编辑于 2020-1-13 08:48)

一、帆软公式没有null这个概念,要判断为空可以用len()=0

二、扩展后排序确实会影响层次坐标,要排序可以在数据库排序好

三、层次坐标是可以取到最后一个N4,但是要计算N5其实可以用单纯的计算,N3-SUM(F4)+SUM(G4)+SUM(M4)

  • 冥王星 冥王星(提问者) 感谢同学的回复。 关于第二点:扩展后排序确实会影响层次坐标,要排序可以在数据库排序好 虽然可以在【数据集】中通过【SQL--order by】的方式实现。 但是真实业务场景下,不适合写这么长的SQL。(不方便阅读查看,不方便后期运维) 我目前是每个【模块的SQL】单独写一个【数据集】,多个【数据集】汇总成一个【关联数据集】。 所以想在FR产品前端,实现这个功能。
    2020-01-13 09:13 
  • shiroko shiroko 回复 冥王星(提问者) 数据集单元格也可以进行一个排序,右键单元格-编辑-高级。这个也不会影响到层次坐标。不要用扩展后排序。
    2020-01-13 09:17 
  • 冥王星 冥王星(提问者) 回复 shiroko 同学好。 我在【单元格--高级】,对【A列--日期】设置了【正序规则】; 对【B列--单据号】设置了【倒序规则】; 奇怪的是,【A列--日期】正序规则,生效了;【B列--单据号】倒序规则,没生效。
    2020-01-13 11:15 
  • shiroko shiroko 回复 冥王星(提问者) 只能对最父格设置排序,其他格的设置无效。其他格的排序也要设置到最父格。需要对多个字段排序可以用数值计算或者字符串拼接去做
    2020-01-13 11:51 
最佳回答
0
孤陌Lv6资深互助
发布于2020-1-13 12:12(编辑于 2020-1-13 14:15)

image.png 这个结果哪里不对??


这样???image.png还是这样image.png

  • 冥王星 冥王星(提问者) 同学好。 我在【单元格--高级】,对【A列--日期】设置了【正序规则】; 对【B列--单据号】设置了【倒序规则】; 奇怪的是,【A列--日期】正序规则,生效了;【B列--单据号】倒序规则,没生效。
    2020-01-13 14:08 
  • 孤陌 孤陌 回复 冥王星(提问者) 那你想让他这么来 按照日期先培训 然后在按照单号来 那你就需要设置 日期为分组 这样才可以否则会有冲突的
    2020-01-13 14:10 
  • 3关注人数
  • 586浏览人数
  • 最后回答于:2020-1-13 14:15
    请选择关闭问题的原因
    确定 取消
    返回顶部