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

[已解决] 怎样修改指定表单的值

[复制链接]
广东思程 发表于 2015-3-2 17:12:37 | 显示全部楼层 |阅读模式
本帖最后由 karrman 于 2015-5-7 11:28 编辑

需求:1、A表单数据提交后,触发B表单对应纪录的数据。A与B表单没有任务关系。

代码:
var stateLabel = getStateLabel();  //流程审批部门
var doc1 = getCurrentDocument();
var bfb = getItemValueAsString("完成进度");
var gxsj = getItemValueAsString("进度更新时间");
var htid = getItemValueAsString("合同ID");
if(stateLabel!=null&&stateLabel.equals("结束")){
             println("=合同更新="+getStateLabel());
              var formid = "11e4-79f8-c027a06b-8d7d-d90e1dbba6f4";
            var process = getDocumentProcess();     
            var formProcess = getFormProcess();
            var subform = formProcess.doView(formid);//需要插入数据的表单ID值。可以通过数据库客户端查看那张表的formid字段值就可以。
            var doc = process.doNew(subform,getWebUser(),createParamsTable());
               doc.addStringItem("实施进度更新时间",gxsj);
            doc.addStringItem("实施进度百分比",bfb);
             doc.addStringItem("ID",htid);

            process.doUpdate(doc);
}       
异常:
找不到修改的行
 楼主| 广东思程 发表于 2015-3-3 09:21:48 | 显示全部楼层
根据提供的代码,已解决问题
回复

使用道具 举报

karrman 发表于 2015-3-3 09:31:07 | 显示全部楼层
感谢楼主反馈,提供的脚本如下:需求是当A表单提交到结束这个节点时,根据A表单合同ID,找到相应的B表单,更新实施进度更新时间、实施进度百分比、ID这三个字段
var stateLabel = getStateLabel();  //流程审批部门
var doc1 = getCurrentDocument();
var bfb = getItemValueAsString("完成进度");
var gxsj = getItemValueAsString("进度更新时间");
var htid = getItemValueAsString("合同ID");
if(stateLabel!=null&&stateLabel.equals("结束")){
             println("=合同更新="+getStateLabel());
                         //需要插入数据的表单id
              var formid = "11e4-79f8-c027a06b-8d7d-d90e1dbba6f4";
            var process = getDocumentProcess();     
            var formProcess = getFormProcess();
            var subform = formProcess.doView(formid);//需要插入数据的表单ID值。可以通过数据库客户端查看那张表的formid字段值就可以。
            var doc = process.doNew(subform,getWebUser(),createParamsTable());
            //doc.addStringItem("实施进度更新时间",gxsj);
           // doc.addStringItem("实施进度百分比",bfb);
            // doc.addStringItem("ID",htid);
                        var sql="select * from tlk_b where item_ID='"+htid+"' ";
                        var datas =findBySQL(sql);
                        if(datas!=null||datas!=""){
                            datas.findItem("实施进度更新时间").setValue(gxsj);
                                datas.findItem("实施进度百分比").setValue(bfb);
                                process.doUpdate(datas);
                        }else{
                   datas.addStringItem("实施进度更新时间",gxsj);

          datas.addIntItem(实施进度百分比",bfb);

          process.doCreate(datas);
                        }

     
}
回复

使用道具 举报

本版积分规则

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

GMT+8, 2026-8-14 05:51

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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