oData V4创建实体

2020-09-08 05:55发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 如何在没有现有ListB...

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

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


嗨,

如何在没有现有ListBinding的情况下使用oData V4模型创建新实体?

我有一个SimpleForm,想根据输入的信息创建一个新实体。

所以我尝试手动创建ListBinding,因为这似乎是通过create()方法创建新的enitty的唯一方法。

 var oListBinding = oModel.bindList("/img/Templates");
 var oContext = oListBinding
     .create({" id":" 1"}); 

但是什么都没有发送到后端。

我在做什么错了?

我发现的所有示例都是基于控件被绑定并使用了这样的语法

 var oListBinding = this.getView()。byId(" mainmenulist")。getBinding(" items");
 var oContext = oListBinding
     .create(oMainMenuItem);
 

谢谢

4条回答
DafaDDDa
2020-09-08 06:34

Mathias,您好

谢谢,我现在可以使用它了,添加实体效果很好。

但是不幸的是,由于错误部分从未执行,因此我无法处理潜在的错误。

 var oListBinding = oModel.bindList("/img/Templates",undefined,undefined,undefined,{$$ updateGroupId:" AddTemplate"});
             var oContext = oListBinding
                 。创造({
                     " global_tool_id":odd_tools.getSelectedKey(),
                     " template_name":otxt_template_name.getValue()
                 });

             oContext.created()。then(
                 函数(){
                     MessageBox.alert(oView.getModel(" i18n")。getResourceBundle()。getText('AddTemplateSuccessMessage')+''oContext.getProperty(" id")+"。",{
                         图标:MessageBox.Icon.SUCCESS,
                         标题:oView.getModel(" i18n")。getResourceBundle()。getText('Success')
                     });
                 },函数(oError){
                     console.log(" oError");
                     console.log(oError);
                     MessageBox.alert(oView.getModel(" i18n")。getResourceBundle()。getText(oError.message),{
                         图标:MessageBox.Icon.ERROR,
                         标题:oView.getModel(" i18n")。getResourceBundle()。getText('Error')
                     });
                 });
             oModel.submitBatch(" AddTemplate")。then(resetBusy,resetBusy); 

一周热门 更多>