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

[楼主失联] 如何查询已有数据,循环插入新表单

[复制链接]
sorcery 发表于 2022-2-16 16:09:38 | 显示全部楼层 |阅读模式
【myApps/OBPM版本号】:v5.0- sp XX
【浏览器类型】:Chrome/其他
【联系方式-QQ】:190407227
【联系电话】:    请留下您的联系电话,以便技术同事更好解决您的问题
【问题描述】:
如何查询已有数据,循环插入新表单

我希望在视图模式下加一个按钮,能实现根据关键字查询数据库中已有的数据,获取到数据后循环生成新表单,实现数据复制。
请问如何实现。







1、问题描述最好图文并茂,如有视频/脚本可直接放出,这样技术同事在处理该问题时效率更加高效哦~
2、如果该问题已得到解决,请在该帖子下回复\"已解决可结帖\"
dlq 发表于 2022-2-19 09:34:42 | 显示全部楼层
// 建议参考这个


(function(){
var params = getParameter("_selects");
var docids = splitText(params,";");
var pids ="";
var process = getDocProcess(getApplication());//Document操作类
for(var i=0;i<docids.length;i++) {="" var="" doc="process.doView(docids[i]);<br/">
    println(doc.findItem("state").getValue());
    if(doc.findItem("state").getValue().equals("1"))
    {
        createAlert("该记录已经是公开状态");
      }
    else
    {
       doc.findItem("state").setValue('1');
      process.doUpdate(doc );
    }
}
})()
回复

使用道具 举报

 楼主| sorcery 发表于 2022-2-22 16:07:39 | 显示全部楼层
本帖最后由 sorcery 于 2022-2-22 16:09 编辑

在子表单视图中添加一个按钮,实现根据父表单的某个关键字,查询数据库,自动生成数据表
因为数据变化很小,但是类别很多,excel导入太麻烦了
这样可以吗?
回复

使用道具 举报

dlq 发表于 2022-2-22 21:56:51 | 显示全部楼层
sorcery 发表于 2022-2-22 16:07
在子表单视图中添加一个按钮,实现根据父表单的某个关键字,查询数据库,自动生成数据表
因为数据变化很小 ...

(function(){
        var process = getDocumentProcess();
        var formProcess = getFormProcess();                                          
        var Sequence = new Packages.cn.myapps.util.sequence.Sequence();
        var form = formProcess.doViewByFormName("材料表",getApplication());
        println("form  -------" + form);
        var sid = getParameter("_selects");
        println("勾选数据一 --> "+sid);                                                         
        var arr = splitText(sid,";");
        println("sid---> "+sid);                                                     
        println("arr---> "+arr);
        for(var i=0;i<arr.length;i++){
        var fd = findDocument(arr);
        var uuid1 = Sequence.getSequence();
        println("uuid1---> "+uuid1);
        var value1 = fd.getItemValueAsString("批次号");
        
        var doc1 = process.doNew(form,getWebUser(),createParamsTable());
        println("产生数据 " +doc1);
        doc1.findItem("批次号").setValue(value1);
      
        doc1.setId(uuid1);                                    
        doc1.setIstmp(false);
        process.doCreate(doc1);
        }
        })()
回复

使用道具 举报

 楼主| sorcery 发表于 2022-2-24 14:12:49 | 显示全部楼层
好的,谢谢,我试试去
回复

使用道具 举报

本版积分规则

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

GMT+8, 2026-8-14 10:08

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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