首页 > 其他分享 >关于 SAP UI5 ODataModel.createEntry 返回的 context 对象

关于 SAP UI5 ODataModel.createEntry 返回的 context 对象

时间:2022-10-03 23:34:13浏览次数:54  
标签:API created 创建 entity createEntry UI5 context 上下文

在返回的上下文中使用创建的 API 返回的 Promise 对象,以便在持久化或重置时获得通知。使用 isTransient API,您可以确定创建的上下文是 transient 的还是持久的;请注意,对于尚未在客户端创建但已从后端读取的上下文,API 返回 undefined。

Transient 上下文通常用于绑定表单或弹出窗口,以便最终用户可以查看或修改已创建条目的数据,然后再将其持久化到后端。上下文的数据根据​​创建请求成功的响应进行更新。请注意,Transient 上下文的路径包含客户端生成的 UID 作为临时键谓词,例如产品集('id-1641815139894-99')。在应用程序编码中使用此路径时要小心,因为一旦上下文被持久化,它就会变得无效;然后上下文根据持久实体的规范 URL 更改其路径,例如到产品集('4711')。

下面的所有实体创建示例都假设模型以批处理模式运行,即使用 useBatch = true 构建。

看个具体的例子:

// create an entry in the Products collection with the specified properties and values as initial data
var oContext = oModel.createEntry("/ProductSet", {
    properties : {Name : "Laptop X", Description:"New Laptop", Price:"1000", CurrencyCode : "USD"}
});
// bind a form against the transient context for the newly created entity
oForm.setBindingContext(oContext);
 
// submit the changes: creates entity in the back end
oModel.submitChanges({success: mySuccessHandler, error: myErrorHandler});
// handle successful creation or reset
oContext.created().then(
  function () { /* successful creation */ },
  function () { /* deletion of the created entity before it is persisted */ }
);
 
// delete the created entity by resetting the corresponding change
oModel.resetChanges([oContext.getPath()], undefined, /*bDeleteCreatedEntities*/true);

createEntry 方法采用可选的 refreshAfterChange 参数,该参数确定在后端创建成功后是否刷新所有受影响的绑定。

此参数用于在创建后更新与新实体的列表绑定,使其显示在绑定的表控件中。

在需要进行此类更新的情况下,我们建议使用下面描述的 ODataListBinding#create API 而不是 ODataModel#createEntry。

标签:API,created,创建,entity,createEntry,UI5,context,上下文
From: https://www.cnblogs.com/sap-jerry/p/16751574.html

相关文章

  • SAP UI5 OData 模型(V2) 的使用方法介绍
    OData模型是服务器端模型,这意味着数据集仅在服务器上可用,客户端即SAPUI5应用只知道当前可见(请求)的数据。排序和过滤等操作在服务器上完成,然后将处理结果返回给客户端......
  • SAP UI5 SmartForm 使用技巧介绍
    sap.ui.comp.smartform.SmartForm控件使呈现表单成为可能。根据用户授权,表单使用户能够从显示模式切换到编辑模式、添加和分组字段、重命名字段标签以及实施用户输入检查......
  • 如何使用 SAP UI5 V2 ODataModel 模型 API 实现 deepCreate 的场景以及局限性
    如果开发人员期望在持久化时请求已创建条目的导航属性(navigationproperty),请使用可选的expand参数在与实体创建的POST请求相同的批处理请求中有效地执行此操作。可......
  • SAP UI5 sap.ui.Device.media 的使用介绍
    sap.ui.Device.media是一个命名空间,属于sap/ui/Device.该API属于屏幕宽度更改的事件API。此API基于媒体查询,但如果使用的浏览器本身不支持媒体查询,也可以使用此A......
  • SAP UI5 sap.ui.Device.media 公有方法介绍
    sap.ui.Device.media.attachHandler:注册给定的事件处理程序以根据使用指定名称设置的范围更改屏幕宽度的事件。每当屏幕宽度发生变化并且当前屏幕宽度处于与宽度变化之......
  • SAP UI5 sap.ui.Device.media.RANGESETS 的使用介绍
    这是一个namespace,来自sap.ui.core:包含预定义屏幕宽度媒体查询范围集(mediaqueryrangesets)的名称和设置的枚举。在Chrome开发者工具Console面板里能够查看到所......
  • SAP UI5 sap.ui.Device.media.RANGESETS.SAP_STANDARD_EXTENDED 介绍
    这是一个4步范围集(Phone,Tablet,Desktop,LargeDesktop)。这组的范围是:phone:适用于小于600像素的屏幕。tablet:适用于大于或等于600像素且小于1024像素的屏幕......
  • 关于 SAP UI5 Web Components
    SAPUI5WebComponents是UI5Evolution项目的关键支柱,以实现UI5的UI元素的轻量级和独立消费。顾名思义,它们是使用Web组件标准构建的。Web组件适用于所有主流浏......
  • 清除浮动前序--BFC(Box Formatting Context)
    BFC规范BFC(BoxFormattingContext,块级格式上下文)是页面上的一个隔离的独立容器一个盒子如果不设置高度,当子元素浮动时,无法撑起自身,就会造成父元素高度塌陷,原因是......
  • ContextCapture中的模型航拍方法和技巧
    在进行实景建模之前,获取被拍摄物体的照片是很重要的一项工作,因为如果没有按照规则拍摄或者拍摄相片质量不佳,将会直接影响我们后期建模,甚至无法建模。我们建议使用ContextC......