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

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

[已解决] 更新记录出错?

[复制链接]
兰州波迪 发表于 2013-3-14 10:56:29 | 显示全部楼层 |阅读模式
本帖最后由 bess 于 2013-3-14 11:32 编辑

我更新数据的时候,出现 row does not exit,我的代码如下:
var doc=getCurrentDocument();
var name = getItemValueAsString("申请人");

var process = getDocumentProcess();     
var formProcess = getFormProcess();
var formid = "11e2-862f-24de9d70-ad68-c5c6e8456e6c";
var subform = formProcess.doView(formid);  
var doc1 = process.doNew(subform,getWebUser(),createParamsTable());

var sql="select * from  tlk_企业基本信息表 where ITEM_企业名称='"+name+"'";
var datas = queryBySQL(sql);

if ( datas.size()>0 ) {
        datas.findItem("法定代表人").setValue(doc.getItemValueAsString("法定代表人"));
        datas.findItem("法人电话").setValue(doc.getItemValueAsString("法人电话"));
        process.doUpdate(datas);

} else {
        doc1.addStringItem("法定代表人",doc.getItemValueAsString("法定代表人"));
        doc1.addStringItem("法人电话",doc.getItemValueAsString("法人电话"));
        process.doCreate(doc1);   

    }

在条件成立(记录存在)的时候错误,条件不成立(记录不存在)的时候正确
spiral 发表于 2013-3-14 11:07:53 | 显示全部楼层
您好,使用queryBySQL后,不能直接获取文档对象
未命名.jpg
具体您可以参考以下帖子的部分代码:
http://www.teemlink.com/bbs/view ... ighlight=queryBySQL
bess 发表于 2013-3-14 11:10:46 | 显示全部楼层
您好,看您的代码,是想实现存在即更新,不存在就新建.
但是您的更新代码,datas是一个结果集,需要遍历的,写法类似:
var datas = queryBySQL(sql);
var value;
if(datas.size()>0){
        for (var iter = datas.iterator(); iter.hasNext();) {
        
                var data = iter.next();
        
                value = data.getItemValueAsInt("KUCUNSHULIANG");
        }
        tool4+=value;
        data.findItem("KUCUNSHULIANG").setValue(tool4);
        data.doUpdate(doc);
}

关于存在即更新,不存在新建,您可以参考帖子:
http://www.teemlink.com/bbs/view ... hlight=%B8%FC%D0%C2
 楼主| 兰州波迪 发表于 2013-3-14 11:30:26 | 显示全部楼层
解决了,谢谢
bess 发表于 2013-3-14 11:32:38 | 显示全部楼层
感谢楼主告知结果!

本版积分规则

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

GMT+8, 2026-8-12 21:19

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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