Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共22 条记录, 每页显示 10 条, 页签: [1] [2][3]
[浏览完整版]

标题:行编辑问题

1楼
实话实说 发表于:2011/6/17 10:58:00

编辑某行记录时自动记录[开单]者,如何排除[审核]人的编辑

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.table

2楼
blackzhu 发表于:2011/6/17 12:01:00
不懂,你的代码是跟着用户名走的
3楼
blackzhu 发表于:2011/6/17 12:02:00

我们先来看看第一种情况如何实现,假定在一个客户消费数据表,有一逻辑列,名为“已结帐”;如果某一行的已结帐列被勾选,那么我们除了经理之外,员工不可以再修改该行。
实现的代码很简单,在该表的PrepareEdit事件中输入:

If e.Row("已结帐") = True AndAlso User.Group <> "经理" Then
    e.Cancel = True
End
If

4楼
实话实说 发表于:2011/6/17 12:32:00
以下是引用blackzhu在2011-6-17 12:02:00的发言:

我们先来看看第一种情况如何实现,假定在一个客户消费数据表,有一逻辑列,名为“已结帐”;如果某一行的已结帐列被勾选,那么我们除了经理之外,员工不可以再修改该行。
实现的代码很简单,在该表的PrepareEdit事件中输入:

If e.Row("已结帐") = True AndAlso User.Group <> "经理" Then
    e.Cancel = True
End
If

我的需求是这样的:开单员可能有几个可编辑该表(不是同时)首先由开单员编辑行数据,然后记录该行数据是哪个开单员编辑的.主管对该行数据审核,即使审核后开单员也可编辑.如果只有开单员操作的话,只需在表的DataColChanged设置e.DataRow("开单") = User.Name & " " & Date.Now就行,现在有审核人操作,上面的代码就不能满足要求了.如何排除审核人的操作.

5楼
mr725 发表于:2011/6/17 14:21:00

如何排除审核人的操作:

 

If User.Group = User.Name And User.Group <> "审核人"

      e.DataRow("开单") = User.Name & " " & Date.Now

end if

6楼
blackzhu 发表于:2011/6/17 14:22:00
那么 e.DataRow.("开单")设定不是空值,这个列不要操作行不?

因为开单员先行操作,那么这个列已经变成了不是空值,如果不是空值的话,其它人不能修改e.DataRow.("开单")
7楼
实话实说 发表于:2011/6/17 20:55:00
不好意思,刚回来.还是不能满足4楼需求
8楼
lkqing 发表于:2011/6/17 22:42:00
以下是引用实话实说在2011-6-17 12:32:00的发言:

我的需求是这样的:开单员可能有几个可编辑该表(不是同时)首先由开单员编辑行数据,然后记录该行数据是哪个开单员编辑的.主管对该行数据审核,即使审核后开单员也可编辑.如果只有开单员操作的话,只需在表的DataColChanged设置e.DataRow("开单") = User.Name & " " & Date.Now就行,现在有审核人操作,上面的代码就不能满足要求了.如何排除审核人的操作.

感觉一头雾

9楼
实话实说 发表于:2011/6/17 23:14:00
再描述一遍:除了主管,(只勾选[审核]列)其他登录者只要进行了编辑,都会在[开单]列留下登录名和最近编辑的时间,不论主管是否勾选了[审核]。这样可以明确责任。
10楼
实话实说 发表于:2011/6/18 8:28:00
顶一下
共22 条记录, 每页显示 10 条, 页签: [1] [2][3]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .06250 s, 3 queries.