Rss & SiteMap

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

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

标题:如何批量锁定满足条件的行,如何批量解锁满足条件的行?谢谢

1楼
杨浩 发表于:2009/8/17 14:29:00
如何批量锁定满足条件的行,如何批量解锁满足条件的行?谢谢
2楼
狐哥 发表于:2009/8/17 14:51:00
For Each dr As datarow In datatables("表").datarows
if dr("列名") = “XX”then
   dr.locked = true
end if
Next
3楼
yangming 发表于:2009/8/17 14:53:00

BeforeLockDataRow

锁定某行(通过审核)之前执行,可以在此处进行权限和逻辑验证,决定是否允许即将进行的锁定行操作。

e参数属性: 

DataTable:返回要锁定行的数据表。
DataRow:  返回要锁定的数据行。
Cancel:    逻辑型,设为True,取消即将进行的锁定行操作。

示例

假定只允许经理级别的用户锁定行,可以设置BeforeLockDataRow事件代码为:

If User.Group <> "经理" Then
    e.Cancel =
True
End
If


BeforeUnLockDataRow

取消锁定某行(取消审核)之前执行,可以在此处进行逻辑判断,决定是否允许即将进行的取消锁定行操作

e参数属性: 

DataTable:返回要取消锁定行的数据表。
DataRow:  获得要取消锁定的数据行。
Cancel:    逻辑型,设为True,取消即将进行的锁定行操作。

示例

假定只允许经理级别的用户取消锁定行,可以设置BeforeUnLockDataRow事件代码为:

If User.Group <> "经理" Then
    e.Cancel =
True
End
If


4楼
杨浩 发表于:2009/8/17 15:15:00
 

锁定指定条件的行:

Dim Q As  String

Q = e.Form.Controls("单位名称").Value

if Q = "" then   

Return       '终止代码的执行

Else

For Each dr As datarow In datatables("调资基础数据").datarows
if dr("单位名称") = Q then
   dr.locked = true
end if
Next

End if



解锁指定条件的行:

Dim Q As  String

Q = e.Form.Controls("单位名称").Value

if Q = "" then   

Return       '终止代码的执行

Else

For Each dr As datarow In datatables("调资基础数据").datarows
if dr("单位名称") = Q then
   dr.locked = False
end if
Next

End if


5楼
杨浩 发表于:2009/8/17 15:15:00
这样实现的
6楼
yangming 发表于:2009/8/17 15:22:00
这两段代码有意义吗?
7楼
杨浩 发表于:2009/8/17 15:48:00
我们从基础表中的读入数据后,锁定所有数据!!!
8楼
杨浩 发表于:2009/8/17 15:48:00
不准用户直接更改数据
9楼
yangming 发表于:2009/8/17 15:50:00
那你的解锁代码不是正好能解开吗?
10楼
杨浩 发表于:2009/8/17 16:48:00
解锁代码是留给我们自己用的
共10 条记录, 每页显示 10 条, 页签: [1]

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

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.