当前位置:
文档之家› 用友NC报表开发教程(全))
用友NC报表开发教程(全))
产品的需求背景如下所述。
(1)复杂查询报表的需求:在实际的业务查询中,开发人员经常会遇到以下一些棘手的问题——复杂的SQL,从不同的查询条件得到完全不同的查询结果,查询结果的复合,业务逻辑代码和大量数据加工算法的介入,各种各样的数据交叉和数据处理手段等等;在展现格式方面,通常要求灵活、友好、可视化、个性化的设计界面,丰富的展现控件和统计图表,依据数据对单元格、列表头和行表头的格式进行设置,表单控件之间的连动等等。这一切都对早期的查询报表工具提出了艰巨的要求。
(4)查询分析软件发展潮流的需求:近几年来,查询分析、数据挖掘、商业智能的研究不论在企业应用还是在学术领域都成为热点,ERP软件的数据建模和查询建模功能已经成为代表产品水平的重要指标。
2.
现在让我们来看一个最基本的查询样例,作为入门,我们知道在任何ERP系统中都存在公司和用户的概念,下面我们做一个查询某公司下用户的查询。
(2)二次开发的需求:随着NC对行业用户的拓展,由业务组程序员在通用软件中针对每个查询报表需求进行开发的方案已经变得不太现实,一线人员越来越频繁的面临来自用户的个性化报表实施压力。实施团队迫切要求一个强大而且易用的二次开发工具,尽管功能的强大和易用往往存在着一些矛盾。
(3)工具整合的需求:自定义查询在推出后,在实施中得到了一定的应用,但局限于出复杂程度不太高的查询报表。IUFO是公司的传统报表产品,它更偏重于报表的管理方面,比如报表的发布、审核、校验等等。数据仓库使查询的应用由单数据源拓展到了多数据源,并且提供定时同步业务数据的功能。为了有效地实现资源共享,结合发挥各个工具的优势,NC决策层一直在推动相关产品的整合。
查询引擎(Query Engine,简称QE)的功能定位是,一个面向高级实施人员和专业开发人员的查询建模产品,可以全面支持复杂查询的设计和个性化的报表展现。
1.
查询引擎在功能流程和查询模型方面参考了其前身产品“自定义查询”的理念,在界面设计方面汲取了Form Design的思路,同时融入了DW的技术,并依赖于通用的NC数据字典。
1.进入客户化自定义查询查询引擎管理界面
图一1
2.在“查询设计”树下新建一个目录,“jl测试用例”,并在这个目录下面创建一个查询对象――用户查询。
图一2
3.选择参数定义,这里我们定义一个名为corp,显示名为“公司”的参数,注意这里的数据类型选择编码参照,枚举项中选择这个编码参照的类型,我们将根据这个参数选取的值来确定待选公司,并且在查询中根据这个参数选取的值来进行结果筛选。
图一5
在选择字段页签下选择“用户名”等字段,这里的字段表达式可以是某表的字段,也可以是字段的运算或者函数处理表达式,例如:len(sm_er_name),就是代表user_name这个字段的字符串长度。显示名可以是用户自定义的字符串,将来显示在报表的列表头区域。
2.2属性绑定64
2.3行列格式设计66
2.4预定义数据处理69
3.报表浏览76
3.1界面初始化76
3.2数据处理78
3.3控件连动82
3.4报表打印83
第五章报表发布86
1.发布为功能节点86
1.1手动挂接86
1.2向导发布87
2.轻量化报表展现89
第六章插件开发94
1.生成插件94
2.设计插件100
用友NC报表教程(全)
5X&6X
用友NC-UAP
2020-11-26
第一章前言1
1.背景1
2.入门2
3.小结8
第二章对象管理9
1.对象树9
1.1对象编辑10
1.2对象导入导出10
2.数据源11
3.首选项14
4.资源权限15
第三章查询模型16
1.参数控制17
2.SQL设计19
2.1数据字典19
2.2向导设计20
图一3
4.制作查询定义,制作一个查询定义的具体流程实际上就是为了生成一条SQL语句,查询数据源去获取数据,但是这个生成SQL语句的过程被我们用图形化界面代替了,用户只需要了解基本的SQL规则就可以了,无需亲自手动去写纷繁复杂的SQL语句,同时我们也支持手工SQL。
图一4
用户可以通过增加表来增加数据字典中的数据表,也可以点击临时表引用前面做好的查询定义对象,引用查询定义对象相当于设计了一个复合查询,关于复合查询的定义参见第二章第六节查询集成。这里我们选择增加表来增加一个sm_user表,这张表里面存储的是NC系统的用户信息。
3.管理插件100
4.开发小结101
第七章查询引擎V5新特性102
1.V5.0新特性102
功能变更清单102
3.V5.011功能变更清单102
4.V5.02新增功能描述103
4.1参数重构103
4.2分页技术107
4.3SQL代码辅助器110
4.4数据字典级别权限控制111
5.V5.02功能变更清单114
6.V5.5功能变更清单115
附录117
1.查询引擎FAQ之参数篇117
2.交叉表的使用样例119
3.查询与格式对象安装盘预置方案124
4.查询引擎报表联查业务节点应用方案125
5.查询引擎与三大模板集成方案130
6.基于QE底层的查询个性化设计方案138
7.个性化控制类(JAVADOC)143
第一章
(3)数据字典:一种管理数据库逻辑结构的机制,存在于物理数据库和用户接口之间。NC于2002年开始研发数据字典,最开始只用于自定义查询,后来经过功能强化和逐步推广,成为现在的DDC(Data Dictionary Control)。其功能包括数据库对象的管理与编辑、数据字典的解析生成等。
(4)数据仓库:NC的一个独立产品,能够按照指定的入仓规则从多个业务数据库抽取数据,并通过入仓服务定期把数据加载到数据仓库。
(1)自定义查询:NC于2000年开始研发的一个面向中级实施人员和二次开发人员的查询报表工具,由查询管理中心、报表格式设计、报表浏览、报表权限控制和数据加工厂几个模块构成,此工具首次提出了基于数据字典来管理数据并建立查询对象的思路,能够提供比较丰富的查询分析、数据加工和报表展现功能。
(2)Form Design:NC于2003年开始研发的一种界面开发模式,定位于支持功能建模。
2.3手工设计25
3.数据交叉27
3.1投影交叉28
3.2旋转交叉31
4.代码嵌入36
4.1SQL整理36
4.2数据加工38
4.3穿透规则42
5.查询执行48
6.查询集成50
6.1复合查询50
6.2物化查询51
6.3合并查询53
7.数据权限53
第四章格式模型55
1.引用查询56
2.格式设计57
2.1控件管理57