我正在尝试查找OCL 表达式(计算器),但我不确定如何获取集合属性的总和。
我有一堂课Customer
和一堂课Orders
。我想将特定年份的所有订单的总和保存在Customer
类属性revenue
中。
Orders
具有属性“日期订单”和“金额”。Given 是 year(Date) 给出特定日期的年份并Date.now()
给出当前日期。
我找到了这个解决方案:
context Customer::revenue
derive: self.orders -> select(year(datum_order) = (year(Date.now()) – 1)) -> collect(amount) -> sum()
我不想使用collect,但我真的不知道如何只使用select语句来做到这一点。我假设省略 collect(amount) 并将 sum 更改amount.sum()
为也不正确?
我希望有人可以帮助我解决这个问题。