查询引擎培训讲义_第1页
查询引擎培训讲义_第2页
查询引擎培训讲义_第3页
查询引擎培训讲义_第4页
查询引擎培训讲义_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

NC50查询引擎使用介绍报表开发的困惑开发工作量大程序员在通用软件中针对每个查询报表需求进行开发的方案已经变得不太现实,业务模型难以复用复杂的业务逻辑和大量数据加工算法各种各样的数据交叉和数据处理手段等等;灵活、友好、可视化、个性化的设计界面,丰富的展现控件和统计图表个性化需求多个性化报表压力很大需求背景与产品定位用户对查询报表的个性化需求与有限开发人员之间的矛盾查询报表的复杂性与业务实施人员专业开发能力之间的矛盾一个面向高级实施人员和普通开发人员的查询建模产品全面支持复杂查询的设计和个性化的报表展现查询引擎整体应用架构示意图对象管理对象管理对象树(ObjectTree):一个支持层次管理的数据结构,维护自身的加载、存储和节点的目录管理,每个节点的信息主体存储在数据库的一个BLOB字段中。对象树上的节点通常分为目录(Folder)和对象两类,支持快速定位(在树获得焦点时用ctrl-f快捷键可弹出查找对话框,支持按编码或名称来模糊查找)。对象的唯一标识是编码而不是显示名称,一个查询对象或是格式设计对象可以有多个显示名称但是只能有唯一的编码。在查询或格式子树下,可以将一个对象从某位置拷贝或移动到另一个位置。请注意这里的复制粘贴都是在同一棵树下的,如果复制格式设计对象到查询对象树下则会出错。对象管理对象支持导入导出导入导出XML文件,可用于对象的跨数据库复制。注意切换数据源在导出查询对象或界面对象时,需将其引用的查询对象一并导出才有意义导入不能违反对象主键及名称的唯一性约束。·

属性框(ObjectInspector):自动显示对象的属性和取值的控件,取值部分会根据属性的数据类型采用不同的渲染器来展示,不同的编辑器来编辑。多数据源多数据源运作机制:查询引擎支持这样的模式——NC业务在数据源A下运行,查询引擎的定义放在数据源B,通过引擎定义的查询可以到数据源C去执行。多数据源的配置多数据源的配置有效数据源:启动中间件时的所有能够连接的合法数据源,实际上也就是prop.xml文件中的所有定义过并且能够正常连接的数据源。查询执行可用数据源:查询引擎所能够引用的执行数据源列表,查询引擎管理中所有的查询模型的取数数据源范围就在这个列表中定义。请注意一个查询执行数据源必须是一个有效数据源。数据加工数据源:查询引擎中高级功能“数据加工”所使用的数据源,资源权限资源权限查询引擎支持对不同公司的不同用户授予全部权限或浏览权限。全部权限是指所有查询、格式对象的设计和浏览权限,浏览权限是指能够浏览指定格式对象的报表展现。查询模型查询模型的定义包括参数定义、SQL设计(含交叉定义)、SQL整理、数据加工、穿透规则等几部分,其中穿透规则描述的是本查询与外部查询的通信关系,剩余部分都用于描述查询内部的属性。查询设计态和运行态的基本流程查询界面参数控制参数定义:用于定义本查询内部引用的所有参数,其中参数名要保证互不相同。数据类型包括自由录入、枚举、参照几种,当类型为枚举时,枚举项为用“@”分隔的枚举值,或者是一个单字段的查询SQL;当类型为参照时,枚举项为基础参照名,或者是用尖括号括起的自定义参照的类名参数引用参数引用:参数可在SQL设计的筛选条件页签引用。当筛选条件是待定条件的时候,双击“值”,文本框,就可以弹出参数选择对话框,点击选择对应的参数即可。参数设置运行态要求用户首先对参数进行设置,这与查询模板的使用类似。当报表引用了多个查询时,参数将通过多页签设置,每个页签代表一个查询。查询模型——SQL向导设计手工设计SQL设计-数据字典NC数据字典提供了统一的数据建模平台,支持对各种数据库对象进行管理,维护这些物理对象的逻辑属性,并向外系统提供访问数据库逻辑信息的接口。支持导入自己定义的数据库表,生成自定义的数据字典表格对象,包括目录、表、视图、字段、外键等信息SQL设计-向导设计表定义:即SQL语句中的from部分,可以利用数据字典选择库里的数据表,也可以选择查询对象,从而实现查询的集成(基于查询结果定义新的查询)。连接定义连接定义:即SQL语句中的join部分(表间连接关系),支持典型模式和高级模式,典型模式实际就是关系数据库中的单键连接,连接字段只有一个,并且操作符都是常见的’=><’,而高级模式可以自由设置连接表达式,支持多键连接。连接定义典型模式连接定义高级模式字段定义字段定义:即SQL语句中的select部分,可以定义任何SQLSERVER语法支持的查询表达式,但要保证字段别名不重复且使用规范名称(以字母开头、由字母、数字、下划线组成的字符串,且不能使用SQL保留字)。如果使用了聚集函数,则由系统自动完成groupby部分。表达式生成器筛选条件定义筛选条件定义:即SQL语句中的where部分,可定义确定条件和待定条件。如果是待定条件,在值编辑框获得焦点时双击编辑框可弹出参数界面并作引用(或者在值编辑框获得焦点时按F12键或者双击弹出参数引用框);如果是固定条件,在值编辑框获得焦点时按F11键或者双击可弹出环境变量引用框,按F12键可弹出所引用的基础数据表的参照。排序字段定义排序字段定义:即SQL语句中的orderby部分由查询设计生成的SQL语句向导设计完成后在查询定义框的南部面板鼠标双击可弹出向导生成的等效SQL(待定条件全用(1=1)代替)。该功能可以用来检查SQL语句是否有错SQL设计-手工设计手工设计是支持自由SQL的方式,由于复杂SQL在解析、适配、执行等方面的不稳定性较大,因此不推荐普通用户使用。数据交叉-投影交叉投影交叉(第一类交叉): 假定有一个查询SQL,其查询结果是单行单列的汇总值,另外还有两组WHERE条件的序列,分别为横向序列(WhereX1、WhereX2、……、WhereXn)和纵向序列(WhereY1、WhereY2、……、WhereYn),则数据矩阵A(aij)对应的结果集成为投影交叉,如果aij是WhereXi和WhereYj同时作用在上述SQL上获得的结果。原始数据(无交叉)投影交叉设置投影交叉结果投影交叉属于查询行为,适用于行列设置都已在表样中固定的报表,其交叉结果严格遵循表样格式,其行列结构不会受查询数据的影响;数据交叉-旋转交叉旋转交叉(第二类交叉):此类交叉用于显示表中某几个字段(称为交叉值字段)的统计值,并将其分组放置在查询结果中,一组列在数据表的左侧(称为交叉行字段),一组列(称为交叉列字段)旋转到数据表的上部成为列表头,统计值则放在对应的交叉单元。原始数据(无交叉)旋转交叉设置旋转交叉结果旋转交叉属于数据加工行为,其交叉后的行列结构在查询出数据之前不可预料,多用于完全真实地对原始数据进行动态处理。SQL整理SQL整理(SQLRepair):指在SQL查询之前,对SQL所作的调整。通常会根据参数的不同,对查询的表、字段或条件等信息进行增补或修改。数据加工数据加工(DataProcess):数据加工是指某个(或某几个)结果集在经过一系列加工算法的变换后得到另一个结果集,而后者通常是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论