以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]利用目录树文件(用户分组)自动录入问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=94914)

--  作者:Manice819
--  发布时间:2017/1/5 11:08:00
--  [求助]利用目录树文件(用户分组)自动录入问题
我这边的项目现状是这样的:

依照用户所在的组织进行了分组,比如用户所在的组织是XX中心-XX部门-XX科室,设定的用户分组是用户所在科室,即A科室、B科室...等等。

某表结构是:
第一列(lx)对应 XX中心
第二列(team)对应 XX部门
第三列(part)对应 XX科室(即用户分组)
第四列(shift)对应 XX班组
第五列以后各列是用户自己输入的内容

对本表做了编辑权限设定,非本科室用户不能编辑、改动、删除对应行信息。
If e.Row("part") <> User.Group Then 
    e.Cancel = True
End If

在表属性-增加行-DataRowAdding中设定:
e.DataRow("part") = User.group

另又创建了目录树文件(org110.foxtr),分四级节点:XX中心-XX部门-XX科室-XX班组
其中XX科室即用户分组“User.group”,名称完全一致。

在第一列(lx)中利用此目录树文件,接受列分别是前四列。

现在的问题是:
用户在第一列使用目录树过程中常常点错,比如:
1、只点了XX中心,则第一列显示对应的XX中心,第二到第四列就为空;
2、只点到XX部门,第三、第四列就为空;
3、点错所在中心、部门、科室等,即不是用户所在的组织。

以上三种情况,结果是第三列(part)信息与User.group不一致(空或错误科室),用户不能再进行编辑,用户一旦保存,就造成无效信息行。
还有一种情况是,用户对第一列信息(目录树)不进行选择,则第一、二、四列为空,造成信息不全。

现在我想达到的目的是:
用户增加行后,前三列自动录入用户所在组织信息。
这里第三列(part)涉及另一关联表,汇总统计科室录入信息数量等。第四列可让part对应用户自行选择录入,不做限制。

请问各位专家,该怎么做,可以做到吗?谢谢!

一直上传不了截图,只好文字描述了,请见谅。


--  作者:有点色
--  发布时间:2017/1/5 11:12:00
--  

1、控制目录树的显示不就好了?

 

2、控制必须点击最后一个节点不就好了?

 

下拉目录树,可以用下拉窗口来控制 http://www.foxtable.com/webhelp/scr/2350.htm