确定当前用户的通用查询

时间:2015-12-23 20:05:33

标签: acumatica

我想创建一些通用查询,列出当前登录Acumatica的用户的潜在客户或其他项目。

问题的答案[当前登录的用户对于4.2中的GI /报告](Current logged in user for GI / Reports in 4.2)在通用查询中对我不起作用。它的工作原理与报告相同。 我们正在使用Acumatica 5.20.1757。

在通用查询中仅使用PX.Data.AccessInfo导致错误:Sequence不包含任何元素。在与另一个表的交叉连接中使用它会给出:“无效的对象名称:AccessInfo。我不理解/不知道什么?

2 个答案:

答案 0 :(得分:3)

虽然上面的答案工作得很好,但这样就无需选择名称和配置访问权限。以下示例使用了潜在客户。

提供网站地图标题网站地图位置的值,位于查询标题字段/

下方
  1. 标签上,选择PX.Data.AccessInfo,PX.Objects.CR.Contact,PX.Object.EP.EPEmployee,PX.SM.LoginTrace和PX。 SM.Users。接受别名的默认值,一旦离开该行,将填充该列表。

  2. 关系标签上:

  3. a)设置,有效选中,父表联系加入类型**左**子表 EPEmployee,父字段 ownerID 条件等于子字段 pKID

    b)设置有效选中,父表用户加入类型**内部**子表 EPEmployee,父字段< / strong> contactID 条件等于子字段 defContactID

    c)设置有效选中,父表用户加入类型**内部**子表 LoginTrace,父字段< / strong>用户名条件等于子字段用户名

    1. 参数标签上,将名称**设置为用户名,**架构字段设置为AccessInfo.UserName,**显示名称**设置为用户名。除非您想检查字段的值,否则不应检查活动。

    2. 设置了9条线以满足我的具体条件。他们在这里。

    3. a)有效是,启动括号数据字段 Users.IsOnline 条件等于,来自架构 True,值1 True, End Brackets 运算符

      b)有效是,启动括号数据字段 LoginTrace.ScreenID 条件等于,来自架构错误,值1 GI000009(您的可能不同),结束括号运营商

      c)有效错误,启动括号数据字段 LoginTrace.Date 条件等于,来自架构错误,值1 现在(),结束括号),运算符

      d)有效是,启动括号数据字段 Users.UserName 条件等于,来自架构错误,值1 = [LoginTrace.Username],结束括号运算符

      e)有效错误,启动括号数据字段 LoginTrace.Username 条件等于,来自架构错误,值1 = [EPEmployee.UserID],结束括号运营商

      f)有效是,启动括号((数据字段 Contact.ContactType 条件等于,< strong>来自架构 FALSE,值1 LD,结束括号运营商

      g)有效是,启动括号数据字段 Contact.ContactType 条件等于,来自架构 FALSE,值1 PN,结束括号),运算符

      g)有效是,启动括号数据字段 Contact.Status 条件等于,来自架构 True,值1 已转换,结束括号运算符

      h)有效是,启动括号数据字段 Contact.Status 条件等于,来自架构 True,值1 打开,结束括号),操作员

      1. 分组标签上,将有效设置为True,将数据字段设置为Contact.ContactID
      2. 排序顺序,结果网格和输入点取决于您。

        注意:我发现此GI在另一个不考虑LoginTrace.ScreenID条件的查询中失败。没有尝试使用左连接进行内连接,但应该有效。

答案 1 :(得分:2)

我刚设计了一个通用查询,其中列出了当前登录的用户使用4.2的Acumatica创建的所有销售订单。以下是步骤。

  1. 在Generic Inquiry屏幕的 Tables 标签中,除了其他所需的表(在此示例中为SO.SOOrder)之外,还需要添加2个表:Data.AccessInfo和SM.Users。

  2. 关系标签中,应在所需的表和SM.Users之间创建表关系。连接类型必须为左。例如:SOOrder左加入用户。

  3. 必须使用Users表的pKID字段建立关系。例如:SOOrder.CreatedByID等于Users.pKID。

  4. 参数标签中,添加一行,并为其命名,如UserName。然后,Schema Field将成为AccessInfo.UserName。必须激活From Schema选项。

  5. 条件标签中,数据字段Users.UserName将#4中添加的参数等于值。

  6. 如果您不希望用户更改定义为参数的默认用户名,请务必查看不同角色中该字段的访问权限