天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 1299|回复: 2

脚本如何清空视图选择框插入子表中的数据

[复制链接]
henry 发表于 2018-3-1 11:52:07 | 显示全部楼层 |阅读模式
本帖最后由 Chain 于 2018-3-2 16:55 编辑

通过视图选择框向子表插入数据,但重新选择时子表中的数据会不断累加,如何在重新选择后清空原子表中的数据,如图
脚本如下
var doc1 = getCurrentDocument();
var childs = doc1.getChilds("子表单1");
var process = getDocumentProcess();
var formProcess = getFormProcess();
var id = getParentDocument().getId();
println(id);
var selects=getParameterAsText("_selects");
var sel=selects.replace(";","','");
sel="('"+sel+"')";
var sql = "select  * from  tlk_子表单1 where id in "+sel;
var datas = queryBySQL(sql);
println("Select=====" + datas);
if (datas.size() > 0) {
        for (var iter = datas.iterator(); iter.hasNext();) {
                var data = iter.next();
                deptname = data.getItemValueAsString("字段1");
                 deptcode = data.getItemValueAsString("字段2");
                var subform = formProcess.doView("11e8-1b6d-13b05ad1-99fc-dfa0b3a9889e");

                var doc = process.doNew(subform,getWebUser(),createParamsTable());
                 doc.addStringItem("元素1",sel);
                doc.addStringItem("元素2",deptcode);
                 doc.setParent(id);
                 process.doCreate(doc);
               }
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
meiji 发表于 2018-3-1 15:03:07 | 显示全部楼层
您好,您的需求可以通过在确定执行前脚本插入数据之前查询子表的parentid为当前父表id的表单记录用deleteByDSName(dsName,sql)函数进行对子表之前数据的删除动作即可,函数用法参考下面截图:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
 楼主| henry 发表于 2018-3-1 16:04:02 | 显示全部楼层
测试成功,可以结帖,谢谢

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 10:26

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表