UWP离线OData-实体状态

2020-09-16 08:23发布

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

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


嗨,

我正在使用SMP 3.1 SDK为UWP平台开发基于脱机OData的应用程序。

我能够从SAP后端下载数据并创建新数据并可以提交。

创建实体的新实例并保存后,我想知道如何检查该实体的状态。 我怎么知道此实体仅在本地创建或已提交到后端? 我假设没有通过执行一些逻辑来确定对象的键是否具有特定值。

客户端上的请求数据库已将请求存储在状态为1(已创建?)的表LODATA_SYS_REQUEST_QUEUE中,但是我无法在Offline Data SDK中找到任何可以让我返回此状态的方法或属性。 我可以找到有关这些状态及其含义的任何文档。

亲切的问候,

迈克

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

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


嗨,

我正在使用SMP 3.1 SDK为UWP平台开发基于脱机OData的应用程序。

我能够从SAP后端下载数据并创建新数据并可以提交。

创建实体的新实例并保存后,我想知道如何检查该实体的状态。 我怎么知道此实体仅在本地创建或已提交到后端? 我假设没有通过执行一些逻辑来确定对象的键是否具有特定值。

客户端上的请求数据库已将请求存储在状态为1(已创建?)的表LODATA_SYS_REQUEST_QUEUE中,但是我无法在Offline Data SDK中找到任何可以让我返回此状态的方法或属性。 我可以找到有关这些状态及其含义的任何文档。

亲切的问候,

迈克

付费偷看设置
发送
1条回答
哎,真难
1楼 · 2020-09-16 08:50.采纳回答

嗨,迈克,

根据您在应用程序(混合,本机)中使用的客户端技术,访问此信息有些不同。

通常,您可以对脱机存储区使用$ filter = sap.islocal()创建具有所有本地修改的查询。

此外,脱机存储中的所有实体都带有附加的元数据信息。 在混合应用程序中,您可以按以下方式访问这些信息:

 function applyColor(data,row){
                 如果(data [" @ com.sap.vocabularies.Offline.v1.isLocal"]){
                     row.style.color ="绿色";
                 }
                 如果(data [" @ com.sap.vocabularies.Offline.v1.inErrorState"]){
                     row.style.color ="红色";
                 }
                 如果(data [" @ com.sap.vocabularies.Offline.v1.isDeleteError"]){
                     row.style.color ="橙色";
                 }
             } 

这是针对Windows的:

private const String IS_LOCAL_ANNOTATION =" islocal";

private const String OFFLINE_VOCABULARY_NAMESPACE =" com.sap.vocabularies.Offline.v1";

字符串isLocal = entity.GetAnnotation(new ODataAnnotationName(IS_LOCAL_ANNOTATION,OFFLINE_VOCABULARY_NAMESPACE))


资源:

https ://blogs.sap.com/2017/01/24/getting-started-with-kapsel-part-10-offline-odatasp13/#offline

https://help。 sap.com/viewer/42dc90f1e1ed45d9aafad60c80646d10/3.1.1/zh-CN/6217bddd03e740f2bab86344f9d27b4c.html?q=isLocal

此致

马丁

一周热门 更多>