AEM的预定页面报告

时间:2016-03-21 03:50:58

标签: cq5 aem

有没有办法查看计划稍后从AEM激活的所有页面的报告?我可以在工具(工作流程报告)下看到一个报告,其中显示"计划页面/资产激活"的总计数,但我希望查看有关计划页面激活的所有页面信息,包括激活时间。 / p>

1 个答案:

答案 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']

然而,听起来您想要做的是创建自定义报告:

  1. 导航至http://localhost:4502/miscadmin
  2. 在左侧窗格中打开报告。
  3. 点击New...>右侧窗格中显示New Page...
  4. 选择Workflow Instance Report模板并为其命名。
  5. 打开新页面。
  6. Model从sidekick拖到parsys中。该报告应立即填充。
  7. Payload从sidekick拖到已存在Model的标题栏中。
  8. 点击Model列中的下拉箭头,选择Filterequals,然后输入Scheduled Page/Asset Activation
  9. Status从sidekick拖到标题栏中,ModelPayload已存在。
  10. 点击Status列中的下拉箭头,选择Filterequals,然后输入RUNNING
  11. 您可以放入您希望的任何其他列。您可以保存报告并将其设置为创建快照。

    这将为您提供计划激活的页面的报告。不幸的是,它不会告诉你页面被激活的时间。为此,您必须创建一个新的报告列组件。

    1. /libs/cq/reporting/components/instancereport/payloadcol复制到您的应用程序文件夹中,重命名为scheduledcol
    2. 查看scheduledcol节点并注意jcr:primaryTypecomponentGroupsling:resourceSuperType;它是一个常规的CQ组件。
    3. jcr:title属性更新为Scheduled
    4. 更新scheduledcol/definitions/queryBuilder节点的property媒体资源。您可以使用./data/metaData/comment来提供纯文本,也可以使用./data/metaData/absoluteTime来提供激活发生时的日期和时间(以毫秒为单位)。查看/etc/workflow/instances/<date>/model_<number>/data/metaData下的工作流实例,您将看到新组件的queryBuilder属性如何匹配。
    5. 返回您的报告,刷新页面,然后将新的Scheduled组件从Sidekick拖到报告中。