'PERCENT_RANK'在Business Objects 4.2中不是公认的内置函数名称。

问题描述:

我使用BO 4.2 + SQL Server 2008进行报告。报告的设计模式允许使用包含百分比排名的查询过滤器中的数据排名。对于百分比排名,BO在SQL Server中调用PERCENT_RANK()函数。它显示错误消息“PERCENT_RANK”不是一个公认的内置函数名称。 我知道这个函数是在SQL Server 2012中引入的。我的第一个问题是 - 为什么BO Designer允许添加百分比级别的查询,并且该按钮没有被禁用/隐藏在SQL Server 2008中工作?第二个问题是 - 怎样禁用/隐藏这个按钮?'PERCENT_RANK'在Business Objects 4.2中不是公认的内置函数名称。

p.s.您可以通过以下方式找到此按钮: - >设计报告 - >编辑数据提供者 - >查询过滤器面板 - >添加数据库排名 - >设置'%top'(请参阅屏幕)
pps使用BO 3.1此按钮已禁用在我的情况下,这是可以的,但我需要修复它的BO 4.2。

enter image description here

谢谢

+0

也许是因为程序员不认为任何人会仍然在使用的软件,过时的和没我不想花时间去编程。开发人员通常不会向后兼容。然而,问一般的世界为什么一些特定的程序员是毫无意义的练习。该软件能够正常工作,我们无法改变,也不能。 – HLGEM

+2

我投票结束和删除这个问题作为题外话,因为它不应答,是一个毫无意义的问题。 – HLGEM

+2

我不这么认为,也不同意你的看法,因为我知道SAP现在仍然支持SQL Server 2008。让我找到官方信息。无论如何,我想知道其他意见和答案。谢谢。 –

SAP支持:

1)Tested the scenario in-house on 4.2 SP3 Patch3 by doing the following steps

-Created a report based on SQL SERVER 2008 R2 Universe.

-Take some objects in result pane .

-Now in the Query Filter Pane ,click on database tracking ->select % Top option ->Select objects.

-run the report.

-Error thrown is exactly the same which you are getting "The following database error occurred: [Microsoft SQL Server Native Client 10.0] : 'PERCENT_RANK' is not a recognized built-in function name. For information about this error, please refer to SAP Knowledge Base Article 2054721 on the SAP Support Portal. (IES 10901) (Error: INF)” "

2)Now tested the same above scenario by creating a report on SQL SERVER 2012 Universe and it worked fine.

3)The reason being is the SQL SERVER 2008 R2 is not able to recognize the percent_rank function as the this functionality was introduced by Microsoft on SQL SERVER 2012.

Information about this is provided in the below link

https://docs.microsoft.com/en-us/sql/t-sql/functions/percent-rank-transact-sql

4)Also now coming to disabling the option. Now if you don't want to see the %TOP option use Applet mode or Rich Client instead of HTML mode .

As this option is by default in HTML mode .

:d