使用RESTful Web服务更改Webi报表的数据提供者SAP BI 4.1 SP08

2020-09-16 09:39发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我已按照博客更改了Webi报告的数据提供者(Universe), 能够更改没有任何提示的webi报告的数据提供者(Universe)。

相同的代码也适用于FHSQL报表,并且我能够更新/更改FHSQL数据提供程序。

当我尝试更改具有提示的webi报告的范围时,该报告对我不起作用。

它给我的输出为 200 OK ,并给我一条消息,为"数据提供者已成功更新。"

但是当我通过 CMC->检查关系检查报告时,它仍然指向旧版本。

我尝试按照以下工作流程进行操作,以使其在具有提示的Webi报告中起作用:

-生成登录令牌。

-获取Webi报告的数据提供者列表。

-获取数据提供者的映射。

-更改数据提供者。

-使用和不使用参数刷新报告。

-保存报告。

Webi报告的输出1,无任何提示:

================================================ ===================//作者: swapnil.yavalkar@hotmail.com ////==============================================

======================正在启动CMS连接。

报告ID: 20971

数据提供者: {" dataSourceId":20994," name":"试用余额"," id":" DP15"," dataSourceType":" unx"}

响应用于更新数据提供者:

{protocol = http/1.1,code = 200,message = OK,url = http://10.1.10.183:6405/biprws/raylight/v1/documents/20971/dataproviders/mappings?originDataproviderIds =DP15⌖DatasourceId= 43914}

刷新的参数:

{protocol = http/1.1,code = 200,message = OK,url = http://10.1.10.183:6405/biprws/raylight/v1/documents/20971/parameters}

文档已保存:

<?xml版本=" 1.0"编码=" UTF-8" standalone =" yes"?> <成功> <消息>标识符为" 20971"的"文档"类型的资源已成功更新。 20971

带有提示的Webi报告的输出2:

报告ID: 20971

数据提供者: {" dataSourceId":20994," name":"运营商代码"," id":" DP16"," dataSourceType":" unx"}

响应用于更新数据提供者:

{protocol = http/1.1,code = 200,message = OK,url = http://10.1.10.183:6405/biprws/raylight/v1/documents/20971/dataproviders/mappings ?originDataproviderIds =DP16⌖DatasourceId= 43914}

刷新的参数:

{protocol = http/1.1,code = 200,message = OK,url = http://10.1.10.183:6405/biprws/raylight/v1/documents/20971/parameters}

文档已保存:

<?xml版本=" 1.0"编码=" UTF-8" standalone =" yes"?> <成功> <消息>标识符为" 20971"的"文档"类型的资源已成功更新。 20971

输出2成功,但报告仍指向旧的宇宙。

我已经尝试了所有可能的方法来使带参数的webi报表正常工作,但是它不起作用。 请让我知道我是否在这里缺少任何东西以及如何使它工作。

非常感谢。

此致

Swapnil Yavalkar

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我已按照博客更改了Webi报告的数据提供者(Universe), 能够更改没有任何提示的webi报告的数据提供者(Universe)。

相同的代码也适用于FHSQL报表,并且我能够更新/更改FHSQL数据提供程序。

当我尝试更改具有提示的webi报告的范围时,该报告对我不起作用。

它给我的输出为 200 OK ,并给我一条消息,为"数据提供者已成功更新。"

但是当我通过 CMC->检查关系检查报告时,它仍然指向旧版本。

我尝试按照以下工作流程进行操作,以使其在具有提示的Webi报告中起作用:

-生成登录令牌。

-获取Webi报告的数据提供者列表。

-获取数据提供者的映射。

-更改数据提供者。

-使用和不使用参数刷新报告。

-保存报告。

Webi报告的输出1,无任何提示:

================================================ ===================//作者: swapnil.yavalkar@hotmail.com ////==============================================

======================正在启动CMS连接。

报告ID: 20971

数据提供者: {" dataSourceId":20994," name":"试用余额"," id":" DP15"," dataSourceType":" unx"}

响应用于更新数据提供者:

{protocol = http/1.1,code = 200,message = OK,url = http://10.1.10.183:6405/biprws/raylight/v1/documents/20971/dataproviders/mappings?originDataproviderIds =DP15⌖DatasourceId= 43914}

刷新的参数:

{protocol = http/1.1,code = 200,message = OK,url = http://10.1.10.183:6405/biprws/raylight/v1/documents/20971/parameters}

文档已保存:

<?xml版本=" 1.0"编码=" UTF-8" standalone =" yes"?> <成功> <消息>标识符为" 20971"的"文档"类型的资源已成功更新。 20971

带有提示的Webi报告的输出2:

报告ID: 20971

数据提供者: {" dataSourceId":20994," name":"运营商代码"," id":" DP16"," dataSourceType":" unx"}

响应用于更新数据提供者:

{protocol = http/1.1,code = 200,message = OK,url = http://10.1.10.183:6405/biprws/raylight/v1/documents/20971/dataproviders/mappings ?originDataproviderIds =DP16⌖DatasourceId= 43914}

刷新的参数:

{protocol = http/1.1,code = 200,message = OK,url = http://10.1.10.183:6405/biprws/raylight/v1/documents/20971/parameters}

文档已保存:

<?xml版本=" 1.0"编码=" UTF-8" standalone =" yes"?> <成功> <消息>标识符为" 20971"的"文档"类型的资源已成功更新。 20971

输出2成功,但报告仍指向旧的宇宙。

我已经尝试了所有可能的方法来使带参数的webi报表正常工作,但是它不起作用。 请让我知道我是否在这里缺少任何东西以及如何使它工作。

非常感谢。

此致

Swapnil Yavalkar

2条回答
Nan4612
1楼-- · 2020-09-16 10:14

您好Swapnil,

从上述工作流程中,您正在修改文档,但没有将其保存回CMS存储库。
所做的更改仅保留在文档的缓存副本中。

要将更改保存回CMS,请使用:

PUT/raylight/v1/documents/不带正文这将更新CMS中的文档,并使缓存的副本在内存中保持打开状态 。

如果您使用的PUT主体类似于:

未使用

这会将文档保存到CMS并从内存中卸载文档(在处理服务器上将其关闭)。

有关保存文档的详细信息,请参阅" 8.1节"中的生命周期API。 .9更新以下帮助文件的文档状态: https://help.sap.com/http.svc/rc/1eeee826c0154c62a5cbd29359ecbc18/4.2.5/en-US/sbo42sp5_webi_restws_dg_en.pdf


Dan

我是小鹏鹏啊
2楼-- · 2020-09-16 10:05

我的下一步是下载并使用Fiddler来收集REST调用及其响应,以便可以看到整个工作流程,并获得SAP支持。 如果您没有在fiddler中看到其余的调用,则只需向使用localhost:8888(Fiddler的监听端口)的应用程序添加代理,请执行以下示例,该示例演示如何在" If(enableFiddler ){...}" : https://blogs.sap.com/2013/09/13/export-webi-report-using-the-restful-sdk /

一周热门 更多>