42 【Js用例】实现将明细表2中的数据分组合计后添加到明细表1
title: 42-【JS用例】实现将明细表2中的数据分组合计后添加到明细表1 created: 2026-04-19 updated: 2026-04-19 type: reference tags: [imported, pptx] source: "Weaver Doc Import"
Slide 1
实现将明细表2中的数据分组合计后 添加到明细表1
Slide 2
Slide 3
在工时管理场景中,一个员工可能会同时参与到多个项目中,为了方便审批或与财务系统集成,可以将工时明细表中的工时数据,按照归属项目进行分组,同时将分组后的数据按工时数求和,并将分组合并后的结果写入到项目code工时汇总表中。
Slide 4
当修改明细行时,会自动按照所属项目code进行工时汇总合计。
Slide 5
Slide 6
配置实现步骤 流程表单布局中插入代码块 后台打开html模板; 打开插入代码块; 插入修改好的代码块
Slide 7
代码示例 jQuery().ready(function () { var xmcode_field = "field11787";//明细2中的项目code字段 var gs_field = "field11788";//明细2中的工时(小时)字段 //明细表2字段值改变时,合并到明细表1 WfForm.bindDetailFieldChangeEvent("field11787,field11788", function (id, rowIndex, value) { AddDt2ToDt1(); }); //自定义函数,将明细表2中的数据根据项目code分组合计到明细表1; function AddDt2ToDt1() { WfForm.delDetailRow("detail_1", "all"); var rowArr2 = WfForm.getDetailAllRowIndexStr("detail_2").split(",");//获取明细表所有行标识 var xmcode_Array = new Array(rowArr2.length);//创建一个数组,长度是明细表的行数 var gs_Array = new Array(rowArr2.length); 可替换为对应的明细表标识 设置说明:直接替换红色ID值为对应字段值即可。 h);//创建一个数组,长度是明细表的行数 var gs_Array = new Array(rowArr2.length); 可替换为对应的明细表标识 设置说明:直接替换红色ID值为对应字段值即可。### Slide 8 代码示例 for (var i = 0; i < rowArr2.length; i++) { var rowIndex2 = rowArr2[i];//获取数组中行标识 if (rowIndex2 !== "") { var fieldMark_xmcode = xmcode_field + "" + rowIndex2; var fieldMark_gs = gs_field + "" + rowIndex2; xmcode_Array[i] = WfForm.getFieldValue(fieldMark_xmcode);//遍历明细行字段 gs_Array[i] = WfForm.getFieldValue(fieldMark_gs); } } var xmArr = new Array();//定义一个空数组 var Arr = []; for (var j = 0; j < rowArr2.length; j++) { var xmcode = xmcode_Array[j]; var gs = gs_Array[j]; if (xmArr.indexOf(xmcode) == -1) { xmArr.push(xmcode); Arr.push({ "xmcode": xmcode, "gs": gs }); }
Slide 9
代码示例 else { for (var l = 0; l < Arr.length; l++) { var a = Arr[l].xmcode; if (a == xmcode) { var b = parseFloat(Arr[l].gs) + parseFloat(gs_Array[j]); Arr[l].gs = b; } } } } for (var n = 0; n < Arr.length; n++) { var xmcode_arr = Arr[n].xmcode; var gs_arr = parseFloat(Arr[n].gs); WfForm.addDetailRow("detail_1", { field11784: { value: xmcode_arr }, field11785: { value: gs_arr } }); } } }); 设置说明:直接替换红色ID值为对应字段值即可。
Slide 10
泛微网络 培训服务中心
🖼️ 提取的插图 (共 9 张)

