求泛微js脚本:泛微E9明细表,保存的时候这么插入3行空行,明细表formtable_main_73_dt1
1条回答 默认 最新
檀越@新空间 2026-03-12 19:57关注晚上好🌙🌙🌙
本答案参考通义千问在泛微E9系统中,如果你希望在保存时自动插入 3行空行 到明细表(例如
formtable_main_73_dt1),可以通过编写 JavaScript 脚本 来实现。以下是一个详细的解决方案,包括关键代码和说明。
✅ 需求分析
- 明细表名称:
formtable_main_73_dt1 - 操作时机:保存时
- 功能目标:插入3行空行
- 技术实现:使用泛微E9的JS脚本(通常在流程节点的“保存前”或“保存后”事件中添加)
🧩 解决方案步骤
1. 打开流程配置页面
- 登录泛微后台管理界面。
- 进入 流程设计 -> 流程节点 -> 选择对应的流程节点(如“保存”节点)。
- 在该节点的 “脚本” 部分,添加以下 JS 代码。
2. 编写 JavaScript 脚本
// 获取明细表对象 var dt = form.getFormTableData("formtable_main_73_dt1"); // 插入3行空行 for (var i = 0; i < 3; i++) { // 创建新行数据 var newRow = { "字段名1": "", "字段名2": "", // 根据实际字段名填写 }; // 添加到明细表 dt.addRow(newRow); } // 更新明细表数据 form.setFormTableData("formtable_main_73_dt1", dt);注意: 请将
"字段名1"、"字段名2"替换为你的明细表实际字段名。
3. 重点说明
form.getFormTableData("表单名"):用于获取明细表的数据对象。dt.addRow(newRow):向明细表中添加一行数据。form.setFormTableData("表单名", dt):更新明细表内容。- 插入3行:通过
for (var i = 0; i < 3; i++)循环执行3次添加操作。
🔧 修改后的完整代码示例(根据实际字段)
假设你的明细表有字段:
name,age,address,则代码如下:// 获取明细表对象 var dt = form.getFormTableData("formtable_main_73_dt1"); // 插入3行空行 for (var i = 0; i < 3; i++) { var newRow = { "name": "", "age": "", "address": "" }; dt.addRow(newRow); } // 更新明细表数据 form.setFormTableData("formtable_main_73_dt1", dt);
📌 注意事项
- 确保字段名与明细表中定义的字段一致。
- 如果你使用的是 自定义字段 或 动态字段,可能需要额外处理。
- 该脚本应在 “保存前” 或 “保存后” 事件中添加,确保在保存操作时触发。
- 若需要在新增时自动添加行,可考虑在“新增”事件中使用类似逻辑。
✅ 总结
| 步骤 | 内容 | |------|------| | 1 | 在流程节点的脚本部分添加JS代码 | | 2 | 使用
form.getFormTableData()获取明细表 | | 3 | 通过循环插入3行空行 | | 4 | 使用form.setFormTableData()更新明细表 |
如需进一步优化(如只在特定条件下插入行),可以添加条件判断逻辑。欢迎继续提问!
解决 无用评论 打赏 举报- 明细表名称: