高级查询构造器 === **目录索引:** - 功能介绍 - 配置高级查询构造器 1. 配置高级查询构造器 2. 配置表关联 3. 配置表字段 - 配置JSP页面属性调用高级查询构造器 1. 配置标签 - 配置后台DataGrid查询方法 - 功能测试 #高级查询构造器 ##一、功能介绍 高级查询构造器支持主子表联合查询,查询出更精确的数据。 ![](https://img.kancloud.cn/e4/ee/e4ee61abd56010c2ac9dde90431d8657_877x396.png) 要使用高级查询构造器需要完成以下步骤: 1.在高级查询管理配置主子表信息。 2.配置完后在JSP页面DataGrid标签上添加complexSuperQuery属性,值填写在高级查询管理配置的查询规则编码。 3.需要在后台DataGrid查询方法里面添加SQL语句。 4.配置后可在页面上看到“高级查询构造器”按钮,点击使用。 ##二、配置高级查询构造器 ###1.配置高级查询构造器 打开“高级查询管理”菜单,点击“录入”按钮弹出如下框 ![](https://img.kancloud.cn/44/f9/44f96c10b6b42c326b8cecae5cea5dc1_1364x586.png) ###2.配置表关联 查询规则编码为页面上要输入的编码,根据此编码查询对应的数据。查询类型选择“主子表”。在下方“表集合”处,第一行默认为主表信息,点击“添加”增加子表信息,必须输入外键字段。 ###3.配置表字段 在“字段配置”中,表名则为“表集合”里填写的主子表信息,选择表在后面输入数据库中存储的字段名,“字段文本”为查询时页面上显示的字段名,字段类型、控件类型根据当前字段类型选择。 ![](https://img.kancloud.cn/56/d0/56d0c83b03e6f6bb1aef4d41611593d5_1365x587.png) 下拉框:查询数据字典,请在“字典Code”中输入数据字典的CODE。 弹出框:查询Online报表配置,依次在后面三个文本框中输入对应的值。“字典Table”为报表配置中填写的编码,“字典Code”为页面上要展示的字段,高级查询构造器默认做了显示,可不填。“字典Text”为要查询的字段名。 ![](https://img.kancloud.cn/b0/f9/b0f9799314876eaed259ca54e3e8d389_1224x487.png) 日期、时间:页面上会自动出现选择时间的控件。 输入框:普通文本框。 ##三、配置JSP页面属性调用高级查询构造器 ###1.配置标签 在对应页面的JSP上找到<t:datagrid>标签,在里面添加complexSuperQuery属性。其值为刚才在高级查询管理里配置的“查询规则编码”。 ![](https://img.kancloud.cn/be/2c/be2ce67fb5c31938df7aaed901de4e6d_900x31.png) 填写完后可在页面上看到“高级查询构造器”。 ![](https://img.kancloud.cn/92/d5/92d538609bacb63eb7b5ac6205b2bcca_265x53.png) ##四、配置后台DataGrid查询方法 需要在对应页面的后台DataGrid查询方法处增加SQL语句,方法已经写好。编写如下代码: ``` String sql = SuperQueryUtil.getComplxSuperQuerySQL(request); if(oConvertUtils.isNotEmpty(sql)) { cq.add(Restrictions.sqlRestriction(" id in ("+sql+")")); } ``` 此段代码放入Try里面即可。 ##五、功能测试 在“高级查询管理”菜单里配置好后在后方会出现“体验” ![](https://img.kancloud.cn/31/e5/31e5ebc40476fb163f6e85e84f8b4d63_1147x32.png) 点击可查看配置的主子表信息。 在要使用高级查询构造器的页面上实现2、3步骤则可使用,对配置页面的信息进行查询。 ![](https://img.kancloud.cn/2b/b2/2bb28ec22b4a8392c0fa0d620e9ac7c2_1164x509.png) 可点击右下角的“另存为查询方案”把查询规则保存在数据库,下次打开可直接点击右侧保存规则查询。