Alfresco select 为 child 节点创建的最大日期 属性

Alfresco select max date created for child node property

我正在使用 Alfresco 社区版。目前我正在尝试为节点开发自定义行为,我根据直接 child 节点的最大创建日期采取行动(不需要 child 的 child)。

有没有办法通过query/method获取节点children的最大创建日期?我想避免获得所有 children 然后,对于每个获得 属性 - 它看起来相当丑陋并且可能很慢。

我相信您正在使用 java class 来添加该行为。对于搜索,您可以使用 SearchParameter class,您可以在其中根据 属性 对结果集进行排序。 因此,以下代码将帮助您创建搜索参数,为您获取排序的结果集(根据创建日期排序)。

SearchParameters sp = new SearchParameters();
sp.setLanguage(SearchService.LANGUAGE_LUCENE);
sp.setQuery(query);
sp.addStore(Repository.getStoreRef());
String field = org.alfresco.repo.search.impl.lucene.QueryParser.escape("@cm:created"); 
sp.addSort(org.alfresco.repo.search.impl.lucene.QueryParser.escape(field), false);

如果您正在使用 java 脚本,那么您可以在查询后将结果集排序为 follow.In,您的搜索结果将根据创建日期按降序排序。

var nodes = search.luceneSearch("TEXT:alfresco", "@cm:created", false);