以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  报表流转流程  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=80098)

--  作者:lgj716330
--  发布时间:2016/1/16 9:26:00
--  报表流转流程
某张报表要先经过角色A录入,角色B审核,角色C才能看到修改后的内容,不然只能看到上次审核前的内容,这个代码该如何编写
--  作者:Hyphen
--  发布时间:2016/1/16 9:52:00
--  
内置用户无法判断某个名称的用户是什么角色。除非在表中保存了角色信息,比如增加列:录入角色、审核角色等等,那么才可以根据角色进行判断


可以考虑自定义用户,就不一会出现上面的问题


--  作者:lgj716330
--  发布时间:2016/1/16 11:10:00
--  
哦,那我还是先偿试用内置方法吧,自定义以后再研究
--  作者:lgj716330
--  发布时间:2016/1/16 12:36:00
--  
如何实现批量审批呢,如根据筛选结果对所有行进行批量审批

If 
User.Group = "经理" Then
    Tables(
"表A").Current("审批 人") = User.Name
    Tables(
"表A").Current("审批日期") = Date.Today()
Else

    MessageBox.show(
"你无审批权限!")
End
 If
--  作者:lgj716330
--  发布时间:2016/1/16 14:05:00
--  
With CurrentTable
If User.Roles = "总部财务" Then
    .Current("审核人") = User.Name
Else
    MessageBox.show("你无审核权限!")
End If
End With

此处的Current只是当前行,如何对所有选定行或当前筛选结果进行批量设置呢

--  作者:lgj716330
--  发布时间:2016/1/16 14:34:00
--  
解决了
With CurrentTable
For i As Integer = .TopPosition To .BottomPosition
If User.Roles = "总部财务" Then
    .Rows(i)("审核人") = User.Name
Else
    MessageBox.show("你无审核权限!")
End If
Next
End With