皕杰报表之语义层

helloworld_34035044
• 阅读 343

1 语义层定义

语义层——是处于数据源与报表之间的一个概念,是用户和数据库之间的一个代码翻译层,通俗的讲是将数据库中的比较凌乱、复杂的数据对象(例如:存储在table中的各个字段的记录)按预先定义好的规则(“语义层”)重组为面向用户的对象, 也就是通过过滤转换成实际使用的业务对象。对象可以是数据库中的表、列、连接(多字段组合)以及对多字段进行运算的表达式。

2 语义层作用

皕杰报表的语义层具有以下作用:

将数据库中的表及字段改为有意义的业务术语,从而使最终用户不需要依赖IT人员即可轻松构建查询和报表; 能按用户习惯,对数据库信息进行分类管理; 预建表关联(以后做查询、报表不必再建); 将复杂统计表达式作为单个对象,象使用字段一样方便查询和做报表; 最终用户只要打开语义层文件,然后通过简单的拖拽就可以完成复杂报表的设计,不需要掌握复杂的数据库理论知识 。 皕杰报表之语义层

表映射

皕杰报表之语义层 A.“基本”选项卡,是填写表的映射名称的。

B.“字段”选项卡,是选择在该表中所需的字段,单击不同的表,会出现各自表中的字段,然后选中字段前面的复选框按钮即可,映射名,就是在使用语义映射时,所看到的对应的字段名。

C.指标选项卡,指标是指将数据表中的数据经过函数运算得到的结果,在报表设计中,语义层定义好的指标可以像普通字段一样使用,新建一个指标,然后编辑表达式和显示值。

D.“过滤条件”选项卡,过滤条件就是对表中记录的筛选,在“过滤条件”选项卡可以新建过滤条件,然后对其编辑表达式和参数,这里的表达式的功能是筛选数据,每个数据表可以定义多个过滤条件,用户在设计报表时,只需要根据需要选择过滤条件即可。

表间关系

皕杰报表之语义层

其中表间关系有:

内连接:两个表(或连接)中某一数据项相等的连接称为内连接。连接的结果是形成一个新的数据表 左连接:向外联接的结果集包括 LEFT OUTER 子句中指定的左表的所有行,而不仅仅是联接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值(null)。 右连接:与左连接相反。向外联接的结果集包括 LEFT OUTER 子句中指定的右表的所有行,而不仅仅是联接列所匹配的行。如果右表的某行在左表中没有匹配行,则在相关联的结果集行中左表的所有选择列表列均为空值(null)。 全连接:将左右连接结合,即为全连接。

查询映射

皕杰报表之语义层 查询映射就是定义SQL语句,通过SQL语句的执行结果构成一个查询视图 皕杰报表之语义层 A.“字段”选项卡

即选择所需的字段,然后编辑其映射名称和显示值。

B.“参数”选项卡

参数可以用来实现数据的传递,当我们希望生成一张日期报表时,首先需要向报表传递日期参数,然后报表才会根据我们传递进去的日期参数,生成该日的日期报表。

C.“过滤条件”选项卡

这里的“过滤条件”是筛选表记录的,可以限制记录的条数,或者根据自己想要的信息显示。

参数和变量部分可以查看皕杰报表帮助文档。

点赞
收藏
评论区
推荐文章
Simple Object Copy一款idea插件,优雅转化DTO、VO、BO、PO、DO
1、什么是DTO、VO、BO、PO、DO、POJOPOJO的定义是无规则简单的对象,在日常的代码分层中pojo会被分为VO、BO、PO、DTOVO(viewobject/valueobject)表示层对象1、前端展示的数据,在接口数据返回给前端的时候需要转成VO2、个人理解使用场景,接口层服务中,将DTO转成VO,返回给前台B0(bussines
Wesley13 Wesley13
2年前
java中的VO DTO DAO
VO是跟数据库里表的映射,一个表对应一个VODAO是用VO来访问真实的表,对数据库的操作都在DAO中完成BO是业务层,做逻辑处理的VO,PO,BO,QO,DAO,POJOO/RMapping是ObjectRelationalMapping(对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示
Stella981 Stella981
2年前
JavaScript
Javascript简介web前端有三层:HTML:从语义的角度,描述页面的结构CSS:从审美的角度,描述样式(美化页面)Javascript:从交互的角度,描述行为(提升用户体验)JavaScript的组成ECMAScript5.0:定义了js的语法标准:包含变量、表达式、元素符、函数、i
Stella981 Stella981
2年前
Action层, Service层 和 Dao层的功能区分
1.Action/Service/DAO简介:Action是管理业务(Service)调度和管理跳转的。 Service是管理具体的功能的。 Action只负责管理,而Service负责实施。 DAO只完成增删改查,虽然可以1n,nn,11关联,模糊、动态、子查询都可以。但是无论多么复杂的查询,dao
Stella981 Stella981
2年前
Socket的基础概念
一、网络各个协议:TCP/IP、SOCKET、HTTP等网络七层由下往上分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。其中物理层、数据链路层和网络层通常被称作媒体层,是网络工程师所研究的对象;传输层、会话层、表示层和应用层则被称作主机层,是用户所面向和关心的内容。http协议  对应于应用层  tcp协议  对应于传
Wesley13 Wesley13
2年前
MySQL字符集小结
一:什么是字符集字符集支持多层面:服务器层(server)、数据库层(database)、数据表(table)、字段(column)、连接(connect)、结果集(result)。1.字符集是一套符号和编码规则,字符串必须有相应的字符集。2.校验集是这套符号和编码的校验规则,定义字符排序规则,字符串之间比较的规则。3.非ASCII字
Wesley13 Wesley13
2年前
API设计的一点思路
API是模块或者子系统之间交互的接口定义。好的系统架构离不开好的API设计,而一个设计不够完善的API则注定会导致系统的后续发展和维护非常困难。以下谈一点API设计的原则。业务层业务语义简单明确一个接口或者说一个api,必定是为外部使用者服务的,因此必须具有明确的业务/使用意图。api的从命名到定义,都必须围绕着这个意图来进行
Stella981 Stella981
2年前
Hibernate反射DAO模式
在持久层框架中,如果我们要像简单的JDBC连接数据库那样写一个通用的Dao方法的话,那么把JDBC简单的业务逻辑搬到hibernate持久层框架中,当然是不可能的,这里主要的问题就在于hibernate持久层框架中,因为它不是像JDBC那样简单的增删改查的编写,而是要针对实体类映射配置文件来对照数据库表字段进行操作,而且操作是面向对象的查询,不是简单的sql
Wesley13 Wesley13
2年前
unet网络讲解,附代码
转:http://www.cnblogs.com/gujianhan/p/6030639.htmlkey1:FCN对图像进行像素级的分类,从而解决了语义级别的图像分割(semanticsegmentation)问题。与经典的CNN在卷积层之后使用全连接层得到固定长度的特征向量进行分类(全联接层+softmax输出)不同,FCN可以接受任意尺寸的
十月飞翔 十月飞翔
1年前
解决数据库高并发访问瓶颈问题
一、缓存式的Web应用程序架构:  在Web层和db层之间加一层cache层,主要目的:减少数据库读取负担,提高数据读取速度。cache存取的媒介是内存,可以考虑采用分布式的cache层,这样更容易破除内存容量的限制,同时增加了灵活性。二、业务拆分:  电商平台,包含了用户、商品、评价、订单等几大模块,最简单的做法就是在一个数据库中分别创建users、sh