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

 找回密码
 注册成为天翎用户

[已解决] 怎么制作某特定部门的用户列表,并可编辑用户信息

[复制链接]
spiral 发表于 2013-6-21 17:51:48 | 显示全部楼层
好的,有问题我们再联系
 楼主| 青岛融贯汇众 发表于 2013-6-27 00:34:45 | 显示全部楼层
有三个问题,如下:

1.在前面的说明中,第一步,1.建一个动态表单那用户信息详细单。这个表单与用户相关的字段该如何建立(就是在动态表单中要包含用户信息的那个字段?)?
        该用户相关的字段,在表单是直接用文本框,还是使用用户选择控件?
       
2.在 第二步中的脚本中

var sql="select  LOGINNO as ITEM_LOGINNO ,NAME as ITEM_NAME,DOMAINID,ID as ITEM_UID  from   t_user";
sql;

其中表t_user是在平台库中,在当前软件中是不是访问不到啊?
另外,视图关联的数据来源表单,与上述脚本中的字段没有重合的内容,列内容显示不出来啊

3.在脚本  var url="/last/portal/dynaform/document/new.action?_formid=11e2-d7c2-8998b5a2-9d6d-05b069dd9abd&_isJump=1";
url = url + "&UID=" + uid;

从哪可以查到动态表单的ID?
spiral 发表于 2013-6-27 09:18:29 | 显示全部楼层
本帖最后由 spiral 于 2013-6-27 09:23 编辑

1.建议用户选择框吧,还有1个补充点如下:
新建状态时,您是希望通过视图列里选择某个用户(需要url传值),还是在你的页面中选择选择用户(用户选择框)?


2.我再发你一次吧,关于如何在在视图上面显示非tlk表的数据
http://www.teemlink.com/bbs/viewthread.php?tid=164860
关键点是:obpm.dbo.t_user数据库名要这样写//sqlserver

3.uid指的是用户ID,如果您按照我同事的例子,那么具体是:var uid=getItemValueAsString("UID");//获取字段用户的id
 楼主| 青岛融贯汇众 发表于 2013-6-27 10:40:53 | 显示全部楼层
希望的是在通过视图列里选择某个用户,直接打开该用户的表单
 楼主| 青岛融贯汇众 发表于 2013-6-27 10:42:57 | 显示全部楼层
第三个问题中,我想问的是
在脚本  var url="/last/portal/dynaform/document/new.action?_formid=11e2-d7c2-8998b5a2-9d6d-05b069dd9abd&_isJump=1";
url = url + "&UID=" + uid;
中,
formid=11e2-d7c2-8998b5a2-9d6d-05b069dd9abd ,这一段中后面的这个值是从哪获得的?
shary 发表于 2013-6-27 11:59:37 | 显示全部楼层
您好,这个值是对应您要跳转过去的表单的ID。具体获取该表单ID值的做法有两种:
1、在后台表单列表页面右击您的那个表单选择属性,获取其url中ID对应的值
2、在数据库客户端该表单对应的实体表对应字段formid的值就是该表单的formid
您先尝试有问题我们再沟通。
 楼主| 青岛融贯汇众 发表于 2013-6-30 15:52:37 | 显示全部楼层
在第四步的保存脚本,代码如下:

var UID=getParameter("UID");

var process = getDocumentProcess();
var formProcess = getFormProcess();
var subform = formProcess.doView("11e2-da83-9d3ae6a7-abb1-c5c105089d34");//
var doc = process.doNew(subform,getWebUser(),createParamsTable());

var sql="select * from  TLK_用户附加信息 where ITEM_用户名称 like '"+UID+"'";
var data = queryBySQL(sql);

if(data.size()>0)
{
        var iter = data.iterator();
        var data = iter.next();

        data.findItem("用户名称").setValue(UID);
       
        var value1 = getItemValueAsString("学历");//学历
        data.findItem("学历").setValue(value1);

        var value2 = getItemValueAsString("职务");//职务
        data.findItem("职务").setValue(value2);
       
        process.doUpdate(data);
}
else
{
        doc.addStringItem("用户名称",UID);
       
        var value1 = getItemValueAsString("学历");//学历
        doc.addStringItem("学历",value1);

        var value2 = getItemValueAsString("职务");//职务
        doc.addStringItem("职务",value2);
       
        process.doCreate(doc);
}

点击保存后,确实想数据表中新增了一条记录,但是doc.addStringItem("用户名称",UID);
       
        var value1 = getItemValueAsString("学历");//学历
        doc.addStringItem("学历",value1);

        var value2 = getItemValueAsString("职务");//职务
        doc.addStringItem("职务",value2);

这部分代码没起作用,数据表中对应的字段为空
shary 发表于 2013-7-1 09:22:24 | 显示全部楼层
您好,麻烦您用println()打印语句确认下UID值是否获取到。通过打印语句确认下问题具体在哪里。有问题我们再沟通。
 楼主| 青岛融贯汇众 发表于 2013-7-1 10:52:57 | 显示全部楼层
在表单刚打开时可以获取到UID,在表单上右键属性,显示的URL为:http://www.satsoftec.com:8084/ob ... 0-a7fa-298d85c28e46

点击保存按钮后,获取不到UID,在表单上右键属性,显示的URL为:
http://www.satsoftec.com:8084/ob ... 089d34&view_id=

另外,在前面的思路说明中第三步,我不是采用的计算脚本,而是采用的控件的值脚本,不知是否有影响?
shary 发表于 2013-7-1 11:09:10 | 显示全部楼层
您好,应该跟您的描述无关。麻烦您找下我,具体给您远程看下吧。对应我的联系方式见最下脚签名

本版积分规则

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

GMT+8, 2026-8-12 09:28

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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