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

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

在主表单的视图中,显示子表单的信息,并用EXCEL导出。

[复制链接]
cmcchz 发表于 2011-6-20 12:01:31 | 显示全部楼层 |阅读模式
本帖最后由 shary 于 2011-7-22 08:51 编辑

子表单为用户填写的一条一条的处理记录。主表单的视图想用EXCEL导出。但是导出的时候,没办法把子表单的信息导出来。有没有什么办法把子表单的信息在主表单的视图中,用EXCEL导出
shary 发表于 2011-6-20 14:11:24 | 显示全部楼层
您好,您可以在视图过滤那里用sql的形式查询出来。具体你要怎么个显示法呢。你的一条主表记录对应多条子表吧。
 楼主| cmcchz 发表于 2011-6-20 14:24:09 | 显示全部楼层
我主要是想实现导出到EXCEL时,同时有主表和子表的信息。例如主表中对应多条子表,我想把多个子表中的某个字段全都组合起来,成为主表的某一列。
shary 发表于 2011-6-20 14:32:51 | 显示全部楼层
这个可以实现啊。在主视图那里新建一列写脚本获取他对应的子表的记录。拼接你要的字段的值就可以了啊。
获取子表单记录脚本:
var doc = getCurrentDocument();
var subdocs = doc.getChilds("子表单名");
                        if (subdocs != null && subdocs.size() > 0) {
                                for(var it = subdocs .iterator();it.hasNext();){
ar subdoc= it.next();//子表单记录
}                        }
 楼主| cmcchz 发表于 2011-6-20 15:31:52 | 显示全部楼层
这个是在列信息的值脚本那里写么?怎么输出这个组合好的值呢?
var doc = getCurrentDocument();
这句话在视图里会有效果啊?
shary 发表于 2011-6-20 17:36:18 | 显示全部楼层
实在列的直脚本中写的。你参考下下面的脚本:
var doc = getCurrentDocument();
var info="";//拼接的字符串
var subdocs = doc.getChilds("子表单名");
                        if (subdocs != null && subdocs.size() > 0) {
                                for(var it = subdocs .iterator();it.hasNext();){
ar subdoc= it.next();//子表单记录
info+=subdoc.getItemValueAsString("子表要拼接的字段名");
}                        }
info;
 楼主| cmcchz 发表于 2011-6-20 18:13:41 | 显示全部楼层
我想把拼接的内容,一条条的分行显示,怎么在值 里面输入换行符,在脚本界面里的换行符会出错
matt_ 发表于 2011-7-18 09:25:27 | 显示全部楼层
可以给代码看下吗?

本版积分规则

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

GMT+8, 2026-8-12 11:38

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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