表DoubleClick事件代码如下:
If e.Table.name = "产品工艺录入_Table3" '如果操作窗口控件
If Vars("用户组") = "管理员" or Vars("用户组") = "车间主管" or Vars("用户组") = "录入员" or Vars("用户组") = "车床班长" '如果用户
Dim r as Datarow = CurrentTable.Current.DataRow '指定窗口控件行
Tables("产品工艺").ApplyFilter = False '主表取消筛选
tables("产品工艺").Position = tables("产品工艺").FindRow(r) '指定窗口行与主表同步
Tables("产品工艺").AllowEdit = True '主表取消锁定
Tables("产品工艺").Current.Locked = False '取消锁定行
Forms("车床产品工艺修改").open() '打开窗口
Return '否则不执行
End If
End If
现在我想加一条件:
If e.DataCol.Name = "审核" Then
If e.NewValue = False Then
以上代码
End If
End If
但是不成功,不知应该怎么写,谢谢
[此贴子已经被作者于2010-3-12 10:52:01编辑过]
不知道什么东东“不行”? 过程和结果要讲述清楚才好,下面只是猜测:
Dim r as Datarow =
CurrentTable.Current.DataRow '指定窗口控件行
用具体的Tables("xxxx")吧 Tables("产品工艺").ApplyFilter = False '主表取消筛选
tables("产品工艺").Position = tables("产品工艺").FindRow(r) '指定窗口行与主表同步
If e.Col.Name = "审核" Then
If e.Row("审核") = False Then
Tables("产品工艺").AllowEdit = True '主表取消锁定
Tables("产品工艺").Current.Locked = False '取消锁定行
Forms("车床产品工艺修改").open() '打开窗口
else
Return '否则不执行
End If
End If
有一窗口表,表为附表,双击附表中的行,打开另一窗口(解锁主表和本行),对本行数据可进行修改。
现在加上对审核的判断,就不能打开另一窗口了
经测试下面的代码没有问题,这样看来是你全局变量赋值问题了。
If e.Col.Name = "审核" Then
If e.Row("审核") = False Then
If e.Table.name = "产品工艺录入_Table3" '如果操作窗口控件
Dim r as Datarow = CurrentTable.Current.DataRow '指定窗口控件行
Tables("产品工艺").ApplyFilter = False '主表取消筛选
tables("产品工艺").Position = tables("产品工艺").FindRow(r) '指定窗口行与主表同步
Tables("产品工艺").AllowEdit = True '主表取消锁定
Tables("产品工艺").Current.Locked = False '取消锁定行
Forms("车床产品工艺修改").open() '打开窗口
End If
End If
End If
还是不行,全局变量我很多地方有用到,其他地方都没为题,而且以上代码在没加审核判断以前也是正常的