使用oData服务操作在sap.m.table中添加项目并删除

2020-08-22 06:38发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我试图读取输入字段数...

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

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


专家们,

我试图读取输入字段数据并添加到sap.m.table中。 我对下面的代码进行了更改,但是没有添加。

 XML代码:

 
控制器代码: addRow:函数(oArg){ var that = this; that.readTRNumber(); } readTRNumber:function(){ var that = this; var trNumber = that.getView()。byId(" trNumberInput")。getValue(); var url ="/img/sap/opu/odata/sap/ServiceName_SRV/"; var allfilters = [ 新的sap.ui.model.Filter({ 路径:" TR_PKG", 运算子:sap.ui.model.FilterOperator.EQ, 值1:" X" }), 新的sap.ui.model.Filter({ 路径:" ZZ_SEQNUMBER", 运算子:sap.ui.model.FilterOperator.EQ, 值1:" 1" }), 新的sap.ui.model.Filter({ 路径:" ZZ_TRANSPORTNBR", 运算子:sap.ui.model.FilterOperator.EQ, 值1:trNumber}) ]; var oModel = new sap.ui.model.odata.v2.ODataModel(url); sap.ui.getCore()。setModel(oModel); var oModelItems = that.getView()。byId(" __ table0")。getModel(); //var oModelTRDetails = new sap.ui.model.json.JSONModel(); oModel.metadataLoaded()。then(function(oSuccess){ oModel.read("/img/TRLISTSet",{ 过滤器:所有过滤器, 成功:函数(oData,oResponse){ lv_BusyDialog.close(); var data = oData; var seqNumber = data.results [0] .ZZ_SEQNUMBER; var transNumber = data.results [0] .ZZ_TRANSPORTNBR; var transDesc = data.results [0] .ZZ_TRANSPDESC; var qaApprover = data.results [0] .ZZ_QA_APPROVER; var qaDate = data.results [0] .ZZ_QA_DATE; var prdApprover = data.results [0] .ZZ_PRD_APPROVER; var prdDate = data.results [0] .ZZ_PRD_DATE; var prdTransDate = data.results [0] .ZZ_PRD_TRANS_DAT; var trPkg = data.results [0] .TR_PKG; var itemRow = { ZZ_SEQNUMBER:seqNumber, ZZ_TRANSPORTNBR:transNumber, ZZ_TRANSPDESC:transDesc, ZZ_QA_APPROVER:qaApprover, ZZ_QA_DATE:qaDate, ZZ_PRD_APPROVER:prdApprover, ZZ_PRD_DATE:prdDate, ZZ_PRD_TRANS_DAT:prdTransDate, TR_PKG:trPkg }; //var oModelItems = that.getView()。byId(" __ table0")。getModel(); var itemData = oModelItems.getProperty("/img/results"); itemData.push(itemRow); oModelItems.setData({ 结果:itemData }); //oModelItems.setData(itemData); //that.getView()。setModel(oModelItems," keyTransPort"); }, 错误:函数(oError){ //alert(" error"); } }); },函数(oError){ }); }
付费偷看设置
发送
7条回答
d56caomao
1楼-- · 2020-08-22 07:30

hi

在Addrow函数中

 this.getView()。getModel('modelname')。getProperty('/entitype')。push({/*新数据* /})
粗暴的香蕉
2楼-- · 2020-08-22 07:19

您是什么意思卡住了?

风早神人
3楼-- · 2020-08-22 07:16

您好,

如果将JSONModel用作表的模型,则可以像在附加代码中那样添加数据:

 var oModel = that.getView()。byId('__ table0')。getModel();
 var oData = oModel.getData();
 oData ['results']。push(itemRow);
 oModel.refresh(); 

此致

Peter

me_for_i
4楼-- · 2020-08-22 07:39

请更详细地说明开发的当前状态。 您编写"我正在尝试读取输入字段数据并添加sap.m.table"。 在您共享的代码中,没有"读取输入"部分,它从服务器读取数据并从中获取第一条记录。 "未添加"项是什么意思,在控制台中是否收到任何错误消息? 如果没有错误,则添加项目后getData()的长度是多少? "卡住"是什么意思? 当OData返回/results时,为什么会卡住? 您收到任何错误吗?

Haoba3210
5楼-- · 2020-08-22 07:22

导出数据,以便它更改您商品上的位置。 立即结账

shere_lin
6楼-- · 2020-08-22 07:15

感谢Peter的提问。 正如我在上一个解决问题的代码示例中所分享的那样,正在添加行。

我有一个问题,如果在第二列值中搜索时有很少的默认行且数据为空,那么可以处理相同的问题吗?应该使用odata模型读取来填充该行,第二行应该以相同的方式填充该行,并进一步添加 动态行等...在此网址中询问。

https://answers.sap.com/questions/12996898/how-to-handle-json-and-odata-service-on-sapmtable.html

一周热门 更多>