TonyKang 5 år sedan
förälder
incheckning
0c62fb8265
1 ändrade filer med 34 tillägg och 0 borttagningar
  1. 34 0
      modules/reports/rpt_component/jpc_rte.js

+ 34 - 0
modules/reports/rpt_component/jpc_rte.js

@@ -114,6 +114,40 @@ const JE = {
         if (rst === null || rst === undefined) rst = newVal;
         return rst;
     },
+    getFieldValueArray: function(field, dataObj) {
+        let rst = null;
+        if (field.DataNodeName === 'NA') {
+            if (!field[JV.PROP_AD_HOC_DATA]) {
+                field[JV.PROP_AD_HOC_DATA] = [];
+            }
+            rst = field[JV.PROP_AD_HOC_DATA];
+        } else {
+            if (!field.DataNodeName) {
+                // that means this is a self-defined discrete field!
+                field.DataNodeName = JV.DATA_DISCRETE_DATA;
+                field.DataSeq = dataObj[JV.DATA_DISCRETE_DATA];
+                dataObj[JV.DATA_DISCRETE_DATA].push([]);
+            }
+            rst = dataObj[field.DataNodeName][field.DataSeq];
+        }
+        if (rst === null || rst === undefined) rst = [];
+        return rst;
+    },
+    setFieldValueArray: function(field, dataObj, newArr) {
+        if (newArr instanceof Array) {
+            if (field.DataNodeName === 'NA') {
+                field[JV.PROP_AD_HOC_DATA] = newArr;
+            } else {
+                if (!field.DataNodeName) {
+                    // that means this is a self-defined discrete field!
+                    field.DataNodeName = JV.DATA_DISCRETE_DATA;
+                    field.DataSeq = dataObj[JV.DATA_DISCRETE_DATA].length;
+                    dataObj[JV.DATA_DISCRETE_DATA].push([]);
+                }
+                dataObj[field.DataNodeName][field.DataSeq] = newArr;
+            }
+        }
+    },
     removeFieldValue: function (field, dataObj, valIdx) {
         if (field.DataNodeName === "NA") {
             if (field[JV.PROP_AD_HOC_DATA].length > valIdx && valIdx >= 0) {