向表添加内容,该表通过OData绑定到关联

2020-09-12 09:42发布

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

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


大家好,

我有一个表(m.table),该表已经绑定到OData-Model,更确切地说是绑定到关联" RequestToAttachment",因为它表示某些特殊请求(主细节)的附件。

现在,我想添加另一个附件,但不要立即将其发布到后端,因为它应该与其他信息一起提交。 我知道我应该在这种情况下使用createEntry()。 我是对的吗?

所以它应该看起来像这样:

 oModel.createEntry("/img/AttachmentSet",{属性:{ContentSize:" 200 kb",说明:" New Upload",DocID:" 23",DocumentName:" NewPicture.PNG",Mimetype:" image/png  "},
RequestToAttachment:{__元数据:{uri:"/img/RequestsSet(ID ='2'"}}}},{方法:" POST",成功:函数(数据){},错误:函数(响应) {}});

对不起,我不习惯这里的格式。

它不会引发错误,但表未更新。 我已经尝试过model.refresh(true)并再次设置BindingContext。

它是如何工作的,还是我应该采取其他方法? 也许只是在添加表之前为表设置一个新的(JSON)模型?

亲切问候

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

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


大家好,

我有一个表(m.table),该表已经绑定到OData-Model,更确切地说是绑定到关联" RequestToAttachment",因为它表示某些特殊请求(主细节)的附件。

现在,我想添加另一个附件,但不要立即将其发布到后端,因为它应该与其他信息一起提交。 我知道我应该在这种情况下使用createEntry()。 我是对的吗?

所以它应该看起来像这样:

 oModel.createEntry("/img/AttachmentSet",{属性:{ContentSize:" 200 kb",说明:" New Upload",DocID:" 23",DocumentName:" NewPicture.PNG",Mimetype:" image/png  "},
RequestToAttachment:{__元数据:{uri:"/img/RequestsSet(ID ='2'"}}}},{方法:" POST",成功:函数(数据){},错误:函数(响应) {}});

对不起,我不习惯这里的格式。

它不会引发错误,但表未更新。 我已经尝试过model.refresh(true)并再次设置BindingContext。

它是如何工作的,还是我应该采取其他方法? 也许只是在添加表之前为表设置一个新的(JSON)模型?

亲切问候

付费偷看设置
发送
5条回答
代楠1984
1楼-- · 2020-09-12 10:01

嗨,曼努埃尔,我有一个问题要问:您的桌子是如何被绑起来的? 到哪个oData路径? 因为要正确刷新它,所以应该将其绑定到"/附件"

Violet凡
2楼-- · 2020-09-12 10:11

HI Emanuele,

感谢您的回答。

不。 那是我不完全了解的事情。 我必须将其绑定到" RequestToAttachment",否则初始加载不会获得任何条目。 由于OData服务已经为该请求提供了一个附件,因此我在表中得到一个条目。

结果,我想我应该createEntry('RequestToAttachment'..)? 我已经尝试过了,但是它仍然没有更新我的表。 是否需要任何进一步的步骤(再次绑定,..)? 刷新我已经尝试过了。

3楼-- · 2020-09-12 10:08

您应该将其绑定到完整路径。 您必须考虑OData,就像基于RESTful请求的协议一样,该协议为REST添加了许多很酷的功能。 因此,就您而言,如果这些附件属于特定请求,则应为"/img/RequestSet('ID_OF_THE_REQUEST")/RequestToAttachment"创建条目。

何必丶何苦呢
4楼-- · 2020-09-12 10:27

嗨,曼努埃尔,我正在做些假设,您可以 共享您的Controller/View代码的代码?

能不能别闹
5楼-- · 2020-09-12 10:23

您好,
如果Fileuploader的上传完成,则将Controllers中的代码放置在事件中,该事件将被调用。

如果我正确地获得了您的描述,则代码如下所示:

 var model = this.getView()。getModel();
 model.createEntry("/img/RequestsSet('ID_OF_THE_REQUEST')/RequestToAttachment",{
 属性:{ContentSize:" 200 kb",描述:" New Upload",DocID:" 23",DocumentName:" NewPicture.PNG",Mimetype:" image/png"},
     RequestToAttachment:{__元数据:{uri:"/img/RequestsSet('ID_OF_THE_REQUEST')"}}
 },{
 方法:" POST",
 成功:function(data){},
 错误:功能(响应){}
 });
 

"视图"中的表如下所示是绑定表:

 <表id =" tableForAttachments" updateFinished =" onUpdateFinishedAttachments" items =" {/RequestsSet('ID_OF_THE_REQUEST')/RequestToAttachment}" noDataText =" {i18n> tableForAttachmentsNoData}">
 

一周热门 更多>