有没有办法查看计划稍后从AEM激活的所有页面的报告?我可以在工具(工作流程报告)下看到一个报告,其中显示"计划页面/资产激活"的总计数,但我希望查看有关计划页面激活的所有页面信息,包括激活时间。 / p>
答案 0 :(得分:2)
您可以通过导航到查看所有正在运行的工作流实例
http://localhost:4502/libs/cq/workflow/content/console.html并点击Instances
标签。在Scheduled Page/Asset Activation
列下查找Workflow Model
。您可以按该列进行分组和排序。
如果要在代码中进行搜索,可以使用这些JCR-SQL2或XPATH查询找到等待激活的资源:
SELECT * FROM [cq:Workflow] AS s WHERE ISDESCENDANTNODE(s,'/etc/workflow/instances') AND s.[modelId] = '/etc/workflow/models/scheduled_activation/jcr:content/model' AND s.[status] = 'RUNNING'
/jcr:root/etc/workflow/instances//*[@modelId='/etc/workflow/models/scheduled_activation/jcr:content/model' and @status='RUNNING']
然而,听起来您想要做的是创建自定义报告:
New...
>右侧窗格中显示New Page...
。Workflow Instance Report
模板并为其命名。Model
从sidekick拖到parsys中。该报告应立即填充。Payload
从sidekick拖到已存在Model
的标题栏中。Model
列中的下拉箭头,选择Filter
,equals
,然后输入Scheduled Page/Asset Activation
。Status
从sidekick拖到标题栏中,Model
和Payload
已存在。Status
列中的下拉箭头,选择Filter
,equals
,然后输入RUNNING
。您可以放入您希望的任何其他列。您可以保存报告并将其设置为创建快照。
这将为您提供计划激活的页面的报告。不幸的是,它不会告诉你页面被激活的时间。为此,您必须创建一个新的报告列组件。
/libs/cq/reporting/components/instancereport/payloadcol
复制到您的应用程序文件夹中,重命名为scheduledcol
。scheduledcol
节点并注意jcr:primaryType
,componentGroup
和sling:resourceSuperType
;它是一个常规的CQ组件。jcr:title
属性更新为Scheduled
。scheduledcol/definitions/queryBuilder
节点的property
媒体资源。您可以使用./data/metaData/comment
来提供纯文本,也可以使用./data/metaData/absoluteTime
来提供激活发生时的日期和时间(以毫秒为单位)。查看/etc/workflow/instances/<date>/model_<number>/data/metaData
下的工作流实例,您将看到新组件的queryBuilder属性如何匹配。Scheduled
组件从Sidekick拖到报告中。