wintommy123 2026-03-12 19:56 采纳率: 0%
浏览 1

泛微E9明细表插入空行的js脚本

求泛微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() 更新明细表 |


    如需进一步优化(如只在特定条件下插入行),可以添加条件判断逻辑。欢迎继续提问!

    评论

报告相同问题?

问题事件

  • 创建了问题 3月12日