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

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

[Iscript] 同步映射表单数据【iscript-前台映射表单同步数据】

[复制链接]
kimi 发表于 2013-9-5 11:54:21 | 显示全部楼层 |阅读模式
本帖最后由 kimi 于 2013-9-5 12:01 编辑

Q:不是通过平台创建的表,如果到数据库客户端操作直接往该表单查询数据后,在平台前台数据显示不出来,需要在后台映射表单中点击同步数据后,才能显示,能否在前台视图点击同步后,数据也能在前台显示呢?
A:您好:在平台创建映射表单时,会选择一个主键,后台同步数据的逻辑上判断该表单中这个主键的值,在t_document表单中是否存在,这里的主键和t_document表的MAPPINGID字段进行关联的,所以在视图的操作按钮中可以写脚本判断,具体代码类似如下:

  1. var sql="select id as item_mappingid,'"+getDomainid()+"' as domainid,id from userinfo where id not in (select MAPPINGID from t_document)";//获取在映射表单存在的数据但是在t_document表不存在
  2. println(sql+"======sql======");
  3. var datas=queryBySQL(sql);
  4. if(datas!=null && datas.size()>0){
  5.    for(var iter = datas.iterator();iter.hasNext();){
  6.         var doc = iter.next();
  7.                 if(doc!=null){                         
  8.                 println(doc+"=====doc===");
  9.                   var uuid = new Packages.cn.myapps.util.sequence.Sequence().getSequence();
  10.                   var MAPPINGID=doc.getItemValueAsString("MAPPINGID");
  11.                   println(MAPPINGID+"====MAPPINGID===");
  12.                   var FORMNAME='映射表单';
  13.                   var AUTHOR=getWebUser().getId();
  14.                   var CREATED=$TOOLS.DATE_UTIL.getDateTimeStr(getToday());
  15.                   var FORMID='11e3-15d3-48fa6953-849b-afffaa71b5a1';
  16.                   var APPLICATIONID=getApplication();
  17.                   var LASTMODIFIER=getWebUser().getId();
  18.                   var DOMAINID=getDomainid();
  19.                   var sql2="INSERT INTO kimisp8test.dbo.T_DOCUMENT (ID,LASTMODIFIED,FORMNAME,AUDITDATE,AUTHOR,CREATED,FORMID,ISTMP,VERSIONS,APPLICATIONID,LASTMODIFIER,DOMAINID,MAPPINGID) VALUES ('"+uuid+"',null,'"+FORMNAME+"',null,'"+AUTHOR+"','"+CREATED+"','"+FORMID+"',0,1,'"+APPLICATIONID+"','"+LASTMODIFIER+"','"+DOMAINID+"','"+MAPPINGID+"')";
  20.                   println(sql2+"       ======sql2====");
  21.                   insertByDSName("kimisql",sql2);
  22.                 }
  23.    }
  24. }
复制代码
第一步:配置映射表单如下图所示:
a11.gif
第二步:在映射表单对应视图的按钮中写代码实现同步数据:
a12.gif
第三步:前台进行同步数据如下图:
通过sql语句查询没有在t_document表中不存在的数据,如下图所示:
a13.gif
前台映射表单中,也没有显示这条数据,如下图所示:
a14.gif
前台同步后效果如下图所示:
a15.gif

本版积分规则

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

GMT+8, 2026-8-12 15:49

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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