报表开发步骤-程序员宅基地

技术标签: nc培训  数据库  大数据  sql  

报表开发步骤

1.什么是报表?

例如从两张表里面查出数据,查出来的这个数据不需要存数据库,只需要把这些数据查出来,然后展示出来。

2.报表的两种开发方法

开发方法1(不用代码)

报表开发的位置:动态建模平台 --> 报表平台

首先在:语义模型 --> 语义模型-全局(最高) 或 语义模型- 集团(第二高)
语义模型:存报表的sql语句和字段名等信息,相当于报表的后端

  1. 新建办公费预算明细表语义模型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

然后在:自由报表 --> 自由报表-全局(最高) 或 自由报表-集团(第二高)
自由报表:用于画报表的结构,相当于报表的前端

  1. 新建办公费预算明细表自由报表
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    注意:组织类型得选业务单元,不可以是全局
    在这里插入图片描述
    在这里插入图片描述
    分配权限
    在这里插入图片描述
    在这里插入图片描述
    重新登录一下客户端
    在这里插入图片描述
    添加插件类
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
nc.itf.jgxc.report.newcont.INewContReport

两种设置查询条件的查询方法:

  1. 用它自带的查询模板
  2. 创建查询模板

1.用它自带的查询模板
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.创建查询模板的方法配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
分配节点
在这里插入图片描述
在这里插入图片描述
这个地方的节点标识应该不填,而不应该是qt,如果填qt的话加额外的代码处理会报错;资产层次这个地方应改是水平,而不应该是平台
(功能节点默认模板设置中新加的在pub_systemplate_base这个表里面)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

开发方法2(用代码)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下面的代码拿过来直接用就行

        nc.pub.smart.context.SmartContext context = getContext();
        String sql = nc.bs.framework.common.NCLocator.getInstance()
                                                     .lookup(nc.ift.wgbfb.report.bgmxys.IBgmxysReport.class)
                                                     .getBgmxysReportSql(context);
        setResultSQL(sql);

除了接口类名以外,方法名也要改为对应的方法名,不然编译会不通过
在这里插入图片描述
upm注册
在这里插入图片描述
代码逻辑:(生成一个临时表,然后展示)
这一步是生成一个空的临时表,往里面插数据,然后查询临时表
在这里插入图片描述
创建临时表
在这里插入图片描述
对应临时表里的类型
在这里插入图片描述
在这里插入图片描述
查数据
在这里插入图片描述
获取查询模板上传过来的数据(多选数组类型,单选不是数组类型)
在这里插入图片描述
从查询模板上选的数据,存到这里面(比如选了好几个组织,需要把主键拿出来存到数组中,一会写sql语句会用到),把查询到的数据拆解到对应的VO(把数组类型的数据根据逗号进行分割,然后一个个存到数组中)
在这里插入图片描述
组织这个东西有点奇怪,他传过来的不是组织,而是sql语句
在这里插入图片描述
向临时表中插入数据
在这里插入图片描述
对应vo里的类型
在这里插入图片描述
把临时表中的数据拿出来
在这里插入图片描述
上面3步所有的逻辑,就根下图作用一样
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
自由报表部分和第一种一模一样

3.两种方法的选择

用不用代码的方法取决于是否需要对数据进行二次加工;如果只是单纯的把两张表里面的数据合并到一起,然后直接展示出来,就可以不用代码的方式;如果是从一张表里面查出数据,然后通过一系列的计算,然后再去展示,这时候就要用代码的方式

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_45714641/article/details/130644527

智能推荐

【HTTP】Fiddler(二) - 使用Fiddler做抓包分析_3)使用fiddler分析http请求-程序员宅基地

文章浏览阅读262次。转载:https://blog.csdn.net/ohmygirl/article/details/17849983上文( http://blog.csdn.net/ohmygirl/article/details/17846199 )中已经介绍了Fiddler的原理和软件界面。本文主要针对Fiddler的抓包处理。Fiddler抓取HTTP请求。抓包是Fiddler..._3)使用fiddler分析http请求

Ceres 详解(一) Problem类_对‘ceres::problem::addparameterblock(double*, int, -程序员宅基地

文章浏览阅读4.1k次,点赞6次,收藏55次。引言Ceres 是由Google开发的开源C++通用非线性优化库(项目主页),与g2o并列为目前视觉SLAM中应用最广泛的优化算法库(VINS-Mono中的大部分优化工作均基于Ceres完成)。Ceres中的有限边界最小二乘问题建模为以下形式:Ceres的求解过程包括构: 建最小二乘和求解最小二乘问题 两部分,其中构建最小二乘问题的相关方法均包含在Ceres::Problem类中,涉及的成员函数主要包括 Problem::AddResidualBlock()和 Problem::AddP_对‘ceres::problem::addparameterblock(double*, int, ceres::localparameteriza

2022哈工大计算机系统大作业_郭仁恺-程序员宅基地

文章浏览阅读265次。摘 要本文分析了hello程序的整个运行生命周期。首先编写hello.c源程序,之后运行C预处理器对其进行预处理,得到hello.i文件,运行C编译器将翻译生成汇编语言文件hello.s,然后运行汇编器将其翻译成一个可重定位目标文件hello.o,最后运行链接器程序将hello.o和系统目标文件组合起来,就可以创建一个可执行目标文件hello。在shell接收到输入的./hello的指令后开始调用fork函数创建进程,execve加载hello进入内存,由CPU控制程序逻辑流的运行,中断,上下文切换和._郭仁恺

【C/C++】JAVA与C/C++ AES加密算法同步_botan c++ aes java 互通-程序员宅基地

文章浏览阅读4.6k次。此处我们使用的是AES的基础加密模式,即:电码本模式 ECBJAVA代码如下: //创建AES加密实例 SecretKeySpec skeySpec = new SecretKeySpec(keyBytes, "AES"); Cipher cip = Cipher.getInstance("AES/ECB/NoPadding");//算法/模式/补码方式 cip.init(C_botan c++ aes java 互通

民工哥折腾了2年多的《Linux系统运维指南》终于和大家见面了_linux系统运维指南:从入门到企业实战 pdf-程序员宅基地

文章浏览阅读2.5k次,点赞5次,收藏17次。2018年3月,我与张老师就这么在微信上聊了起来,起初我并没有写书的打算,我们之间只是通过讨论、交流的形式聊聊关于出书的方方面面。最终,敌不过张老师超强的专业能力、细致的解说与盛情相邀,我答应张老师写一本Linux系统运维的图书并由人邮出版。由此,我踏上了漫漫2年多的写书之路。为什么写这本书写书一方面是我对自己所学知识的查漏补缺过程,另一方面也可以向即将进入或已经入行的Linux系统运维同..._linux系统运维指南:从入门到企业实战 pdf

tf.reduce_sum()方法深度解析-程序员宅基地

文章浏览阅读2k次,点赞6次,收藏5次。tf.reduce_sum()函数深度解析从矩阵,数组,数据存储的角度 解析axis参数的意义_tf.reduce_sum

随便推点

(js) 字符串和数组的常用方法-程序员宅基地

文章浏览阅读132次。JS中字符串和数组的常用方法JS中字符串和数组的常用方法 js中字符串常用方法 查找字符串 根据索引值查找字符串的值 根据字符值查找索引值 截取字符串的方法 字符串替换 字符串的遍历查找 字符串转化为数组 ..._js根据索引查找字符串

hadoop大数据-HDFS分布式文件系统及高可用_hdfs实现高可用文件存储-程序员宅基地

文章浏览阅读2k次,点赞2次,收藏9次。系列文章目录hadoop大数据-HDFS分布式文件系统hadoop大数据-HDFS分布式文件系统系列文章目录一、hadoop简介二、Hadoop的搭建2.1本地独立模式2.1伪分布式模式的搭建完成分布式的搭建完全分布式的环境搭建完全分布式的配置hadoop结点扩容四、HDFS工作原理一、hadoop简介大数据主要两个点:分布式存储以及分布式计算,基本上计算的调度跟着存储走,因为迁移存储的成本高于计算大数据是个生态,本次学习Hadoop的HDFS分布式文件系统MapReduce离线计算GF_hdfs实现高可用文件存储

【合集】常见中间件漏洞_hrs中间件-程序员宅基地

文章浏览阅读2.9k次,点赞3次,收藏37次。1. IIS1. PUT漏洞用户配置不当,exp:https://github.com/hackping/HTTPMLScan.git2. 短文件名猜解IIS的短文件名机制,可以暴力猜解短文件名,访问构造的某个存在的短文件名,会返回404,访问构造的某个不存在的短文件名,返回400。exp:https://github.com/WebBreacher/tilde_enum3.远程代码执行(CVE-2017-7269))**exp**:https://github.com/zcgonv_hrs中间件

db2基本概念-程序员宅基地

文章浏览阅读368次。DB2支持以下两种类型的表空间: 1、 系统管理存储器表空间(SMS-SYSTEM MANAGED STORAGE) 2、 数据库管理存储器表空间(DMS-DATABASE MANAGED STORAGE) SMS、DMS用户表空间的特性对照 特性 ..._db2

模拟window桌面实现-程序员宅基地

文章浏览阅读84次。正在开发中的游戏有个全屏功能--可以在window桌面背景上运行,就像一些视频播放器在桌面背景上播放一样的,花了个上午整了个Demo放出来留个纪念。实现功能:显示图标,双击图标执行相应的程序,右击图标弹出该图标对应得菜单,点击非图标区则弹出桌面菜单。需要完整工程可以点此下载:DesktopWindow.rar。程序效果图如下:在这个程序里,定义了一个XShellItem..._模拟实现windows桌面效果

https://www.byhy.net/tut/webdev/django/01/-程序员宅基地

文章浏览阅读944次。https://www.byhy.net/tut/webdev/django/01/_byhy.net

推荐文章

热门文章

相关标签