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

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

关于视图列表的问题

[复制链接]
eton 发表于 2012-1-11 15:14:47 | 显示全部楼层 |阅读模式
本帖最后由 shary 于 2012-1-13 14:44 编辑

我现在有两个表:客户表和客户联系记录表。然后我在客户的编辑界面上使用了“包含元素”这个控件把客户联系记录的视图(当前客户的所有联系记录)包含进去。
客户表中有一个字段是“业务员”的,我想请教一下,我要如何在客户联系记录的视图中把这个字段放进去?



就是把上面图的“业务员”的内容插入到下面图的“联系人”处




我现在的做法是在联系记录表也有一个“业务员”的字段,但是增加一条都要选择一次比较麻烦,如果可以直接从客户表拿下来就只须选择一次就OK了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
purple 发表于 2012-1-11 16:11:53 | 显示全部楼层
您好,您的意思是不是,在子表的数据列表中,要拿到主表联系人这个字段的信息。如果是,您在子表的视图列新建一个列,类型选择iscript。用sql语句查询需要的值,然后返回即可。具体的脚本可参考:http://www.teemlink.com/bbs/view ... &extra=page%3D2
您需要修改的,只是其中的sql语句。
 楼主| eton 发表于 2012-1-12 09:30:43 | 显示全部楼层
sql = "select ITEM_Salesman from TLK_CUSTOMERS ";
var datas = queryBySQL(sql);
for (var iter = depts.iterator(); iter.hasNext();) {
    var val = iter.next();
    val = dept.getItemValueAstring("ITEM_Salesman");
}
value;

然后报下面错误:
java.lang.Exception: JavaScriptRunning:[View.11e1-382d-9e030f99-bafa-7d2f9332293c.Column(11e1-3833-3780f099-bafa-7d2f9332293c).联系人]: Wrapped java.sql.SQLException: 列名 'DOMAINID' 无效。 (baselib#1238)

请问我有哪个地方写错了吗?
 楼主| eton 发表于 2012-1-12 09:31:22 | 显示全部楼层
回复 2# purple


    sql = "select ITEM_Salesman from TLK_CUSTOMERS ";
var datas = queryBySQL(sql);
for (var iter = depts.iterator(); iter.hasNext();) {
    var val = iter.next();
    val = dept.getItemValueAstring("ITEM_Salesman");
}
value;

然后报下面错误:
java.lang.Exception: JavaScriptRunning:[View.11e1-382d-9e030f99-bafa-7d2f9332293c.Column(11e1-3833-3780f099-bafa-7d2f9332293c).联系人]: Wrapped java.sql.SQLException: 列名 'DOMAINID' 无效。 (baselib#1238)

请问我有哪个地方写错了吗?
shary 发表于 2012-1-12 10:02:56 | 显示全部楼层
本帖最后由 shary 于 2012-1-12 10:04 编辑

您好,您把这句sql语句
var sql = "select ITEM_Salesman from TLK_CUSTOMERS ";
改成
var sql = "select ITEM_Salesman,id,domainid  from TLK_CUSTOMERS ";
试一下。
其实如果您这两个表有关联是父子关系您只需要写
var pdoc =getParentDocument();//获取父文档对象
var value =pdoc.getItemValueAsString("字段名");//获取父文档字段值
 楼主| eton 发表于 2012-1-12 11:06:52 | 显示全部楼层
回复 5# shary


    刚刚改了SQL不过提示信息说找不到“getItemValueAsString”,还有一个就是非常慢才,有时整个视图还是空白的,不知道是不是国为有错误的问题呢?下面是全部内容,

var val="";
sql = "select ITEM_Salesman from TLK_CUSTOMERS ";
var datas = queryBySQL(sql);
for (var iter = datas.iterator(); iter.hasNext();) {
    var doc = iter.next();
    val = doc.getItemValueAstring("ITEM_Salesman");
}
val;


不过使用你所说的另一个方法是OK的
shary 发表于 2012-1-12 11:13:41 | 显示全部楼层
改一下这句:val = doc.getItemValueAstring("ITEM_Salesman");
改成
val = doc.getItemValueAstring("Salesman");
 楼主| eton 发表于 2012-1-13 14:50:57 | 显示全部楼层
回复 7# shary


    我一开始写的就是 Salesman
到前台运行时报错才改成 ITEM_Salesman 的

不过我已经使用了你提供的另一个方法,感觉运行起来比用SQL那个方法快……
我用了包含元素这个功能居然就是有父子关系的……非常感谢你提供那个读取父级资料的方法

本版积分规则

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

GMT+8, 2026-8-12 20:47

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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