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

2020-08-22 13:33发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我面临维持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条回答
大简至美
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();
 }
   } 

一周热门 更多>