一种层次节点数据的查询方法技术

技术编号:9967607 阅读:104 留言:0更新日期:2014-04-25 08:22
本发明专利技术公开了一种层次节点数据的查询方法,该方法融合MDX语句、BWETL数据抽取和RFC远程函数调用于一体,实现层次节点数据的查询,层级节点输入,在数据检索平台上输入查询的节点;权限检查,对输入的节点及使用的人员作权限的校验;参数传递,如果校验通过,传递参数给函数,进行具体的取数操作;执行节点报表,函数接收到参数以后,根据参数调用BWQUERY节点报表;调用MDX语句,对输入节点有数据的,则调用MDX语句,把报表运行的结果传递到函数的内表中,作为查询的参数保留;返回结果,根据节点参数和函数的限制条件从DSO模型中读取数据,返回结果到数据检索平台,得到层次节点数据。本发明专利技术提高了数据获取效率,数据上载更稳定。

【技术实现步骤摘要】
一种层次节点数据的查询方法
本专利技术属于电力领域,具体地说是针对层次节点的大数据量查询的一种层次节点数据的查询方法。
技术介绍
SAPERP系统是德国SAP公司开发的一套企业管理软件,该系统拥有完善的企业日常管理的各个应用,通过配置可以实现各个应用之间数据的无缝集成。企业数据展示平台经常需要从SAPERP系统中提取相应的数据进行日常分析,现有技术是直接通过RFC函数向第三方提供数据,主要的缺点是对大数据量传输速度比较慢,处理复杂逻辑比较困难,很多查询分析由于用户得不到有效的响应时间而不得不放弃,对企业的信息化建设是个不小的打击。影响数据读取的环节主要是在层次节点的递归调用时比较慢,制约了数据的获取,但是在层次结构上取数,对每个节点的层级判读又是不可避免的,需要一种更好的实施方法来处理这种问题。
技术实现思路
为了克服现有技术存在的问题,本专利技术的目的是提供一种层次节点数据的查询方法,该方法在继承传统的RFC函数的基础上融合MDX语句、BWETL数据抽取于一体,通过运行BW(BusinessDatawarehouse企业数据仓库)报表来获取层次节点的数据,效率高;在整个查询过程中通过取数环节的优化,来缩短节点查询的总体时间;用MDX(Multi-DimensionalExpressions多维表达式语言)语句实时获取报表运行出来的结果到内表,作为查询的条件参数来使用;BWETL工具实现与ERP(EnterprisesResourcesPlanning企业资源计划)系统的无缝连接,数据上载更稳定。本专利技术的目的是通过以下技术方案来实现的:一种层次节点数据的查询方法,其特征在于:该方法融合MDX语句、BWETL数据抽取和RFC远程函数调用于一体,实现层次节点数据的查询,具体步骤如下:1)层级节点输入,在数据检索平台上输入查询的节点(可以输入任意层级的节点);2)权限检查,对输入的节点及使用的人员作权限的校验;3)参数传递,如果校验通过,传递参数给函数,进行具体的取数操作;4)执行节点报表,函数接收到参数以后,根据参数调用BWQUERY节点报表;如果报表运行出来没有数据,则返回查询平台,本次查询无数据;5)调用MDX语句,对输入节点有数据的,则调用MDX语句,把报表运行的结果传递到函数的内表中,作为查询的参数保留;6)返回结果,根据节点参数和函数的限制条件从DSO模型中读取数据,返回结果到数据检索平台,得到层次节点数据。本专利技术步骤2)中,根据数据搜索平台界面的输入,调用RFC函数(远程函数调用)把参数传递到BW系统。步骤5)中,如果有子节点,则调用MDX语句,把报表运行出的结果保存到函数的内表中,作为查询的参数保留。本专利技术能处理复杂的逻辑,通用性好,不局限于具体的某个查询,只要是在SAP系统中涉及层次节点的查询都可以使用,通过第三方抽取数据,在传输数据的过程中不影响业务系统的使用。本方法是在传统的RFC(RemoteFunctionCall)远程函数调用基础上,引入MDX(Multi-DimensionalExpressions)多维表达式语言技术,利用MDX技术能动态的获取SAPBW(BusinessDatawarehouse)报表的数据,报表在查询多层次节点数据的时候相对于ABAP程序来说是有很大优势的。通过在节点查询的过程中运用高效的查询处理方法,优化了取数流程,做到了服务器的负载均衡和函数调用响应速度的平衡,特别是应对大数据量的层级节点数据的查询,平均的查询响应时间能缩短至少2倍以上。本专利技术融入MDX技术到传统RFC函数应用中,传统的MDX技术与RFC函数取数技术都是单独使用的,本专利技术将MDX技术与RFC函数取数技术在结合一起实施,简化了开发的流程,提高了数据获取效率。在整个查询过程中通过取数环节的优化,来缩短节点查询的总体时间;BWETL工具实现与ERP系统的无缝连接,数据上载更稳定。附图说明图1是本专利技术的流程图。具体实施方式本方法融合MDX语句、BWETL数据抽取和RFC远程函数调用于一体。现在要查询某组织架构节点编号为13000001下面的所有人员信息。详细的步骤如下:第一步:查询用户在的数据搜索平台上输入需要查询的人员节点,本例中输入13000001节点;第二步:根据数据搜索平台界面的输入,调用RFC(远程函数调用)函数把参数传递到BW(企业数据仓库)系统;第三步:BW根据接收到的13000001节点相应的参数调用取数函数;第四步:取数函数调用QUERYDESIGNER开发的人员节点报表,运行出该节点下的所有子节点;第五步:如果显示节点无子节点,则直接返回结果,无数据;如果有子节点,则调用MDX语句,把报表运行出的结果保存到函数的内表中,作为查询的参数保留。在查询中首次引入MDX语句的技术;传统的方法是通过函数直接读取,不使用MDX技术。第六步:根据子节点参数和函数的限制条件从BW中的DSO(DataStorageObject数据存储对象)模型中读取数据,返回13000001节点下面的人员信息到数据搜索平台。对本实施方法做验证。从对节点的读取时间来说,如果数量级在2w个左右的节点,运行报表读取层级节点的时间需要5、6秒钟左右就能出结果,但是通过ABAP(SAP公司开发的一种面向对象的程序开发语言)程序递归读取数据,需要至少花费30秒以上。在改进的RFC函数中融合了MDX语句的相关技术,通过MDX来获取报表运行的实时数据,在保证数据的正确的前提下,降低了函数取数逻辑的复杂性,节省了大量的运行时间,同时减少了数据读取的冗余度,使数据的运行和传递更加快捷,真正做到缩短系统查询的响应时间,提高了客户的满意度。本文档来自技高网...
一种层次节点数据的查询方法

【技术保护点】
一种层次节点数据的查询方法,其特征在于:该方法融合MDX语句、BW?ETL数据抽取和RFC远程函数调用于一体,实现层次节点数据的查询,具体步骤如下:1)层级节点输入,在数据检索平台上输入查询的节点;2)权限检查,对输入的节点及使用的人员作权限的校验;3)参数传递,如果校验通过,传递参数给函数,进行具体的取数操作;?4)执行节点报表,函数接收到参数以后,根据参数调用BW?QUERY节点报表;如果报表运行出来没有数据,则返回查询平台,本次查询无数据;5)调用MDX语句,对输入节点有数据的,则调用MDX语句,把报表运行的结果传递到函数的内表中,作为查询的参数保留;6)返回结果,根据节点参数和函数的限制条件从DSO模型中读取数据,返回结果到数据检索平台,得到层次节点数据。

【技术特征摘要】
1.一种层次节点数据的查询方法,其特征在于:该方法融合MDX语句、BWETL数据抽取和RFC远程函数调用于一体,实现层次节点数据的查询,具体步骤如下:1)层级节点输入,在数据检索平台上输入查询的节点;2)权限检查,对输入的节点及使用的人员作权限的校验;根据数据搜索平台界面的输入,调用RFC函数把参数传递到BW系统;3)参数传递,如果校验通过,传递参数给函数,进行具体的取数操作;4)执行节点报表,函数接收到参数...

【专利技术属性】
技术研发人员:方泉陈武曾锃
申请(专利权)人:国家电网公司江苏省电力公司江苏电力信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1