管理OfflineODataDefiningQuery的生命周期

2020-08-26 14:37发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)您好,有关OfflineODat...

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

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


您好,有关OfflineODataDefiningQuery的快速问题。

您如何在离线应用中管理它的生命周期?

OfflineODataProvider具有"添加和删除"定义查询,但是没有API可以获取已经定义的内容。

请求的API:GetDefiningQueries()

示例:用户登录到您的应用,并根据用户角色或位置(您将根据其位置定义其他DQ),这需要初始DQ才能读取User实体..

如果有一天,用户从一个位置转到另一个位置,则由于不再需要该定义查询,因此您需要删除该查询。

我可以轻松地将DQ保存为用户默认设置,但这不是最新技术

让我知道是否有更好的解决方案,否则我会将事件记录到SAP以公开此API

谢谢

4条回答
clasier
2020-08-26 15:15

有一个API可转储定义查询:logDefiningQueries,对您有帮助吗?

API帮助:转储定义查询(作为JSON对象),这些查询已添加到脱机存储中以进行记录。

定义查询随时都不容易删除。

任何定义查询都可以在首次下载之前安全删除。

只能在首次打开OfflineODataProvider之前删除类型1和2的定义查询。

可以在打开OfflineODataProvider之前或之后删除类型3的定义查询。

类型1-一种定义性查询,用于标识一个或多个实体,其中{@ linkOfflineODataDefiningQuery#isAutomaticallyRetrievesStreams()automaticRetrievesStreams}属性设置为false。 在这种情况下,即使定义查询标识了媒体实体,也不会下载媒体流。

类型2-一种定义性查询,用于标识一个或多个实体,其中某些实体可能是媒体实体,并且其中{@ linkOfflineODataDefiningQuery#isAutomaticallyRetrievesStreams()automaticRetrievesStreams}属性设置为true。 在这种情况下,媒体实体的媒体流也将被下载。

类型3-标识单个媒体实体的定义查询,并且{@ linkOfflineODataDefiningQuery#isAutomaticallyRetrievesStreams()automaticRetrievesStreams}属性设置为true。 在这种情况下指定的URL必须是媒体实体的读取链接,而不是媒体流的读取链接。 例如,如果媒体实体的读取链接为Documents(101),而媒体流的读取链接为Documents(101)/$ value,则定义查询的预期URL为Documents(101)。

当用户更改为新职位时,您可能需要清除存储并重新打开。

一周热门 更多>