FineReport复杂表格软件- 相对层次坐标

news2025/1/7 23:38:59

1. 概述

相对层次坐标是用来描述目标单元格和当前单元格之间的位置关系的表达式,概念图如下图所示:

说明:

参数

说明

Cellx

表示需要返回结果的单元格

Celly

表示位移时参考的单元格

z

代表相对位移的位置

注:相对后移需要使用“-”符号,相对前移需要使用“+”符号。

Cellx[Celly:-z]

记录位移前 Celly 和 Cellx 的对应关系,记为关系1,当Celly完成-z个位置的位移后,按照‘关系1’返回对应的Cellx。

2. 纵向扩展示例

 2.1 创建报表

1)使用内置数据 S产品 数据创建如下图所示的报表:

2.2 插入相对层次坐标公式

1)此时在 C2、D2 单元格插入公式B2[A2:-1]、B2[A2:+1],如下图所示:

得到的结果如下图所示:

注:供应商 ID 为3 的那个分组,对应第三列层次坐标的结果中,是包含「肉松」的;但因为供应商 3 对应的产品名称展开之后只有 3 个单元格,所以子格 C2 只能依据 B2 的展开展示 3 个。

公式说明:

公式

说明

B2

表示需要返回结果的单元格

A2

需要返回结果的单元格的父格,进行位移需要参考的单元格

若该单元格有父格,则需要从最高级别的分组为基准从头开始计算

-1

相对下移一位,返回上一位单元格上的数据

B2[A2:-1]

C2 单元格返回以 A2 单元格为父格的上一个 B2 单元格纵向扩展的数值

示例中为苹果汁、牛奶、番茄酱、盐、麻油、海苔酱、酱油、海鲜粉、胡椒粉

公式说明:

公式

说明

B2

表示需要返回结果的单元格

A2

需要返回结果的单元格的父格,进行位移需要参考的单元格

若该单元格有父格,则需要从最高级别的分组为基准从头开始计算

+1

相对上移一位,返回下一位单元格上的数据

B2[A2:+1]

D2 单元格返回以 A2 单元格为父格的下一个 B2 单元格纵向扩展的数值。

示例中为:盐、麻油、海苔酱、酱油、海鲜粉、胡椒粉、鸡、蟹、鸡精

3. 横向扩展示例

 3.1 创建报表

1)使用内置数据 STSCORE 数据创建如下图所示的报表:

3.2 插入相对层次坐标公式

此时在 B3 单元格和 B4 单元格分别插入公式 B2[;B1:-1]和 B2[;B1:+1],如下图所示:

得到的结果如下图所示:

公式说明:

公式

说明

B2

表示需要返回结果的单元格

B1

需要返回结果的单元格的父格,进行位移需要参考的单元格

若该单元格有父格,则需要从最高级别的分组为基准从头开始计算

-1

相对后移一位,返回前一位单元格上的数据

B2[;B1:-1] 

B3 单元格返回以 B1 单元格为父格的上一个 B2 单元格横向扩展的数值。

示例中为 4013、4004、3984、4011

B2[;B1:+1]

B4 单元格返回以 B1 单元格为父格的下一个 B2 单元格横向扩展的数值。

示例中为4004、3984、4011、4029

 总结

帆软FineReport软件的母公司——16年持续深耕帆软报表应用,并在Gartner报表平台全球市场指南中成功入选,是国内唯一入选的软件!此外,凭借着本土优势,FineReport软件的售前、售中、售后都遍布全国各地,确保每一个项目都能完美落地。如果您也在挑选帆软企业级链路数据建设,不妨免费试用一下FineReport软件~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/102213.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】必须掌握的Linux常见指令分类讲解

目录一.Linux下的文件树二.工作目录切换命令1.ls——显示当前路径下的文件和目录2.pwd——显示当前目录的绝对值路径3.cd——切换至指定目录三.文件目录管理命令1.touch——创建空文件2.tree——树状打印目录3.mkdir——创建目录4.rmdir 和 rm ——删除目录5.cp——拷贝文件或目…

Python编程小白入门技巧,从入门到精通只需一个月。

毫无疑问,Python 是当下最火的编程语言之一。对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python 看似是一件十分困难的事。其实,只要掌握了科学的学习方法并制定了合理的学习计划,Python 从 入门到精通只需要一个月…

【iOS】接口与API设计

文章目录前言用前缀避免命名空间冲突提供“全能初始化方法”实现description方法尽量使用不可变对象使用清晰而协调的命名方式方法命名类与协议的命名为私有方法名加前缀理解Objective-C错误模型理解NSCopying协议前言 我们在构建程序应用时,如果决定重用代码&…

DPDK 网卡驱动学习

DPDK版本19.02 初始化: /* Launch threads, called at application init(). */ int rte_eal_init(int argc, char **argv) {.../* rte_eal_cpu_init() ->* eal_cpu_core_id()* eal_cpu_socket_id()* 读取/sys/devices/system/[cpu|node]* 设置lcore_con…

考试管理系统

开发工具(eclipse/idea/vscode等): 数据库(sqlite/mysql/sqlserver等): 功能模块(请用文字描述,至少200字): 模块划分:老师模块、班级模块、学生模块、课程模块、试题模块、试卷模块、 组卷模块、考试模块、答题模块 管…

Python数据分析实战之用户消费行为数据分析

任务1:数据预处理 表格数据资源如下百度网盘👇 链接:https://pan.baidu.com/s/1pUYfRIe557v6O9ByB2rhEw 提取码:ovgl import numpy as np import pandas as pd import matplotlib.pyplot as plt # %matplotlib inline # 更改绘…

OrangePi 5 Docker下安装OpenWRT作软路由(同样适用于树莓派等设备)

OrangePi5 Docker下安装OpenWRT作软路由(同样适用于树莓派等设备) 说明 本文的软路由作为家中的二级路由,用一根网线连接主路由的LAN口和二级路由的WAN口(当主路由使用配置类似) 如果你想要作为旁路由或中继路由使用…

VUE中render渲染函数(h函数)

vue在绝大多数情况下都推荐使用模板来编写html结构,但是对于一些复杂场景下需要完全的JS编程能力,这个时候我们就可以使用渲染函数 ,它比模板更接近编译器 vue在生成真实的DOM之前,会将我们的节点转换成VNode,而VNode组合在一起形…

巡更标签 “ PE29_BLE_XG

在我们日常中有一些场景涉及到打卡,比如一个设备需要维护,需要每天有工作人员到现场进行检查或者维护操作,目前普通的做法是弄个二维码到场扫码或者本子记录,用记录的方式明显太落后,容易导致监管不好操作,…

STM32 51单片机——搭建keil5的开发环境(ARM)

知识点:keil/proteus搭建概述、环境搭建 实训day1——12月19日 目录 1 keil安装 1.1 安装KEIL5 安装包 步骤1: 步骤2: 步骤3: 步骤4: 步骤5: 1.2 添加License 步骤1: 步骤2&#xff…

LabVIEW中忽略特定错误

LabVIEW中忽略特定错误 在LabVIEW中收到错误,但已经确认它不会对我的应用程序产生负面影响。如何忽略或清除此错误? LabVIEW程序因为出现错误而中止,但希望代码在收到此错误后继续。怎样才能做到这一点? 解决方案 忽略错误有三…

实验9 利用Wireshark软件分析DHCP

目录 一、实验目的及任务 二、实验环境 三、预备知识 四、实验步骤 五、实验报告内容 一、实验目的及任务 1.通过协议分析进一步明确DHCP报文格式中各字段语法语义; 2.进一步明确DHCP工作原理并能够描述 二、实验环境 联网的计算机;主机操作系…

iead中安装Lombok插件、Lombok注解的使用

Lombok插件安装&#xff1a; 1.pom.xml引入Lombok依赖包&#xff1a; <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.10</version></dependency>2.file-setting: 安装Lom…

Python中变量的定义和使用规则

一、如何理解Python中的变量 在解释变量这个东东之前&#xff0c;我先给大家看一组代码&#xff0c;如下图&#xff1a; 上图里面&#xff0c;a作为变量&#xff0c;每次存放的数据和数据类型都不同。看到这里大部分人应该明白了&#xff0c;变量就是随时都可以改变的量&#…

[附源码]计算机毕业设计Python的桌游信息管理系统(程序+源码+LW文档)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

UG/NX二次开发Siemens官方NXOPEN实例解析—2.2 Selection

列文章目录 UG/NX二次开发Siemens官方NXOPEN实例解析—2.1 AssemblyViewer UG/NX二次开发Siemens官方NXOPEN实例解析—2.2 Selection 列文章目录 文章目录 前言 一、知识点提取 二、案例需求分析 三、程序分析 总结 前言 随着工业智能化的不断发展&#xff0c;UG二次开…

代码随想录训练营第十二天

专题&#xff1a;栈和队列 题目&#xff1a;滑动窗口最大值 给定一个数组 nums&#xff0c;有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 题目解析&#xff1a;…

【Flink实时数仓】数据仓库项目实战 《五》流量域来源关键词粒度页面浏览各窗口汇总表 【DWS】

文章目录【Flink实时数仓】数据仓库项目实战 《五》流量域来源关键词粒度页面浏览各窗口汇总表 【DWS】1.1流量域来源关键词粒度页面浏览各窗口汇总表&#xff08;FlinkSQL&#xff09;1.1.1 主要任务1.1.2 思路分析1.1.3 图解1.1.4 代码【Flink实时数仓】数据仓库项目实战 《五…

第七章Servlet

文章目录什么是Servlet为什么需要Servlet从不同角度来看Servlet总过程Servlet之间的继承关系Servlet接口接口中方法GenericServlet抽象方法HttpServlet 抽象子类小结Servlet生命周期从Servlet接口方法开始修改Servlet创建对象的时机Servlet容器Servlet相关的保存作用域request&…

零基础如何学好Python开发?

作为一个零基础小白想学好Python开发应该先确定明确目标、做好学习Python系统规划、选择适合的开发工具、进阶提升学习规划、多练多看加深对Python程序的理解&#xff0c;想入门一门编程语言就需要不断的进行练习。 一、明确目标 很多人在学习Python之前了解很少&#xff0c;很…