CN106951430A - 账表查询方法及装置 - Google Patents
账表查询方法及装置 Download PDFInfo
- Publication number
- CN106951430A CN106951430A CN201611237514.4A CN201611237514A CN106951430A CN 106951430 A CN106951430 A CN 106951430A CN 201611237514 A CN201611237514 A CN 201611237514A CN 106951430 A CN106951430 A CN 106951430A
- Authority
- CN
- China
- Prior art keywords
- field
- metadata
- name
- query
- sql statement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种账表查询方法,包括:通过获取当前用户界面元数据和当前查询元数据,对当前用户界面元数据和当前查询元数据进行解析得到查询元数据字段名,根据查询元数据字段名得到自定义字段信息,获取第一结构化查询语言SQL语句,将自定义字段信息与第一SQL语句通过查询元数据字段名进行关联拼接,得到第二SQL语句,根据第二SQL语句,从数据库中获取并返回自定义字段信息对应的目标帐表。此外,还提供了一种账表查询装置。上述账表查询方法和装置,使得ERP系统中的整个系统账表属性自动继承自定义字段信息的属性,能够支持自定义字段信息的账表查询,有效的降低了ERP系统运行维护和实施成本。
Description
技术领域
本发明涉及软件领域,特别是涉及一种账表查询方法及装置。
背景技术
传统的ERP(Enterprise Resource Planning,企业资源计划)产品中,当需要在系统的标准格式单据中增加一些自定义字段,并且要求该字段能够在系统的报表中进行查询时,往往首先评估该字段需求是否合理,如果满足通用需求,则会在产品中正式发布补丁包,将该功能作为一个通用功能保存在ERP产品中;如果不满足通用需求,则会通过二次开发或者非正式补丁等处理方式来解决。
由于传统的ERP产品报表整个系统非常严密,当增加的自定义字段不满足通用需求时,此时采用二次开发或者非正式补丁等处理方式,则需要对标准ERP产品对应的账表进行改动,开发投入量大,最会终导致ERP产品维护的成本过高。
发明内容
基于此,有必要针对上述问题,提供一种账表查询方法及装置,能够支持自定义字段信息的账表查询,降低传统ERP产品的维护成本。
一种账表查询方法,所述方法包括:
获取当前用户界面元数据和当前查询元数据;
对所述当前用户界面元数据和所述当前查询元数据进行解析得到查询元数据字段名,根据所述查询元数据字段名得到自定义字段信息;
获取第一结构化查询语言SQL语句,将所述自定义字段信息与所述第一SQL语句通过所述查询元数据字段名进行关联拼接,得到第二SQL语句;
根据所述第二SQL语句,从数据库中获取并返回所述自定义字段信息对应的目标帐表。
在其中一个实施例中,所述获取当前用户界面元数据和当前查询元数据的步骤之前还包括:
获取自定义字段信息;
根据所述自定义字段信息,对单据编辑界面进行扩展,得到当前用户界面元数据;
获取已有查询元数据,根据所述当前用户界面元数据以及所述自定义字段信息,对所述已有查询元数据进行对应的配置修改,得到当前查询元数据。
在其中一个实施例中,对所述当前用户界面元数据和所述当前查询元数据进行解析得到查询元数据字段名,根据所述查询元数据字段名得到自定义字段信息的步骤包括:
对所述当前用户界面元数据进行解析,得到第一解析结果,所述第一解析结果包括用户界面元数据字段名和对应的第一字段类型;
对所述当前查询元数据进行解析,得到第二解析结果,所述第二解析结果包括查询元数据字段名、字段对象表标识字段、字段对象表名称字段和对应的单据表字段名;
根据所述第一解析结果和所述查询元数据字段名,得到第二字段类型;
根据所述第二字段类型和所述第二解析结果得到对应的自定义字段信息,所述自定义字段信息对应的字段类型与所述第二字段类型相同。
在其中一个实施例中,所述根据所述第一解析结果和所述查询元数据字段名,得到第二字段类型的步骤包括:
根据所述第一解析结果和所述查询元数据字段名,将所述用户界面元数据字段名和所述查询元数据字段名进行动态匹配,得到所述查询元数据字段名对应的第二字段类型。
在其中一个实施例中,所述将所述自定义字段信息与第一SQL语句通过所述元数据字段名进行关联拼接,得到第二SQL语句的步骤包括:
获取第一SQL语句;
判断所述自定义字段信息对应的字段类型是否为查询实体对象的控件类型,若是,则设定所述字段对象表标识字段与所述单据表字段名为关联字段,通过所述查询元数据字段名将所述字段对象表名称字段与所述第一SQL语句进行关联拼接,得到第二SQL语句;若不是,则通过所述查询元数据字段名将所述单据表字段名与所述第一SQL语句直接进行拼接,得到第二SQL语句。
一种账表查询装置,所述装置包括:
数据获取模块,用于获取当前用户界面元数据和当前查询元数据;
数据解析模块,用于对所述当前用户界面元数据和所述当前查询元数据进行解析得到查询元数据字段名,根据所述查询元数据字段名得到自定义字段信息;
语句拼接模块,获取第一结构化查询语言SQL语句,将所述自定义字段信息与所述第一SQL语句通过所述查询元数据字段名进行关联拼接,得到第二SQL语句;
查询模块,用于根据所述第二SQL语句,从数据库中获取并返回所述自定义字段信息对应的目标帐表。
在其中一个实施例中,所述装置还包括:获取自定义字段信息,根据所述自定义字段信息,对单据编辑界面进行扩展,得到当前用户界面元数据,获取已有查询元数据,根据所述当前用户界面元数据以及所述自定义字段信息,对所述已有查询元数据进行对应的配置修改,得到当前查询元数据。
在其中一个实施例中,所述数据解析模块包括:
第一解析单元,用于对所述当前用户界面元数据进行解析,得到第一解析结果,所述第一解析结果包括用户界面元数据字段名和对应的第一字段类型;
第二解析单元,用于对所述当前查询元数据进行解析,得到第二解析结果,所述第二解析结果包括查询元数据字段名、字段对象表标识字段、字段对象表名称字段和对应的单据表字段名;
自定义字段信息获取单元,用于根据所述第一解析结果和所述查询元数据字段名,得到第二字段类型,根据所述第二字段类型和所述第二解析结果得到对应的自定义字段信息,所述自定义字段信息对应的字段类型与所述第二字段类型相同。
在其中一个实施例中,所述自定义字段信息获取单元还用于根据所述第一解析结果和所述查询元数据字段名,将所述用户界面元数据字段名和所述查询元数据字段名进行动态匹配,得到所述查询元数据字段名对应的第二字段类型。
在其中一个实施例中,所述语句拼接模块包括:
语句获取单元,用于获取第一SQL语句;
判断单元,用于判断所述自定义字段信息对应的字段类型是否为查询实体对象的控件类型,若是则进入第一处理单元,若不是则进入第二处理单元;
第一处理单元,用于设定所述字段对象表标识字段与所述单据表字段名为关联字段,通过所述查询元数据字段名将所述字段对象表名称字段与所述第一SQL语句进行关联拼接,得到第二SQL语句;
第二处理单元,用于通过所述查询元数据字段名将所述单据表字段名与所述第一SQL语句直接进行拼接,得到第二SQL语句。
上述账表查询方法及装置,通过获取当前用户界面元数据和当前查询元数据,对当前用户界面元数据和当前查询元数据进行解析得到查询元数据字段名,根据查询元数据字段名得到自定义字段信息,获取第一结构化查询语言SQL语句,将自定义字段信息与第一SQL语句通过查询元数据字段名进行关联拼接,得到第二SQL语句,根据第二SQL语句,从数据库中获取并返回自定义字段信息对应的目标帐表,可以将单据中扩展增加的自定义字段信息作为后台系统默认账表的一部分,进而在账表上进行统计分析,使得ERP系统中的整个系统账表属性自动继承自定义字段信息的字段属性,不再因为增加的自定义字段而对账表属性进行扩展,进而能够直接支持自定义字段的账表查询,有效的降低了ERP系统运行维护和实施成本。
附图说明
图1为一个实施例中一种账表查询方法的流程图;
图2为另一个实施例中一种账表查询方法的流程图;
图3为一个实施例中获取F7类型自定义字段信息,并对单据编辑界面进行扩展的界面示意图;
图4为一个实施例中得到的当前用户界面元数据的界面示意图;
图5为一个实施例中获取文本类型自定义字段信息,并对单据编辑界面进行扩展的界面示意图;
图6为一个实施例中自定义字段信息对应的字段类型为F7时,根据当前用户界面元数据以及自定义字段信息,对已有查询元数据进行对应的配置修改的界面示意图;
图7为一个实施例中当自定义字段信息对应的字段类型为F7时,得到的当前查询元数据的界面示意图;
图8为一个实施例中当自定义字段信息对应的字段类型为文本类型时,得到的当前查询元数据的界面示意图;
图9为一个实施例中对当前用户界面元数据和当前查询元数据进行解析得到查询元数据字段名,根据查询元数据字段名得到自定义字段信息的方法流程图;
图10为一个实施例中获取第一结构化查询语言SQL语句,将自定义字段信息与第一SQL语句通过查询元数据字段名进行关联拼接,得到第二SQL语句的方法流程图;
图11为一个实施例中自定义字段信息为F7类型时,自定义字段信息与第一SQL语句的拼接示意图;
图12为一个实施例中自定义字段信息不是F7类型时,自定义字段信息与第一SQL语句的拼接示意图;
图13为一个实施例中一种账表查询装置的结构框图;
图14为另一个实施例中一种账表查询装置的结构框图;
图15为一个实施例中数据解析模块的结构框图;
图16为一个实施例中语句拼接模块的结构框图。
具体实施方式
如图1所示,提供了一种账表查询方法,包括以下步骤:
步骤S110,获取当前用户界面元数据和当前查询元数据。
具体地,元数据是指对数据及信息资源的描述性信息,当前用户界面元数据包含了对人机交互界面的抽象性描述,记录了一个界面内控件的类型、控件的各属性值、控件的布局、界面的多语言等信息,当前查询元数据记录了实体对象的查询视图,可以在数据访问过程中只获取视图中指定属性的数据,并按照过滤、排序条件进行数据的过滤和单据的排序,即当前查询元数据包括查询元数据字段的描述,过滤条件的描述,排序字段的描述以及查询子对象的描述。
一般的,当前查询元数据是在当前用户界面元数据的基础上配置而成,当前查询元数据包含了用于控制当前用户界面元数据进行显示的字段,当前用户界面元数据和当前查询元数据均保存在后台数据库中,通过向后台服务器发送获取当前用户界面元数据和当前查询元数据的请求,从而获取对应的当前用户界面元数据和当前查询元数据。
在一个实施例中,用户界面(user interface)简称为UI,相应的当前用户界面元数据是指当前UI元数据,查询元数据是指QUERY元数据,通过从后台获取对应的用户界面元数据作为当前用户界面元数据,获取对应的查询元数据作为当前查询元数据。
步骤S120,对当前用户界面元数据和当前查询元数据进行解析得到查询元数据字段名,根据查询元数据字段名得到自定义字段信息。
具体地,对当前用户界面元数据进行解析得到第一解析结果,对当前查询元数据进行解析得到第二解析结果,第二解析结果中包括查询元数据字段名,通过查询元数据字段名将第一解析结果与第二解析结果进行关联,得到自定义字段信息,自定义字段信息类型可以包含有文本、枚举、文本框以及F7类型,其中F7类型是指查询实体对象的控件类型。
步骤S130,获取第一结构化查询语言SQL语句,将自定义字段信息与第一SQL语句通过查询元数据字段名进行关联拼接,得到第二SQL语句。
具体地,SQL是结构化查询语言(Structured Query Language,SQL),SQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,同时也是数据库脚本文件的扩展名。结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口,并且结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
本实施例中,获取与原始账表相对应的第一SQL语句,然后根据第一SQL语句从后台数据库中获取旧账表作为原始账表,进一步的通过查询元数据字段名将自定义字段信息与第一SQL语句进行关联拼接,得到拼接后的第二SQL语句。
在一个实施例中,第一SQL语句为SELECT b.fid1as id1,b.fname1as name FROMBill b,其中,Bill b表示单据表Bill名称为b,b.fid1表示单据表Bill中的id1标识(identification,id)字段fid1,b.fname1表示单据表Bill中的名称字段fname1,即通过第一SQL语句可以从后台单据表Bill中查询获得包含b.fid1以及b.fname1等字段的原始账表,然后通过解析得到的查询元数据字段名fieldAlias1,将得到的自定义字段信息与第一SQL语句通过查询元数据字段名fieldAlias1进行关联拼接,得到第二SQL语句。
步骤140,根据第二SQL语句,从数据库中获取并返回自定义字段信息对应的目标帐表。
具体地,由于第二SQL语句包含了对应的自定义字段信息,通过第二SQL语句对数据库进行查询,可以得到上述自定义字段信息对应的目标账表。
本实施例中,通过获取当前用户界面元数据和当前查询元数据,对当前用户界面元数据和当前查询元数据进行解析得到查询元数据字段名,根据查询元数据字段名得到自定义字段信息,获取第一结构化查询语言SQL语句,将自定义字段信息与第一SQL语句通过查询元数据字段名进行关联拼接,得到第二SQL语句,根据第二SQL语句,从数据库中获取并返回自定义字段信息对应的目标帐表,可以将单据中扩展增加的自定义字段信息作为后台系统默认账表的一部分,进而在账表上进行统计分析,使得ERP系统中的整个系统账表属性自动继承自定义字段信息的字段属性,不再因为增加的自定义字段信息而对账表属性进行扩展,减少了标准账表属性的数量,进而能够直接支持自定义字段信息的账表查询,有效的降低了ERP系统运行维护和实施成本。
在其中一个实施例中,如图2所示,步骤S110之前还包括以下步骤:
步骤S150,获取自定义字段信息,根据自定义字段信息,对单据编辑界面进行扩展,得到当前用户界面元数据。
具体地,通过在单据编辑界面上录入自定义字段信息,并进行保存,从而实现对单据编辑界面的扩展,得到包含自定义字段信息的当前用户界面元数据,并保存在后台数据库中。
在一个实施例中,如图3所示,在固定资产卡片维护选项下对应的固定资产卡片单据编辑界面中,录入对应的F7类型自定义字段信息,例如录入物料,其对应的元数据字段名为material,然后将上述录入的自定义字段信息进行保存,得到当前用户界面元数据,在后台单据表中自动生成对应的字段CFMaterialID,该字段CFMaterialID包括元数据字段名material在单据表中对应的标识信息,如图4所示中P4.1所示。
在另一个实施例中,如图5所示,在固定资产卡片维护选项下对应的固定资产卡片单据编辑界面中,录入对应的其他类型自定义字段信息,得到当前用户界面元数据,例如录入文本,其对应的元数据字段名为text,然后将上述录入的自定义字段信息进行保存,在后台单据表中自动生成对应的字段CFtext,如图4中P4.2所示。
步骤S160,获取已有查询元数据,根据当前用户界面元数据以及自定义字段信息,对已有查询元数据进行对应的配置修改,得到当前查询元数据。
具体地,在得到上述当前用户界面元数据之后,进一步从后台获取对应的已有查询元数据,通过在对应的单据编辑界面中,录入对应的编辑信息,并进行保存得到当前查询元数据。
在一个实施例中,如图6所示,当字段类型为F7字段类型时,以物料字段为参考实例,在固定资产卡片维护选项下,点击对应的业务数据源选项卡对应的当前卡片QUERY选项,获得已有查询元数据并进入已有查询元数据界面,首先导入物料实体,然后设置物料的父对象、子对象、连接类型以及对应的物料字段对象表,其中对应的物料字段对象表中包含物料对应的父对象属性和子对象属性,这里的父对象属性与物料字段对象表的名称字段t.fname相对应,子对象属性与物料字段对象表的标识id字段相对应,其中父对象属性为元数据字段名material,子对象属性为id,子对象Material表示字段对象表名,然后生成当前查询元数据,对应的字段名称为Material.material,如图7所示。
当字段类型为其它字段类型时,如图8所示,以文本字段作为参考实例,以物料字段为参考实例,生成的当前查询元数据,对应的名称为元数据字段名text。
在其中一个实施例中,如图9所示,步骤S120包括:
S122,对当前用户界面元数据进行解析,得到第一解析结果,第一解析结果包括用户界面元数据字段名和对应的第一字段类型。
具体地,系统后台通过对当前用户界面元数据进行解析,得到第一解析结果,第一解析结果包括用户界面元数据字段名fieldAlias2和对应的第一字段类型type2。
S124,对当前查询元数据进行解析,得到第二解析结果,第二解析结果包括查询元数据字段名、字段对象表标识字段、字段对象表名称字段和对应的单据表字段名。
具体地,系统后台通过当前查询元数据进行解析,得到第二解析结果,第二解析结果包括查询元数据字段名fieldAlias1、字段对象表标识字段t.fid2、字段对象表名称字段t.fname2和对应的单据表字段名b.fieldname。
S126,根据第一解析结果和查询元数据字段名,得到第二字段类型。
具体地,第一解析结果中包括用户界面元数据字段名fieldAlias2以及其对应的第一字段类型type2,进一步通过查询元数据字段名fieldAlias1和用户界面元数据字段名fieldAlias2进行关联,得到查询元数据字段名fieldAlias1对应的第二字段类型type1。
S128,根据第二字段类型和第二解析结果得到对应的自定义字段信息,自定义字段信息对应的字段类型与第二字段类型相同。
具体地,通过第二字段类型与第二解析结果相结合,得到自定义字段信息,包括查询元数据字段名fieldAlias1、第二字段类型type1、字段对象表标识字段t.fid2、字段对象表名称字段t.fname2和对应的单据表字段名b.fieldname,自定义字段信息的字段类型由第二字段类型type1决定,即自定义字段信息对应的字段类型与第二字段类型type1相同。
在其中一个实施例中,步骤S126包括:根据第一解析结果和查询元数据字段名,将用户界面元数据字段名和查询元数据字段名进行动态匹配,得到查询元数据字段名对应的第二字段类型。
具体地,当前查询元数据是在当前用户界面元数据的基础上配置而成,当前查询元数据包含了用于控制当前用户界面元数据进行显示的字段,也就是说相应的查询元数据字段名fieldAlias1和用户界面元数据字段名fieldAlias2包含有相同部分的元数据字段名对应的字段信息,通过将用户界面元数据字段名fieldAlias2和查询元数据字段名fieldAlias1进行动态匹配,可以得到查询元数据字段名fieldAlias1对应的第二字段类型type1。
在一个实施例中,如图10所示,步骤S130包括:
步骤S132,获取第一结构化查询语言SQL语句。
具体地,根据用户输入的查询信息,得到第一结构化查询语言SQL语句。
步骤S134,判断自定义字段信息对应的字段类型是否为查询实体对象的控件类型,若是则进入第一处理单元136,若否则进入第二处理单元138。
具体地,不同类型的自定义字段信息与第一SQL语句拼接的过程是不同的,在拼接之前需要判断自定义字段信息所对应的自定义字段信息类型,一般而言,查询实体对象的控件类型即F7字段的拼接方式与其它类型的自定义字段信息拼接方式不同,其它自定义字段信息类型包括文本、枚举以及文本框等。
步骤S136,设定字段对象表标识字段与单据表字段名为关联字段,通过查询元数据字段名将字段对象表名称字段与第一SQL语句进行关联拼接,得到第二SQL语句。
在一个实施例中,当自定义字段信息为F7类型时,拼接过程如图11所示,第一SQL语句为SELECT b.fid1as id1,b.fname1as name FROM Bill b,将字段对象表标识字段t.fid2与单据表字段名b.fieldname作为关联条件,即t.fid2=b.fieldname,通过字段对象表Table与单据表Bill进行内连接,将字段对象表名称字段t.fname2与第一SQL语句进行关联拼接,得到第二SQL语句,即SELECT t.fname2as fieldAlias1,b.fid1as id1,b.fname1as name FROM Table as t INNER JOIN Bill as b ON t.fid2=b.fieldName;字段对象表名称字段包括查询元数据字段名fieldAlias1。
步骤S138,通过查询元数据字段名将单据表字段名与第一SQL语句直接进行拼接,得到第二SQL语句。
在一个实施例中,当自定义字段信息的字段类型不是F7类型时,拼接过程如图12所示,第一SQL语句为SELECT b.fid1as id1,通过查询元数据字段名将单据表字段名与第一SQL语句直接进行拼接得到第二SQL语句,即SELECT b.fieldname as filedAlisas1,b.fid1as id1,b.fname1as name FROM Bill b。
此外,如图13所示,还提供了一种账表查询装置,包括:
数据获取模块210,用于获取当前用户界面元数据和当前查询元数据;
数据解析模块220,用于对当前用户界面元数据和当前查询元数据进行解析得到查询元数据字段名,根据查询元数据字段名得到自定义字段信息;
语句拼接模块230,获取第一结构化查询语言SQL语句,将自定义字段信息与第一SQL语句通过查询元数据字段名进行关联拼接,得到第二SQL语句;
查询模块240,用于根据第二SQL语句,从数据库中获取并返回自定义字段信息对应的目标帐表。
在其中一个实施例中,如图14所示,上述装置还包括:
第一数据生成单元250,用于获取自定义字段信息,根据自定义字段信息,对单据编辑界面进行扩展,得到当前用户界面元数据。
第二数据生成单元260,用于获取已有查询元数据,根据当前用户界面元数据以及自定义字段信息,对已有查询元数据进行对应的配置修改,得到当前查询元数据。
在其中一个实施例中,如图15所示,数据解析模块220包括:
第一解析单元210,用于对当前用户界面元数据进行解析,得到第一解析结果,第一解析结果包括用户界面元数据字段名和对应的第一字段类型;
第二解析单元220,用于对当前查询元数据进行解析,得到第二解析结果,第二解析结果包括查询元数据字段名、字段对象表标识字段、字段对象表名称字段和对应的单据表字段名;
自定义字段信息获取单元230,用于根据第一解析结果和查询元数据字段名,得到第二字段类型,根据第二字段类型和第二解析结果得到对应的自定义字段信息,自定义字段信息对应的字段类型与第二字段类型相同。
在其中一个实施例中,自定义字段信息获取单元230还用于根据第一解析结果和查询元数据字段名,将用户界面元数据字段名和查询元数据字段名进行动态匹配,得到查询元数据字段名对应的第二字段类型。
在其中一个实施例中,如图16所示,语句拼接模块230包括:
语句获取单元232,用于获取第一SQL语句;
判断单元234,用于判断自定义字段信息对应的字段类型是否为查询实体对象的控件类型,若是则进入第一处理单元,若不是则进入第二处理单元;
第一处理单元236,用于设定字段对象表标识字段与单据表字段名为关联字段,通过查询元数据字段名将字段对象表名称字段与第一SQL语句进行关联拼接,得到第二SQL语句;
第二处理单元238,用于通过查询元数据字段名将单据表字段名与第一SQL语句直接进行拼接,得到第二SQL语句。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述程序可存储于一计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种账表查询方法,所述方法包括:
获取当前用户界面元数据和当前查询元数据;
对所述当前用户界面元数据和所述当前查询元数据进行解析得到查询元数据字段名,根据所述查询元数据字段名得到自定义字段信息;
获取第一结构化查询语言SQL语句,将所述自定义字段信息与所述第一SQL语句通过所述查询元数据字段名进行关联拼接,得到第二SQL语句;
根据所述第二SQL语句,从数据库中获取并返回所述自定义字段信息对应的目标帐表。
2.根据权利要求1所述的方法,其特征在于,所述获取当前用户界面元数据和当前查询元数据的步骤之前还包括:
获取自定义字段信息,根据所述自定义字段信息,对单据编辑界面进行扩展,得到当前用户界面元数据;
获取已有查询元数据,根据所述当前用户界面元数据以及所述自定义字段信息,对所述已有查询元数据进行对应的配置修改,得到当前查询元数据。
3.根据权利要求1所述的方法,其特征在于,对所述当前用户界面元数据和所述当前查询元数据进行解析得到查询元数据字段名,根据所述查询元数据字段名得到自定义字段信息的步骤包括:
对所述当前用户界面元数据进行解析,得到第一解析结果,所述第一解析结果包括用户界面元数据字段名和对应的第一字段类型;
对所述当前查询元数据进行解析,得到第二解析结果,所述第二解析结果包括查询元数据字段名、字段对象表标识字段、字段对象表名称字段和对应的单据表字段名;
根据所述第一解析结果和所述查询元数据字段名,得到第二字段类型;
根据所述第二字段类型和所述第二解析结果得到对应的自定义字段信息,所述自定义字段信息对应的字段类型与所述第二字段类型相同。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一解析结果和所述查询元数据字段名,得到第二字段类型的步骤包括:
根据所述第一解析结果和所述查询元数据字段名,将所述用户界面元数据字段名和所述查询元数据字段名进行动态匹配,得到所述查询元数据字段名对应的第二字段类型。
5.根据权利要求3所述的方法,其特征在于,所述获取第一结构化查询语言SQL语句,将所述自定义字段信息与第一SQL语句通过所述元数据字段名进行关联拼接,得到第二SQL语句的步骤包括:
获取第一结构化查询语言SQL语句;
判断所述自定义字段信息对应的字段类型是否为查询实体对象的控件类型,若是,则设定所述字段对象表标识字段与所述单据表字段名为关联字段,通过所述查询元数据字段名将所述字段对象表名称字段与所述第一SQL语句进行关联拼接,得到第二SQL语句;若不是,则通过所述查询元数据字段名将所述单据表字段名与所述第一SQL语句直接进行拼接,得到第二SQL语句。
6.一种账表查询装置,所述装置包括:
数据获取模块,用于获取当前用户界面元数据和当前查询元数据;
数据解析模块,用于对所述当前用户界面元数据和所述当前查询元数据进行解析得到查询元数据字段名,根据所述查询元数据字段名得到自定义字段信息;
语句拼接模块,获取原始帐表对应的第一结构化查询语言SQL语句,将所述自定义字段信息与所述第一SQL语句通过所述查询元数据字段名进行关联拼接,得到第二SQL语句;
查询模块,用于根据所述第二SQL语句,从数据库中获取并返回所述自定义字段信息对应的目标帐表。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:获取自定义字段信息,根据所述自定义字段信息,对单据编辑界面进行扩展,得到当前用户界面元数据,获取已有查询元数据,根据所述当前用户界面元数据以及所述自定义字段信息,对所述已有查询元数据进行对应的配置修改,得到当前查询元数据。
8.根据权利要求6所述的装置,其特征在于,所述数据解析模块包括:
第一解析单元,用于对所述当前用户界面元数据进行解析,得到第一解析结果,所述第一解析结果包括用户界面元数据字段名和对应的第一字段类型;
第二解析单元,用于对所述当前查询元数据进行解析,得到第二解析结果,所述第二解析结果包括查询元数据字段名、字段对象表标识字段、字段对象表名称字段和对应的单据表字段名;
自定义字段信息获取单元,用于根据所述第一解析结果和所述查询元数据字段名,得到第二字段类型,根据所述第二字段类型和所述第二解析结果得到对应的自定义字段信息,所述自定义字段信息对应的字段类型与所述第二字段类型相同。
9.根据权利要求8所述的装置,其特征在于,所述自定义字段信息获取单元还用于根据所述第一解析结果和所述查询元数据字段名,将所述用户界面元数据字段名和所述查询元数据字段名进行动态匹配,得到所述查询元数据字段名对应的第二字段类型。
10.根据权利要求6所述的装置,其特征在于,所述语句拼接模块包括:
语句获取单元,用于获取第一SQL语句;
判断单元,用于判断所述自定义字段信息对应的字段类型是否为查询实体对象的控件类型,若是则进入第一处理单元,若不是则进入第二处理单元;
第一处理单元,用于设定所述字段对象表标识字段与所述单据表字段名为关联字段,通过所述查询元数据字段名将所述字段对象表名称字段与所述第一SQL语句进行关联拼接,得到第二SQL语句;
第二处理单元,用于通过所述查询元数据字段名将所述单据表字段名与所述第一SQL语句直接进行拼接,得到第二SQL语句。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611237514.4A CN106951430B (zh) | 2016-12-28 | 2016-12-28 | 账表查询方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611237514.4A CN106951430B (zh) | 2016-12-28 | 2016-12-28 | 账表查询方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106951430A true CN106951430A (zh) | 2017-07-14 |
CN106951430B CN106951430B (zh) | 2019-12-06 |
Family
ID=59465809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611237514.4A Active CN106951430B (zh) | 2016-12-28 | 2016-12-28 | 账表查询方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106951430B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480280A (zh) * | 2017-08-22 | 2017-12-15 | 金蝶软件(中国)有限公司 | 一种数据处理的方法以及相关设备 |
CN108196921A (zh) * | 2017-12-26 | 2018-06-22 | 金蝶软件(中国)有限公司 | 单据开发方法、装置、计算机设备和存储介质 |
CN108228916A (zh) * | 2018-04-08 | 2018-06-29 | 中国联合网络通信集团有限公司 | 数据的查询方法及装置 |
CN108572945A (zh) * | 2018-03-09 | 2018-09-25 | 吉贝克信息技术(北京)有限公司 | 创建报表的方法、系统、存储介质、及电子设备 |
CN109213783A (zh) * | 2018-11-15 | 2019-01-15 | 凌云天博光电科技股份有限公司 | 一种基于mib的结构化查询方法及装置 |
CN110109981A (zh) * | 2019-04-04 | 2019-08-09 | 平安科技(深圳)有限公司 | 工作队列的信息展示方法、装置、计算机设备和存储介质 |
CN110750969A (zh) * | 2019-09-29 | 2020-02-04 | 北京东软望海科技有限公司 | 一种生成报表的方法及装置 |
CN111046039A (zh) * | 2019-11-25 | 2020-04-21 | 金蝶软件(中国)有限公司 | 一种单据查询方法及相关装置 |
CN111177174A (zh) * | 2018-11-09 | 2020-05-19 | 百度在线网络技术(北京)有限公司 | Sql语句的生成方法、装置、设备和计算机可读存储介质 |
CN111198772A (zh) * | 2019-12-23 | 2020-05-26 | 中思博安科技(北京)有限公司 | 一种应用程序接口api生成的方法及系统 |
CN111984667A (zh) * | 2019-05-24 | 2020-11-24 | 上海擎感智能科技有限公司 | 一种关系性数据库元数据导出方法及系统 |
CN112380293A (zh) * | 2020-12-11 | 2021-02-19 | 上海中通吉网络技术有限公司 | 一种分库分表数据的处理方法和装置 |
CN112528067A (zh) * | 2020-12-24 | 2021-03-19 | 北京百度网讯科技有限公司 | 图数据库的存储方法、读取方法、装置及设备 |
CN113190577A (zh) * | 2021-03-11 | 2021-07-30 | 新华三大数据技术有限公司 | 一种表连接查询方法、装置及存储介质 |
CN113468873A (zh) * | 2021-07-09 | 2021-10-01 | 北京东方国信科技股份有限公司 | Pl/sql语言的语法解析方法及装置 |
CN113515552A (zh) * | 2021-05-31 | 2021-10-19 | 南京一鸣科技有限公司 | 管理信息系统中基于元数据的高可配置性查询统计方法 |
CN113590593A (zh) * | 2021-08-04 | 2021-11-02 | 浙江大华技术股份有限公司 | 数据表信息的生成方法和装置、存储介质及电子装置 |
CN113760961A (zh) * | 2020-08-11 | 2021-12-07 | 北京京东振世信息技术有限公司 | 数据查询方法和装置 |
CN115292353A (zh) * | 2022-10-09 | 2022-11-04 | 腾讯科技(深圳)有限公司 | 数据查询方法、装置、计算机设备和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1556482A (zh) * | 2003-12-31 | 2004-12-22 | 中兴通讯股份有限公司 | 一种用于实现数据库多表查询的数据处理方法 |
US20050192953A1 (en) * | 2000-07-05 | 2005-09-01 | Kendyl A. Romah And Data Ace Inc | Graphical user interface for building boolean queries and viewing search results |
CN101271473A (zh) * | 2008-04-29 | 2008-09-24 | 华为技术有限公司 | 数据查询方法、装置及系统 |
CN101320388A (zh) * | 2008-07-18 | 2008-12-10 | 金蝶软件(中国)有限公司 | 一种依据单据状态过滤单据的方法和装置 |
CN102110142A (zh) * | 2011-02-09 | 2011-06-29 | 浪潮集团山东通用软件有限公司 | 人力资源管理信息系统的人员异动动态扩展的方法 |
CN102789457A (zh) * | 2011-05-17 | 2012-11-21 | 航天信息股份有限公司 | 动态定制过滤条件的方法 |
CN103488694A (zh) * | 2013-09-02 | 2014-01-01 | 用友软件股份有限公司 | 业务数据查询装置和业务数据查询方法 |
US9141664B2 (en) * | 2009-08-31 | 2015-09-22 | Hewlett-Packard Development Company, L.P. | System and method for optimizing queries |
-
2016
- 2016-12-28 CN CN201611237514.4A patent/CN106951430B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050192953A1 (en) * | 2000-07-05 | 2005-09-01 | Kendyl A. Romah And Data Ace Inc | Graphical user interface for building boolean queries and viewing search results |
CN1556482A (zh) * | 2003-12-31 | 2004-12-22 | 中兴通讯股份有限公司 | 一种用于实现数据库多表查询的数据处理方法 |
CN101271473A (zh) * | 2008-04-29 | 2008-09-24 | 华为技术有限公司 | 数据查询方法、装置及系统 |
CN101320388A (zh) * | 2008-07-18 | 2008-12-10 | 金蝶软件(中国)有限公司 | 一种依据单据状态过滤单据的方法和装置 |
US9141664B2 (en) * | 2009-08-31 | 2015-09-22 | Hewlett-Packard Development Company, L.P. | System and method for optimizing queries |
CN102110142A (zh) * | 2011-02-09 | 2011-06-29 | 浪潮集团山东通用软件有限公司 | 人力资源管理信息系统的人员异动动态扩展的方法 |
CN102789457A (zh) * | 2011-05-17 | 2012-11-21 | 航天信息股份有限公司 | 动态定制过滤条件的方法 |
CN103488694A (zh) * | 2013-09-02 | 2014-01-01 | 用友软件股份有限公司 | 业务数据查询装置和业务数据查询方法 |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480280A (zh) * | 2017-08-22 | 2017-12-15 | 金蝶软件(中国)有限公司 | 一种数据处理的方法以及相关设备 |
CN108196921A (zh) * | 2017-12-26 | 2018-06-22 | 金蝶软件(中国)有限公司 | 单据开发方法、装置、计算机设备和存储介质 |
CN108196921B (zh) * | 2017-12-26 | 2021-03-16 | 金蝶软件(中国)有限公司 | 单据开发方法、装置、计算机设备和存储介质 |
CN108572945A (zh) * | 2018-03-09 | 2018-09-25 | 吉贝克信息技术(北京)有限公司 | 创建报表的方法、系统、存储介质、及电子设备 |
CN108228916A (zh) * | 2018-04-08 | 2018-06-29 | 中国联合网络通信集团有限公司 | 数据的查询方法及装置 |
CN111177174A (zh) * | 2018-11-09 | 2020-05-19 | 百度在线网络技术(北京)有限公司 | Sql语句的生成方法、装置、设备和计算机可读存储介质 |
CN109213783A (zh) * | 2018-11-15 | 2019-01-15 | 凌云天博光电科技股份有限公司 | 一种基于mib的结构化查询方法及装置 |
CN110109981A (zh) * | 2019-04-04 | 2019-08-09 | 平安科技(深圳)有限公司 | 工作队列的信息展示方法、装置、计算机设备和存储介质 |
CN110109981B (zh) * | 2019-04-04 | 2023-07-25 | 平安科技(深圳)有限公司 | 工作队列的信息展示方法、装置、计算机设备和存储介质 |
CN111984667A (zh) * | 2019-05-24 | 2020-11-24 | 上海擎感智能科技有限公司 | 一种关系性数据库元数据导出方法及系统 |
CN110750969A (zh) * | 2019-09-29 | 2020-02-04 | 北京东软望海科技有限公司 | 一种生成报表的方法及装置 |
CN110750969B (zh) * | 2019-09-29 | 2023-09-01 | 望海康信(北京)科技股份公司 | 一种生成报表的方法及装置 |
CN111046039A (zh) * | 2019-11-25 | 2020-04-21 | 金蝶软件(中国)有限公司 | 一种单据查询方法及相关装置 |
CN111198772A (zh) * | 2019-12-23 | 2020-05-26 | 中思博安科技(北京)有限公司 | 一种应用程序接口api生成的方法及系统 |
CN113760961A (zh) * | 2020-08-11 | 2021-12-07 | 北京京东振世信息技术有限公司 | 数据查询方法和装置 |
CN113760961B (zh) * | 2020-08-11 | 2023-11-03 | 北京京东振世信息技术有限公司 | 数据查询方法和装置 |
CN112380293A (zh) * | 2020-12-11 | 2021-02-19 | 上海中通吉网络技术有限公司 | 一种分库分表数据的处理方法和装置 |
CN112528067A (zh) * | 2020-12-24 | 2021-03-19 | 北京百度网讯科技有限公司 | 图数据库的存储方法、读取方法、装置及设备 |
CN113190577A (zh) * | 2021-03-11 | 2021-07-30 | 新华三大数据技术有限公司 | 一种表连接查询方法、装置及存储介质 |
CN113190577B (zh) * | 2021-03-11 | 2022-08-30 | 新华三大数据技术有限公司 | 一种表连接查询方法、装置及存储介质 |
CN113515552A (zh) * | 2021-05-31 | 2021-10-19 | 南京一鸣科技有限公司 | 管理信息系统中基于元数据的高可配置性查询统计方法 |
CN113515552B (zh) * | 2021-05-31 | 2024-03-26 | 南京一鸣科技有限公司 | 管理信息系统中基于元数据的高可配置性查询统计方法 |
CN113468873B (zh) * | 2021-07-09 | 2024-04-16 | 北京东方国信科技股份有限公司 | Pl/sql语言的语法解析方法及装置 |
CN113468873A (zh) * | 2021-07-09 | 2021-10-01 | 北京东方国信科技股份有限公司 | Pl/sql语言的语法解析方法及装置 |
CN113590593A (zh) * | 2021-08-04 | 2021-11-02 | 浙江大华技术股份有限公司 | 数据表信息的生成方法和装置、存储介质及电子装置 |
CN115292353A (zh) * | 2022-10-09 | 2022-11-04 | 腾讯科技(深圳)有限公司 | 数据查询方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106951430B (zh) | 2019-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106951430A (zh) | 账表查询方法及装置 | |
US11651012B1 (en) | Coding commands using syntax templates | |
US10061788B2 (en) | Transformation of document flow to contributors network | |
US7502810B2 (en) | Tagging of facet elements in a facet tree | |
EP2041672B1 (en) | Methods and apparatus for reusing data access and presentation elements | |
US8065323B2 (en) | Offline validation of data in a database system for foreign key constraints | |
US6801910B1 (en) | Method and system for guiding drilling in a report generated by a reporting system | |
US7971231B2 (en) | Configuration management database (CMDB) which establishes policy artifacts and automatic tagging of the same | |
US8195698B2 (en) | Hierarchy manager for master data management | |
US20110209042A1 (en) | Information Technology Standard Inventory Utility | |
US11100152B2 (en) | Data portal | |
US9652740B2 (en) | Fan identity data integration and unification | |
US10552423B2 (en) | Semantic tagging of nodes | |
US6999966B2 (en) | Content management system and methodology for implementing a complex object using nested/recursive structures | |
US20090198668A1 (en) | Apparatus and method for displaying documents relevant to the content of a website | |
US8615733B2 (en) | Building a component to display documents relevant to the content of a website | |
US10223389B2 (en) | System and method for analyzing complex metadata | |
US11841852B2 (en) | Tenant specific and global pretagging for natural language queries | |
US20050132324A1 (en) | System and method for efficient development of configurable software systems in a large software development community | |
US11392649B2 (en) | Binding query scope to directory attributes | |
US20230035835A1 (en) | System and method of a modular framework for configuration and reuse of web components | |
CN112905627B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
KR102150911B1 (ko) | 비즈니스 룰 관리 시스템 | |
KR102150910B1 (ko) | 비즈니스 룰 관리 시스템 | |
US20220292077A1 (en) | Scalable interactive data collection system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |