更新OData失败SAPUI5

2020-09-29 22:33发布

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

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


你好!

我在更新功能上遇到了一些问题。 在OData Service中,一切正常,没有问题。 我测试过了 因此,问题出在Form的Frontend中。

我可以第一次进行更新,但是第二次程序会说明此问题。

如果我更新页面,则可以再次更新OData,但只能更新一次。

我不明白为什么我的程序会说输入字段的重复ID ...

有我的更新功能代码

 onUpdate:function(){
 var inputFragment = sap.ui.xmlfragment(
 " Z_MOBILE.view.AddFragment",
 this.getView()。getController()


 );


 var Zeile1 = this.byId(" Row1")。getValue();
 var ID1 = this.byId(" ID")。getValue();
 var Activity = this.byId(" Activity")。getValue();
 var Level = this.byId(" Level")。getValue();
 var Plot = this.byId(" Plot")。getValue();
 var Area = this.byId(" Area")。getValue();
 var Description = this.byId(" Description")。getValue();
 var ZzStartmonth = this.byId(" ZzStartmonth")。getValue();
 var ZzActivitymonth = this.byId(" ZzActivitymonth")。getValue();
 var ZzMinutetotal = this.byId(" ZzMinutetotal")。getValue();
 var ZzMinutebase = this.byId(" ZzMinutebase")。getValue();
 var Itground = this.byId(" Itground")。getValue();
 vareration = this.byId(" Iteration")。getValue();
 var oModel = this.getView()。getModel();


 var data = {
 ZzID:ID1,
 ZzActivity:活动,
 ZzLevel:级别,
 ZzPlot:图,
 ZzArea:区域,
 ZzDescription:说明,
 ZzStartmonth:ZzStartmonth,
 ZzActivitymonth:ZzActivitymonth,
 ZzMinutetotal:ZzMinutetotal,
 ZzMinutebase:ZzMinutebase,
 ZzIteration:迭代,
 ZzGroundarea:Itground


 };


 var dialog = new sap.m.Dialog({
 标题:"确认",
 类型:"消息",
 内容:新sap.m.Text({
 文字:" Wollen Sie die Datenändern?"
 }),


 beginButton:新的sap.m.Button({
 文字:"提交",
 按下:function(){


 oModel.update(
 "/img/AllevoSat88Set(Zeile =" +"'" + Zeile1 +"'" +
 ",Version ='0',Pjahr ='2013',Coobject ='0000009999',Setclass ='0101',Kokrs ='1000',Mandt ='800')",数据,{
 合并:true
 }


 );
 sap.m.MessageToast.show('提交已按下!');
 dialog.close();
 }


 }),
 endButton:new sap.m.Button({
 文字:"取消",
 按下:function(){
 dialog.close();
 }
 }),
 afterClose:function(){
 dialog.destroy();
 }
 });


 dialog.open();


 }
 

(122.5 kB)

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

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


你好!

我在更新功能上遇到了一些问题。 在OData Service中,一切正常,没有问题。 我测试过了 因此,问题出在Form的Frontend中。

我可以第一次进行更新,但是第二次程序会说明此问题。

如果我更新页面,则可以再次更新OData,但只能更新一次。

我不明白为什么我的程序会说输入字段的重复ID ...

有我的更新功能代码

 onUpdate:function(){
 var inputFragment = sap.ui.xmlfragment(
 " Z_MOBILE.view.AddFragment",
 this.getView()。getController()


 );


 var Zeile1 = this.byId(" Row1")。getValue();
 var ID1 = this.byId(" ID")。getValue();
 var Activity = this.byId(" Activity")。getValue();
 var Level = this.byId(" Level")。getValue();
 var Plot = this.byId(" Plot")。getValue();
 var Area = this.byId(" Area")。getValue();
 var Description = this.byId(" Description")。getValue();
 var ZzStartmonth = this.byId(" ZzStartmonth")。getValue();
 var ZzActivitymonth = this.byId(" ZzActivitymonth")。getValue();
 var ZzMinutetotal = this.byId(" ZzMinutetotal")。getValue();
 var ZzMinutebase = this.byId(" ZzMinutebase")。getValue();
 var Itground = this.byId(" Itground")。getValue();
 vareration = this.byId(" Iteration")。getValue();
 var oModel = this.getView()。getModel();


 var data = {
 ZzID:ID1,
 ZzActivity:活动,
 ZzLevel:级别,
 ZzPlot:图,
 ZzArea:区域,
 ZzDescription:说明,
 ZzStartmonth:ZzStartmonth,
 ZzActivitymonth:ZzActivitymonth,
 ZzMinutetotal:ZzMinutetotal,
 ZzMinutebase:ZzMinutebase,
 ZzIteration:迭代,
 ZzGroundarea:Itground


 };


 var dialog = new sap.m.Dialog({
 标题:"确认",
 类型:"消息",
 内容:新sap.m.Text({
 文字:" Wollen Sie die Datenändern?"
 }),


 beginButton:新的sap.m.Button({
 文字:"提交",
 按下:function(){


 oModel.update(
 "/img/AllevoSat88Set(Zeile =" +"'" + Zeile1 +"'" +
 ",Version ='0',Pjahr ='2013',Coobject ='0000009999',Setclass ='0101',Kokrs ='1000',Mandt ='800')",数据,{
 合并:true
 }


 );
 sap.m.MessageToast.show('提交已按下!');
 dialog.close();
 }


 }),
 endButton:new sap.m.Button({
 文字:"取消",
 按下:function(){
 dialog.close();
 }
 }),
 afterClose:function(){
 dialog.destroy();
 }
 });


 dialog.open();


 }
 

(122.5 kB)
付费偷看设置
发送
4条回答
d56caomao
1楼-- · 2020-09-29 22:50

每当触发更新时,您都将实例化该片段。 因此,当您第二次单击"更新"时,较早的实例(在第一次更新时)仍然存在,因此不会由于重复的ID而导致新实例化失败。

为什么要在"更新"时实例化一个片段?

微wx笑
2楼-- · 2020-09-29 23:01

由于您的问题状态仍然无法回答,请标记您的Querry已解决。

SAP小菜
3楼-- · 2020-09-29 22:53

带有片段初始化的问题,如果不需要则将其删除,或者

将var声明为全局变量,并在其初始时为其分配片段,如下所示:

 this.inputFragment ="  "; //全局,可能在onInit函数中

 if(this.inputFragment ==""){
   这个。  inputFragment = sap.ui.xmlfragment(
                       " Z_MOBILE.view.AddFragment",
                       this.getView()。getController()
                       );
 } 

致谢,

Akhilesh

clever101
4楼-- · 2020-09-29 22:59

感谢您的帮助! 现在可以了!

一周热门 更多>