快程业务构建平台开发教程>基础篇>第六章 查询配置

1.1     查询的定义

实体数据只有查询出来后才可以进行操作和管理,在快程业务构建平台中的查询定义是指对实体数据的过虑条件、数据展现内容以及操作方式的一体化界面。通过可视化的方式定义查询的逻辑条件,并定义数据表中默认显示的实体属性,以及可对实体进行的相关操作完成查询的配置。

1.2     查询设计器初览


(1) 查询结果的返回数据列。
(2)
显示在数据区中的列。
(3)
工具按钮定义。
(4)
允许添加到查询条件面板中的控件,可通过拖拽方式将控件拖放到查询条件面板中。
(5)
属性页,选中工具条按钮或查询条件控件时均会显示相应的属性内容,可在该控件中直接修改属性值。
(6)
查询定义名称。
(7)
是否允许对查询结果记录进行多行选择。
(8)
是否允许对查询结果直接进行编辑,如果允许即时编辑则用户可以直接点击选中行的其一列进行编辑,编辑完成后点击工具栏中的保存按钮保存编辑结果。
(9)
是否对输出结果进行自动分页,如果允许自动分页,系统会根据用户窗口大小显示一页数据,并可通过分页导航条进行翻页浏览;如果禁止自动分页,则系统一次性地取出所有数据并显示,该模式仅适用于输出数据量较少的查询。
(10)
查询定义的备注信息。
(11)
打开查询定义窗口。
(12)
查询条件面板,将(4)中的控件拖到该面板中即可创建相应的控件。
(13)
工具栏按钮,与(3)中的定义一一对应。
(14)
数据显示列,与(2)中的定义一一对应。

1.3     查询条件面板配置

条件控制面板用于由用户输入相应的查询条件,系统根据用户输入的查询条件生成相应的查询并将查询结果显示于数据区中。在查询设计器的控件节点下拥有若干个控件类型,将这些控件类型拖到条件控制面板即可创建相应的输入控件,这些控件包括:

Label

用于显示一些提示文本

TextInput

允许用户输入文本内容

ComboBox

允许用户选择一个下拉列表中的选项值

Numeric

允许用户输入数字

NumericStepper

允许用户输入整数

CheckBox

 

允许用户选择或不选

DateField

允许用户设置日期

DateTimeEntry

允许用户设置日期和时间

TimeEntry

允许用户设置时间

EntityField

允许用户选择指定的实体,点击右边的按钮会打开一个查询窗口供用户查询和选择。

PrincipalSelectField

允许用户选择用户帐号,点击右边的按钮会打开帐号选择窗口。

 

1.4     查询条件配置

查询条件的配置界面如下图:

 

(1) 在当前查询模式中允许查询的实体。
(2)
查询模式名称。
(3)
当前查询模式的输出字段。
(4)
查询模式的显示名称。
(5)
查询模式的条件。
(6)
查询模式的模式类型,默认为格式化的,即对查询条件和其他查询语句均是通过一定的格式进行设置;也可以是自定义的,此时需要手动编写where及其他语句。
(7) Group By
子句。
(8) Order By
子句。
(9)
显示生成后的SQL主语句。
(10)
生成最终执行的SQL语句。

 

在查询条件配置中注意如下几个概念:

l  查询实体

查询实体是指当前查询模式中允许查询的实体类型及其字段。对于在查询编辑器中打开的查询生成器,默认的可查询实体为当前查询所对应的实体,但也可以将其他实体拖拽到查询编辑器中的返回数据节点;对于在报表编辑器中打开的查询生成器,可以直接在工作栏按钮中点击添加选择可查询的实体类型。

l  查询输出字段

查询输出字段是指实际查询结果中包含的字段。可以从查询实体中直接拖拽整个实体或实体中的一个字段到查询输出列中。对于某些查询可能还需要输出与数据库相关的其他字段,如当前系统时间等,此时可以在查询输出列中选中其他节点,并点击工具栏中的添加按钮,弹出添加字段对话框:

 

添加字段对话框中可以对不同数据库类型设置字段的名称,如预取当前系统时间,可将SQL Server数据库的字段名称设为“GETDATE()”MySQL数据库的字段名称设为“CURRENT_TIMESTAMP()”Oracle数据库的字段名称设为“SYSDATE”等,目前系统支持MySQLSQL ServerOracle三种数据库,如果新增的字段适用于所有数据库,则可将知用数据库改为所有数据库,这也是默认设置。别名是指在查询输出时该字段的别名名称,字段显示名称是指用于在查询输出列中显示的名称。

l  查询条件设置

查询条件可分为两类,一类是组合条件,一类的一般条件。组合条件包括逻辑与(And)、逻辑或(Or)和逻辑非(Not)三种,在组合条件下可以添加其他组合条件或一般条件;一般条件是指等于(=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、不等于(!=)、间于(between)、字符匹配(like)inisNull等判断。添加条件时必须先选中上一级组合条件,再点击工具栏中的添加按钮,弹出条件编辑对话框:

 

首先需要选择条件类型,根据条件类型的不同条件的控制面板也不同。如对于组合条件,不需要其他控制选项,而像=、>>=等一般条件需要设置该条件的左值和右值内容;between需要设置两个右值;isNull不需要设置右值。

可选选项用于控制该条件是否必须生成,对于某此条件其右值来自于用户在查询输入面板的输入值,如果用户未输入并且该条件是可选条件,则不生成相关的SQL语句。

左值是指参与条件运算的输出字段,在字段列表中对于类型为关联实体或注册用户的实体字段会对应两个选项,分别为ID和名称,分别用于对该关联实体或注册用户的ID和显示名称进行条件设置。值类型用于设置当前参与运算的字段的数据类型,如果字段来自于实体,则该类型会自动设置,否则如果该字段是手动添加的,则需要明确指定该类型,如对于当前日期字段需要将值类型设置为“date”

右值与左值及条件类型组成一个完整的判断语句,如=条件,左值位于等号的左边,右值位于等号的右边。对于右值的来源可分为四种:属性、参数、表达式、服务计算值。属性是指另一个实体字段; 参数是指条用户条件输入面板中输入控件的输入值,这些值作为参数用于SQL语句的生成;表达式是指一个运算公式,该公式在客户端运行并将运行结果作为右值生成相应的SQL语句;服务计算值是另一种公式,与表达式不同该公司由服务器执行。

在查询条件中的表达式引用如下表:

引用

说明

$condition

查询条件的用户输入面板,如要引用条件面板中名为name的控件输入值,则表达式为$condition.name

 

 

l  其他设置

其他设置包括Group ByOrder By设置,可将查询输出字段拖拽到Group ByOrder By节点中。

1.5     数据显示列配置

要配置完查询的条件逻辑后,可以将返回数据中的实体属性拖到数据网格中,并进一步控制数据网络的表头定义数据的列宽和显示顺序。

1.6     查询工具栏配置

在查询工作栏中是对实体数据的操作模式定义,默认情况下会自动建立“新建”、“编辑”、“删除”三个按钮,分别用于实现打开实体的创建表单界面、打开实体的编辑表单界面和实体删除功能。

可以在“工具栏”节点下创建新的操作按钮并配置该按钮的操作参数。按钮的操作参数在属性设制项中完成,如下图所示:

 

       铵钮的属性项由以下几项组成:

l  显示名称

按钮的显示标题

l  帮助

按钮的帮助信息

l  记录选择

有三个选项“可不选”、“单选”和“多选”,用于控制执行按钮所对应的动作时对数据行的选择状态。

l  执行命令

按钮执行的动作,有如下几个选项:

命令

说明

打开应用窗口

表示打开由快程应用配置出来的各类窗口,如表单窗口、查询窗口、页面窗口等。

打开ALink链接

打开一个ALink链接

打开报表

打开一个报表窗口

触发事件

触发查询中的事件

插入

插入一条实体数据记录

删除

删除实体数据

导入

从外部文件中导入数据

导出

将数据结果导出到文件

全选

全部选中查询记录

其他

保留

 

l  双击执行

指示当前按钮所对应的命令是否可通过双击数据网格中的记录执行。在同一个查询配置中双击执行的命令只能有一个。

l  执行参数

根据设置执行命令的详细参数

l  控制权限

将当前按钮与控制权限相对应。

 

1.7     查询状态配置

查询状态用于实现在“即时编辑”模式下对实体属性之间的相关控制,其控制的方式与表单状态相同。在状态表达式中“$this”代表当前选中的实体对象。

1.8     显示颜色配置

某些情况下为了突出显示数据,需要将数据网格中的内容以不同的颜色进行显示,这可以通过查询中的“颜色控制”对数据行或单元格的前景色或背景色进行管理。

 

在颜色控制中有四个控制项:

l  文字颜色

用于设置文字的显示颜色,默认为黑色。

l  背景颜色

用于设置单元格的背景颜色,默认为白色。

l  控制列

用于控制文字颜色和背景颜色是应用到整行还是指定的列。

l  条件

条件是一个表达式,其中$this表示数据行中的实体对象,当表达式的计算结果为true时颜色设置才会生效。

 

配置“客户资料管理”查询

在客户实体下创建“客户资料管理”查询,将需要的实体属性拖放到查询列表中。

 

 

名称、地址等字段属性根据需要,拖拉大小。

再设置“新建”、“编辑”和“删除”按钮状态。点击“新建”按钮,查看按钮“属性”窗口,选择可不选,再点击“执行参数”属性,打开按钮设置窗口。点击“参数”选项后,跳出列表项窗口,执行动作:新建,实体:客户,表单:客户,表单状态:选择新建,窗口标题:客户_新建。

“编辑”按钮与“新建”按钮类似。



 

 

 

       设置“名称”字段为查询条件,把“名称”字段从实体中拖到查询条件区域。然后点击“查询定义”按钮,打开“查询生成器”窗口,设置名称查询条件。

 

       设置好查询条件后,对查询数据颜色进行区分:选择“颜色控件”选项,把“客户类型”为“关键客户”的数据整行字体设置红色。