如何维护SN 在sap.m.table行记录中添加或删除之后

2020-08-22 13:33发布

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

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


专家们,

我面临维持S.N.的问题。 记录一旦删除。 假设我有5个默认记录,分别为S.N和名称。

它的定义类似于..

 {SN:" 1",名称:" Rahul"},
  {SN:" 2",名称:" Syam"},
  {SN:" 3",名称:" Ram"}等。
 

如果我删除第一条记录或S.N. 被删除,但是我该如何分配新的序列号 到其余记录。

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

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


专家们,

我面临维持S.N.的问题。 记录一旦删除。 假设我有5个默认记录,分别为S.N和名称。

它的定义类似于..

 {SN:" 1",名称:" Rahul"},
  {SN:" 2",名称:" Syam"},
  {SN:" 3",名称:" Ram"}等。
 

如果我删除第一条记录或S.N. 被删除,但是我该如何分配新的序列号 到其余记录。

付费偷看设置
发送
5条回答
昵称总是被占用
1楼 · 2020-08-22 14:36.采纳回答

按如下所示修改代码:

 calculateSn:function(){
     var that = this;
     var oTable = that.getView()。byId(" tableId");
     var temp = oTable.getModel()。oData.EntitySet;
     对于(var i = 1; i <= temp; i ++){
         temp [i-1] .SeqNo = i.toString();
     }
     var oModelDeletef = oTable.getModel();
     oModelDeletef.setData(temp);
 }
 
spaceman01
2楼-- · 2020-08-22 14:13

只需在默认值之后也动态添加项即可添加。

槿木_熙
3楼-- · 2020-08-22 14:35

在每次删除时,遍历整个数组并设置SN

对于(var i = 1; i <= temp.length; i ++){
     temp [i-1] .SN = i.toString();
 }
 

这里的temp是值的数组。

注意

Anmol

三十六小时_GS
4楼-- · 2020-08-22 14:29

再次共享更新后的完整代码。

大简至美
5楼-- · 2020-08-22 14:37

是。

 XML代码绑定:
 
  

 默认情况下,存在4条记录:
    that._data = {
    EntitySet:[{
       序号:1,
       文件:"
      },{
       序号:2,
       文件:"
      },{
       序列号:3,
       文件:"
      },{
       序号:4,
       文件:"
      }
     ]
    };
    that.jModel = new sap.ui.model.json.JSONModel();
    that.jModel.setData(this._data);
    that.getView()。setModel(that.jModel," keyTable");



 addRowf:函数(oArg){
    var that = this;
    var oTable = that.getView()。byId(" tableId");
    var oBinding = oTable.getBinding(" items")。getLength();
    var a = oBinding + 1;
    that._data.EntitySet.push({
     序列号:
     文件:"
    });
    that.jModel.refresh();
   }


 deleteRowf:function(){
    var that = this;
    var oTable = that.getView()。byId(" tableId");
    var oModelDeletef = oTable.getModel();
    var aRows = oModelDeletef.getData()。EntitySet;
       var aContexts = oTable.getSelectedContexts();
    for(var i = aContexts.length-1; i> = 0; i--){
     var oThisObj = aContexts [i] .getObject();
     var index = $ .map(aRows,function(obj,index){
      如果(obj === oThisObj){
       返回指数
      }
     });
     aRows.splice(index,1);
    }

 that.calculateSn();
    oModelDeletef.setData({
     EntitySet:aRows
    });
       oTable.removeSelections(true);
   }


  computeSn:function(){
    var that = this;
    var oTable = that.getView()。byId(" tableId");
    var temp = oTable.getModel()。oData.EntitySet.length;
             var seqNo = oTable.getModel()。oData.EntitySet [0] .SeqNo;
    for(var i = 1; i <= temp; i ++){
              temp [i-1] .seqNo = i.toString();
 }
   } 

一周热门 更多>