基于对Acumatica页面打印声明(AR503500)的研究,我能够确定以下关键表:
通过GroupMask列,RelationGroup和SMPrinter之间的关系非常简单。
然而,由于在多个组中可能使用同一个用户,因此Users.GroupMask与表RelationGroup之间的关系有点复杂。
从组掩码列中翻译十六进制值,我们可以看到每个组都在一个单独的位位置表示:
0x40000000 -- 0100 0000
0x08000000 -- 0000 1000
0x10000000 -- 0001 0000
0x04000000 -- 0000 0100
在我们的案例中,admin用户属于以下组:现金帐户访问,固定资产帐户分支访问,限制对员工的访问,测试
因此,它使用此二进制值进行标识:01011100,它对应于先前为users表显示的查询的0x5C00结果。
是否有可用于以更直接的方式获得此结果的Acumatica方法?示例:我们输入用户并获取他/她所属的所有打印机访问组?
我发现可以提供此信息的最接近的方法是SearchPrinter()方法,但是,它只返回用户,通知或分支的默认打印机,但不返回与之关联的打印机列表登录用户。