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

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

[Iscript] 能否在保存的动作执行脚本里,实现更新或新建记录。【表单-更新/新建记录】

[复制链接]
purple 发表于 2012-2-16 11:23:45 | 显示全部楼层 |阅读模式
本帖最后由 spiral 于 2013-3-6 09:50 编辑

Q:能否根据表单某个字段值,数据库存在该记录,则更新,不存在,则新建?

A:可以的,具体实现逻辑,可参考以下脚本
  1. var guest=getItemValueAsString("YAOPBM");
  2. var tool=getItemValueAsString("YAOPNAME");
  3. var tool3=getItemValueAsString("YAOPGG");
  4. var tool4=getItemValueAsInt("SHULIANG");
  5. var process = getDocumentProcess();     
  6. var formProcess = getFormProcess();
  7. var subform = formProcess.doView("11e0-d373-74e37b9e-8555-b3287b9d9b7d");//表单ID值。可以通过数据库客户端查看那张表的formid字段值就可以。
  8. var doc = process.doNew(subform,getWebUser(),createParamsTable());
  9. var sql="select * from  tlk_kucunxx where YAOPNAME='"+tool+"'";
  10. var datas = queryBySQL(sql);
  11. var value;
  12. if(datas.size()>0){
  13.         for (var iter = datas.iterator(); iter.hasNext();) {
  14.         
  15.                 var data = iter.next();
  16.         
  17.                 value = data.getItemValueAsInt("KUCUNSHULIANG");
  18.         }
  19.         tool4+=value;
  20.         data.findItem("KUCUNSHULIANG").setValue(tool4);
  21.         process.doUpdate(data);
  22. }else
  23. {
  24.    doc.addIntItem("KUCUNSHULIANG",tool4);
  25.    doc.addStringItem("YAOPBIANMA",guest);        
  26.    doc.addStringItem("YAOPNAME",tool);        
  27.    doc.addStringItem("KUCUNGUIGE",tool3);

  28.    process.doCreate(doc);
  29. }
复制代码

本版积分规则

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

GMT+8, 2026-8-12 12:30

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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