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

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

[表单] 如何实现表单记录存在则更新,不存在则新建【通过文档对象更新/创建记录】

[复制链接]
purple 发表于 2012-8-13 18:36:57 | 显示全部楼层 |阅读模式
Q:如何实现,入库时,库存表存在记录,更新数量,不存在时,向库存表插入对应的记录。

A:具体实现脚本如下:
  1. var doc1 = getCurrentDocument();
  2. var childs = doc1.getChilds("子表单");//“子表单”为子表单的名称
  3. var process = getDocumentProcess();     
  4. var formProcess = getFormProcess();
  5. var subform = formProcess.doView("11e1-c59c-7f8c0c7a-973b-5578084c6b7c");//需要插入数据的表单ID值。可以通过数据库客户端查看那张表的formid字段值就可以。
  6. var doc = process.doNew(subform,getWebUser(),createParamsTable());
  7. if (childs!=null && childs.size()>0){
  8.     for(var it = childs.iterator();it.hasNext();){
  9.       var data = it.next();
  10.       var  name=data.getItemValueAsString("名称");
  11.       var  count=data.getItemValueAsInt("数量");
  12.       var sql="select * from  tlk_库存表 where ITEM_名称1='"+name+"'";
  13.       var datas = queryBySQL(sql);
  14.       var value;
  15.      if(datas.size()>0){
  16.         for (var iter = datas.iterator(); iter.hasNext();) {   
  17.                 var data = iter.next();
  18.                 value = data.getItemValueAsInt("数量");
  19.         }
  20.             count+=value;
  21.              data.findItem("数量").setValue(count);
  22.              process.doUpdate(data);
  23.      }else{
  24.           doc.addStringItem("名称1",name);
  25.           doc.addIntItem("数量",count);
  26.           process.doCreate(doc);
  27.     }
  28. }
  29. }
复制代码

本版积分规则

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

GMT+8, 2026-8-12 03:56

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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