一种自定义查询方法

文档序号:6397151阅读:259来源:国知局
专利名称:一种自定义查询方法
技术领域
本发明涉及一种计算机技术领域,或数据库,数据持久化,数据展现,超文本置标
语言,自定义查询模型的定义及实现,具体地说是一种自定义查询方法,。
背景技术
企业应用中很重要的一部分就是查询。查询是指使用查询条件过滤出各种业务数据、统计数据;其中涉及复杂多变的业务数据,不同的业务有不同的数据和不同的数据类型,进而具有不同的查询条件和展现方式;即使是同一个业务,用户不同(角色不同、职位不同、角度不同等),需要的查询也不同。要满足这些需求必须对应各种业务及不同用户实现各种查询。 实现这些查询的工作非常繁琐而且工作量巨大;由于需要编写代码,用户很难参与进来。自定义查询把各种数据类型抽象出来,对应到相应的展现组件,使自由定义各种数据的展现名称、展现方式变得可行,并可灵活定制查询条件;由于不需要编写代码,用户也能够参与进来,使得定制的查询更符合用户的需求。

发明内容
本发明的目的是提供一种自定义查询方法。 本发明所要解决的技术问题是提供一种可配置的、灵活的、能够快速定制的自定义查询,减少企业应用中查询功能的工作量,使用户可以参与进来,做出更符合用户需求的查询功能。 本发明的目的是按以下方式实现的,包括以下内容
1)是把数据类型抽象为两种直接在界面显示的类型; 2)把数据的展现方式抽象为文本类型、日期类型、日期区间类型、枚举类型、复选框枚举类型、复选框数据库查询类型;把操作符限定为大于、小于、大于等于、小于等于、包含在、相似; 3)建立自定义查询模型,不需要编写代码,只需要在自定义查询界面中定制、配置查询即可实现特定的查询功能; 4)在查询列表中使用组件适配器调用系统中已有的功能和组件显示查询出的记
录的详细信息,实现了功能重用; 5)同一个查询可定义不同的查询模板。 具体步骤如下 1)把数据类型抽象为两种可直接在界面显示的类型,包括 (1)文本类型把字符串、整数、长整形、浮点数等类型抽象为文本类型; (2)键值类型、键值集合类型 〈1〉把数据库中存储的是符号或者代码,而在界面上需要显示相应文字信息的数据,定义为键值类型{键值}
把复选、下拉选择等则定义为多个键值类型的集合,即键值集合类型 [{键值}, {键值}, {键值}......] 〈2>键值的对应关系采用两种取值方式
1>使用属性文件配置,格式为 表名.字段名=键1 :值1,键2:值2,键3:值3...... 2>使用数据查询模板,查询系统中已有的字典表
表名.字段名.SQL =数据库查询语句。 2)把数据的展现方式抽象为文本类型、日期类型、日期区间类型、枚举类型、复选框枚举类型、复选框数据库查询类型,其中,数据类型和数据展现方式的对应关系如下
数据类型,数据展现方式; 文本类型,包括文本类型;日期类型;日期区间类型; 键值类型、键值集合类型,包括枚举类型;复选框枚举类型;复选框数据库查询类型;文本类型。 3)建立自定义查询模型,不需要编写代码,只需要在自定义查询界面中定制、配置查询即可实现特定的查询功能,自定义查询模型包括查询定义模型和列定义模型两部分;
(1)查询定义模型结构如下
查询定义的主键; 是否主表;描述;查询顺序;查询名称;展现组件;主外键名,用于单表或者主从表查询;备注; (2)列定义模型结构如下 列定义的主键;查询定义的主键;描述;列名称;是否默认条件;是否查询条件;是否查询显示;是否排序;列类型;操作符;备注; 使用数据类型和展现组件类型,结合自定义查询模型创建可视化界面。 4)在查询列表中使用组件适配器调用系统中已有的功能和组件显示查询出的记
录的详细信息,实现功能重用,组件适配器包含组件注册器、组件查找器、组件调用器三个
功能,组件注册器负责注册系统中已有的组件,形成组件库;组件查找器根据定义的查询中
提供的组件名称在组件库中查找组件;组件调用器负责调用查找到的组件,并把数据传递
给组件。 5)同一个查询定义不同的查询模板,查询模板保存了定制的查询除默认查询条件以外的其它查询条件,是对已定制的查询的更细致的进一步的定制。
本发明的优异效果是 (1)自定义查询是可配置的、灵活的、能够快速定制的,并且不需要编写代码;
(2)明显减少企业应用中查询功能的工作量,对系统已有的组件实现了重用。
(3)使用户可以参与进来,做出更符合用户需求的查询功能。
具体实施例方式
包括以下几个内容( — )抽象数据类型;是为定义查询条件服务的,根据数据在界面上的展现方式把数据抽象为以下几种类型
5
a文本包括字符串、数字等,直接显示在页面中;
b键值集合通过下拉框、复选框、单选框等方式展现;
( 二 )建立自定义查询模型; a建立查询的持久化模型;定制的查询需要持久化,以便用户下次登录系统时能
够再次访问已定制的查询,其持久化采用数据库存储的方式。 b查询的持久化模型包括查询定义模型和列模型 c查询定义模型定义了查询名称、查询描述、查询结果的展现组件、是单表查询还 是主从表查询、备注信息等。 d—个查询定义对应多个列。列模型定义了列名、列描述、列是否为查询条件、列在 查询中是否显示、列类型、列查询的操作符、备注等。 e列类型定义了某一列作为查询条件时的展现组件和在查询结果列表中显示值的 取值方式。列类型包括文本类型、键值集合类型、日期类型、日期区间类型、枚举类型、复选 框枚举类型、复选框数据库查询类型。 f列查询的操作符包括大于、小于、大于等于、小于等于、包含在、相似(模糊查 询)(三)建立自定义查询可视化界面 使用浏览器和服务器结构建立自定义查询可视化界面,便于访问。
(四)定义查询 在自定义查询可视化界面的自定义查询表信息维护中新建一个自定义查询
1)填写基本信息,包括如下内容
表名,是指要查询的数据表的表名;
描述,是指对要查询的数据表的描述 查询结果显示组件,是指查询结果列表中某条记录的查看展现组件(链接)
是否主表,是指要查询的数据表是否主表 表的查询顺序,是指主从表情况填写,规则主表值最小,从表值递增 主外键名,是指主表填写主键;从表填写主外键,并以逗号(,)分割 备注查询的备注信息 2)填写列信息,包括如下内容 列名,要查询的数据表列的列名 描述,对要查询的数据表列的描述 列的查询顺序,查询结果列表中某列的显示顺序 是否默认条件是否默认在查询条件中显示 是否查询条件,如果既是默认条件又是查询条件,在执行查询时会作为查询条件 直接显示出来;如果是是查询条件且不是默认条件,则需要在执行查询前选择,才能在查询 中显示此查询条件。 是否查询显示,列是否在查询结果列表中显示
是否排序,是否允许列在查询结果列表中排序 列类型,列类型包括文本类型、键值集合类型、日期类型、日期区间类型、枚举类 型、复选框枚举类型、复选框数据库查询类型
操作符,查询时的操作条件操作符,包括大于、小于、大于等于、小于等于、包含在、 相似; 填写以上信息后,保存。
(五)执行查询 在自定义查询可视化界面中找到刚才定制的查询,选择查询条件,点击提交按钮, 即可转到相应的查询界面;在查询界面中输入查询条件,点击查询按钮后即可看到相应的 查询结果;选中某条记录,点击查看明细可以查看此记录更详细的信息;点击导出按钮,能 够将查询结果导出为电子表格。
权利要求
一种自定义查询方法,其特征在于,包括以下内容1)是把数据类型抽象为两种直接在界面显示的类型;2)把数据的展现方式抽象为文本类型、日期类型、日期区间类型、枚举类型、复选框枚举类型、复选框数据库查询类型;把操作符限定为大于、小于、大于等于、小于等于、包含在、相似;3)建立自定义查询模型,不需要编写代码,只需要在自定义查询界面中定制、配置查询即可实现特定的查询功能;4)在查询列表中使用组件适配器调用系统中已有的功能和组件显示查询出的记录的详细信息,实现了功能重用;5)同一个查询可定义不同的查询模板;具体步骤如下1)把数据类型抽象为两种可直接在界面显示的类型,包括(1)文本类型把字符串、整数、长整形、浮点数等类型抽象为文本类型;(2)键值类型、键值集合类型<1>把数据库中存储的是符号或者代码,而在界面上需要显示相应文字信息的数据,定义为键值类型{键值}把复选、下拉选择等则定义为多个键值类型的集合,即键值集合类型[{键值},{键值},{键值}......]<2>键值的对应关系采用两种取值方式1>使用属性文件配置,格式为表名.字段名=键1值1,键2值2,键3值3......2>使用数据查询模板,查询系统中已有的字典表表名.字段名.SQL=数据库查询语句;3)把数据的展现方式抽象为文本类型、日期类型、日期区间类型、枚举类型、复选框枚举类型、复选框数据库查询类型,其中,数据类型和数据展现方式的对应关系如下数据类型,数据展现方式;文本类型,包括文本类型;日期类型;日期区间类型;键值类型、键值集合类型,包括枚举类型;复选框枚举类型;复选框数据库查询类型;文本类型;4)建立自定义查询模型,不需要编写代码,只需要在自定义查询界面中定制、配置查询即可实现特定的查询功能,自定义查询模型包括查询定义模型和列定义模型两部分;1)查询定义模型结构如下查询定义的主键;是否主表;描述;查询顺序;查询名称;展现组件;主外键名,用于单表或者主从表查询;备注;2)列定义模型结构如下列定义的主键;查询定义的主键;描述;列名称;是否默认条件;是否查询条件;是否查询显示;是否排序;列类型;操作符;备注;使用数据类型和展现组件类型,结合自定义查询模型创建可视化界面;5)在查询列表中使用组件适配器调用系统中已有的功能和组件显示查询出的记录的详细信息,实现功能重用,组件适配器包含组件注册器、组件查找器、组件调用器三个功能,组件注册器负责注册系统中已有的组件,形成组件库;组件查找器根据定义的查询中提供的组件名称在组件库中查找组件;组件调用器负责调用查找到的组件,并把数据传递给组件;6)同一个查询定义不同的查询模板,查询模板保存了定制的查询除默认查询条件以外的其它查询条件,是对已定制的查询的更细致的进一步的定制。
全文摘要
本发明提供一种自定义查询方法,通过灵活的查询模型、数据和展现的分离,可以适应用户复杂多变的数据查询需求;用户不用编写代码,只需要定制需要查询的数据和需要显示的数据,进行少量配置,就可以看到查询结果;对界面个性化的需求,只需要安照查询模型定制新的展现组件,注册后,将查询的展现组件修改为此组件即可。本发明的优异效果是(1)自定义查询是可配置的、灵活的、能够快速定制的,并且不需要编写代码;(2)明显减少企业应用中查询功能的工作量,对系统已有的组件实现了重用。(3)使用户可以参与进来,做出更符合用户需求的查询功能。
文档编号G06F17/30GK101788996SQ20091023043
公开日2010年7月28日 申请日期2009年11月19日 优先权日2009年11月19日
发明者张胜猛, 蔡卫卫 申请人:山东浪潮齐鲁软件产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1