在ODataV2模型中可以通过三种不同的方式创建新实体。最合适的方法取决于应用程序用例。对于所有的方法,对应的API都是使用一个groupId来指定一个batchgroup来控制创建实体的POST请求何时发送到后端;默认情况下,使用延迟批组更改。方法一:ODataModel.createEntryODataModel。createEntry创建一个条目并返回其对应的上下文。在以下情况下使用此方法:存在最终用户可以在其中查看和修改新条目数据的表单或弹出窗口,但不需要在表中显示此新创建的数据。这是因为如果需要在表格中展示,我们直接使用本教程介绍的方法新建数据比较合理:SAPUI5应用开发教程六十五-如何创建、编辑和保存基于ODataV4Function的SAPUI5tablecontrol想要创建一个entry而不显示在UI上。此方法采用要创建的实体集的路径和可选的初始属性来创建条目;properties参数中使用的路径和属性名称都必须存在于OData服务的元数据定义中。在创建初始数据作为模型中通过getObject检索的现有数据对象的副本时要小心:需要从副本中删除__metadata属性,因为它不能在创建请求的有效负载中发送。此方法返回的上下文是暂时的。这意味着相应的实体只存在于客户端,直到它被持久化(对于延迟批处理组,使用submitChangesAPI),从而将其状态更改为持久化,或者使用resetChangesAPI将其删除。请注意,当在submitChanges上发送的创建请求失败时,它会在下次调用submitChanges时自动重试,然后可能会成功,例如因为添加了一个缺失的属性。
