以文本方式查看主题

-  易表在线答疑  (http://egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://egrid2000.com/dvbbs/list.asp?boardid=2)
----  [求助]如何对一个录入窗口的按钮给多组别分派权限  (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=2287)

--  作者:razielliu
--  发布时间:2011/6/22 4:49:00
--  [求助]如何对一个录入窗口的按钮给多组别分派权限
if(usertype=2,opengrid("表12",1) ,if(usertype=9,MsgBox("你没有权限执行此操作",0),true))

用这个公式实现了用户组2可以打开表12,用户组9不能打开表12,但是如果用户组2、7、9可以打开表12,用户组3、4、5、6、8不能打开表12该这么写公式呢?

还有就是在一个表的查找中,如何让某个或者某几个组只能查找该组用户自己的数据?

egd文件下载

-=-=-=- 以下内容由 razielliu2011年06月22日 05:12am 时添加 -=-=-=-
还有个问题就是比如说【第一列】=【第二列】*【第三列】,这个时候有一个判断条件,如果第二列中有一个数值为∞的时候,怎么设置第一列的结果自动成为∞


--  作者:wjq1072
--  发布时间:2011/6/22 8:46:00
--  
问题与文件不符!
--  作者:lyang70
--  发布时间:2011/6/22 9:05:00
--  
第一个问题:
if(usertype=2 or usertype=7 or usertype=9,opengrid("表12",1) ,if(usertype=3 or usertype=4 or usertype=5 or usertype=6 or usertype=8,MsgBox("你没有权限执行此操作",0),true))
第二个问题:先在用户权限中定义各用户的分组码,然后在查找按钮中以分组码为条件执行查找。
第三个问题:
第一列刷新公式设为:If(Text([第二列]) = "∞","∞",[第二列] * [第三列])
--  作者:razielliu
--  发布时间:2011/6/22 14:01:00
--  
谢谢lyang70老师,前面看明白了,关于第三个问题我写了个公式,但是一直提示的是语法错误,问题出在哪里呢?

Product([第二列],[第三列]) and If(Text([第二利润]) = "∞","∞",[第二列] * [第三列])

-=-=-=- 以下内容由 razielliu2011年06月22日 02:09pm 时添加 -=-=-=-
还有就是第二个设置分组码已经设置好了,查找按钮是要使用自定义的还是系统的查找按钮?

-=-=-=- 以下内容由 razielliu2011年06月22日 02:11pm 时添加 -=-=-=-
想表达的意思是这个查找的的条件是如果不是管理员和分组码为2的用户,只能查找与自己用户名相符的数据

-=-=-=- 以下内容由 razielliu2011年06月22日 02:18pm 时添加 -=-=-=-
又改成Product([第二列],[第三列]) and If(Text([第二列]) = "∞","∞",Product([第二列],[第三列]))这个公式,输入公式提示数据类型匹配,这些列设计的时候都设置的是数值型的,问题出在哪里?


--  作者:lyang70
--  发布时间:2011/6/22 14:17:00
--  
语法错误,如果确实想用“Product”命令,公式可以这样设置:If(Text([第二列]) = "∞","∞",Product([第二列],[第三列]))

-=-=-=- 以下内容由 lyang702011年06月22日 02:21pm 时添加 -=-=-=-
需要自定义按钮命令,例如:If(username = "管理员" Or usertype = 2 ,Do(112),Do(112) And FilterFor("姓名", "=" ,username))
--  作者:razielliu
--  发布时间:2011/6/22 14:23:00
--  
lyang70老师, 这个公式呢?

Product([第二列],[第三列]) and If(Text([第二列]) = "∞","∞",Product([第二列],[第三列]))

反应过来问题是命令的问题,这个公式输入后提示数据类型不匹配,问题出在哪里?


--  作者:lyang70
--  发布时间:2011/6/22 14:43:00
--  
你这个命令公式和4楼公式一样,逻辑上有问题...
--  作者:razielliu
--  发布时间:2011/6/22 15:12:00
--  
我理解的意思是第一列=第二列*第三列,如果第二列=∞,那么第二列*第三列+∞,这个逻辑的问题出在哪里?
--  作者:lyang70
--  发布时间:2011/6/22 15:16:00
--  
这个命令If(Text([第二列]) = "∞","∞",Product([第二列],[第三列]))
就是你要的结果呀!
--  作者:razielliu
--  发布时间:2011/6/22 15:27:00
--  
Product([第二列],[第三列]) and If(Text([第二列]) = "∞","∞",Product([第二列],[第三列]))

还是麻烦老师,这个公式为什么用不了呢?