Есть ли способ просмотреть отчет для всех страниц, которые планируется активировать позже из AEM? Я могу увидеть один отчет в разделе «Инструменты» («Отчет о рабочем процессе»), который показывает общий счет «Запланированная страница/активация актива», но я хочу просмотреть всю информацию о странице о активации запланированной страницы, включая время активации.Отчет о запланированных страницах от AEM
ответ
Вы можете просмотреть все текущие экземпляры рабочего процесса, перейдя по ссылке 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']
Однако, это звучит как то, что вы хотите сделать, это создать индивидуальный отчет:
- Перейти к http://localhost:4502/miscadmin.
- Открыть отчеты в левой панели.
- Нажмите
New...
>New Page...
в правой панели. - Выберите шаблон
Workflow Instance Report
и укажите его название. - Открыть новую страницу.
- Перетащите
Model
с боковой стороны в парсины. Отчет должен сразу же заполниться. - Перетащите
Payload
со стороны в строку заголовка, гдеModel
уже существует. - Нажмите стрелку раскрывающегося списка в столбце
Model
, выберитеFilter
,equals
и введитеScheduled Page/Asset Activation
. - Перетащите
Status
с боковой стороны в заголовок, где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 в свой отчет.
Спасибо @nateyolles, он работает :) Однако не могли бы вы объяснить, как schdulecol отображает schduletime страницы. –