【泛微E9】流程打分表實現

K89發表於2024-09-29

需求描述:流程表單固定帶出129行明細,前6項只要有兩項打分為-10(-10為固定分值),總分即為0。

實現方法:給明細表欄位【自定義序號】賦值,透過欄位聯動帶出129行明細。

// 遍歷明細行的寫法
var rowArr = WfForm.getDetailAllRowIndexStr("detail_1").split(",");
var arrScore = [];
console.log(rowArr);

for(var i=0; i<rowArr.length; i++){
    
    var rowIndex = rowArr[i];
    //console.log(rowIndex);
    
    if(rowIndex !== ""){
        var fielda = "field12742_"+rowIndex;    //遍歷明細行欄位
        var xhz = i+1;
        WfForm.changeFieldValue(fielda, {value:xhz});  //給明細欄位賦值

    }

}

jQuery(document).ready(function(){
  WfForm.bindDetailFieldChangeEvent("field12748",function(id,rowIndex,value){
    console.log(value);
    if(rowIndex<6){
      //var getScore = +WfForm.getFieldValue("field12748");
    	//console.log(getScore);
    	arrScore.push(+value); 
    	console.log(arrScore);
    }
    
    checkScores();
  });
    
  
  function checkScores(){
    var count = 0; // 用於計數小於 0 的數字  

    for (let i = 0; i < arrScore.length; i++) {  
        if (arrScore[i] < 0) {  
            count++; // 增加小於 0 的數字的計數  
            console.log(count);
            if (count >= 2) {  
                // 一旦找到兩個小於 0 的數字,總分即為0
                WfForm.changeFieldValue("field12747", {value:"0"});
                break;
            }  
        }  
    } 
  }
    
});

相關文章