【问题标题】:devexpress get field from last row in child listdevexpress 从子列表的最后一行获取字段
【发布时间】:2016-01-15 22:37:22
【问题描述】:

我需要一些帮助。 我有一个表 A(主)和一个表 B(子)。 我正在使用 DevExpress XAF。 我需要评估 Child 中的最后一行并将其显示给主表 A 中的用户。

假设表 A 具有以下字段: 好, 员工, 地址 [姓名] = 为员工永久归档

假设表 B 具有以下字段: 好, 雇员(参考 tbale A), 状态(打开、分配、关闭), 状态日期

Child 表的每个 Master 记录至少有 2 条记录: Oid 员工状态状态日期 1 标记开放 2015-12-12 2 标记分配 2015-12-13 3 标记关闭 2015-12-29

到目前为止,我使用的是这个:

    [PersistentAlias("TableB[Status != 'Closed']")]
public GetStatus
{
   get
       {return EvaluateAlias(GetStatus)};
}

我想在主表 A 中为每个员工显示子列表的最后状态。 当我运行这段代码时,我得到了 Open,因为它与 Closed 不同,但我想要的是如果表 B 中的最后一行是 Status = Closed,则应该返回 Closed。 不知道我说的对不对! 有任何想法吗? 谢谢

【问题讨论】:

    标签: devexpress xaf


    【解决方案1】:

    您应该使用聚合函数来选择集合的最后一个元素,例如 max 和 single 函数。

    [PersistentAlias("TableB.Max(Date)")]
    public DateTime? GetLastActionDate
    {
       get
           {return (DateTime?)EvaluateAlias(GetLastActionDate)};
    }
    
    [PersistentAlias("TableB[Date == GetLastActionDate].Single()")]
    public TableB GetStatus
    {
       get
           {return (TableB)EvaluateAlias(GetStatus)};
    }
    

    【讨论】:

      猜你喜欢
      • 2021-03-14
      • 2018-12-14
      • 2017-10-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多