AEM 6.4 hat das Ende der erweiterten Unterstützung erreicht und diese Dokumentation wird nicht mehr aktualisiert. Weitere Informationen finden Sie in unserer technische Unterstützung. Unterstützte Versionen suchen here.
Die Registerkarte „Tracking“ in AEM Forms Workspace wird verwendet, um die Details von Prozessinstanzen anzuzeigen, an denen der angemeldete Benutzer beteiligt ist. Um die Tracking-Tabellen anzuzeigen, wählen Sie zunächst einen Prozessnamen im linken Bereich aus, um die zugehörige Instanzenliste im mittleren Bereich anzuzeigen. Wählen Sie eine Prozessinstanz aus, um eine Tabelle der von dieser Instanz generierten Aufgaben im rechten Bereich anzuzeigen. Standardmäßig zeigen die Tabellenspalten die folgenden Aufgabenattribute an (das entsprechende Attribut im Aufgabenmodell wird in Klammern angegeben):
taskId
)stepName
)instructions
)selectedRoute
)createTime
)completeTime
)currentAssignment.queueOwner
)Die übrigen Attribute im Aufgabenmodell, die für die Anzeige in der Aufgabentabelle verfügbar sind, lauten:
actionInstanceId |
isOpenFullScreen |
reminderCount |
classOfTask |
isOwner |
routeList |
consultGroupId |
isRouteSelectionRequired |
savedFormCount |
contentType |
isShowAttachments |
serializedImageTicket |
createTime |
isStartTask |
serviceName |
creationId |
isVisible |
serviceTitle |
currentAssignment |
nextReminder |
showACLActions |
deadline |
numForms |
showDirectActions |
description |
numFormsToBeSaved |
status |
displayName |
outOfOfficeUserId |
summaryUrl |
forwardGroupId |
outOfOfficeUserName |
supportsSave |
isApprovalUI |
Priorität |
taskACL |
isCustomUI |
processInstanceId |
taskFormType |
isDefaultImage |
processInstanceStatus |
taskUserInfo |
isLocked |
processVariables |
|
isMustOpenToComplete |
readerSubmitOptions |
Für die folgenden Anpassungen in der Aufgabentabelle müssen Sie semantische Änderungen im Quellcode vornehmen. In der Einführung zum Anpassen von AEM Forms Workspace finden Sie Anweisungen, wie Sie semantische Änderungen mithilfe von Workspace SDK vornehmen und ein minimiertes Paket aus der geänderten Quelle erstellen können.
Um die in der Tabelle angezeigten Aufgabenattribute und ihre Reihenfolge zu ändern, konfigurieren Sie die Datei /ws/js/runtime/templates/processinstancehistory.html :
<table>
<thead>
<tr>
<!-- put the column headings in order here, for example-->
<th><%= $.t('history.fixedTaskTableHeader.taskName')%></th>
<th><%= $.t('history.fixedTaskTableHeader.taskInstructions')%></th>
<th><%= $.t('history.fixedTaskTableHeader.taskRoute')%></th>
<th><%= $.t('history.fixedTaskTableHeader.taskCreateTime')%></th>
<th><%= $.t('history.fixedTaskTableHeader.taskCompleteTime')%></th>
</tr>
</thead>
</table>
<table>
<tbody>
<%_.each(obj, function(task){%>
<tr>
<!-- Put the task attributes in the order of headings, for example -->
<td><%= task.stepName %></td>
<td><%= task.instructions %></td>
<td><%= !task.selectedRoute?'':(task.selectedRoute=='null'?'Default':task.selectedRoute) %></td>
<td><%= task.createTime?task.formattedCreateTime:'' %></td>
<td><%= task.completeTime? task.formattedCompleteTime:'' %></td>
</tr>
<%});%>
</tbody>
</table>
So sortieren Sie die Aufgabenlistentabelle, wenn Sie auf die Spaltenüberschrift klicken:
Registrieren Sie einen Klick-Handler für .fixedTaskTableHeader th
in der Datei js/runtime/views/processinstancehistory.js
.
events: {
//other handlers
"click .fixedTaskTableHeader th": "onTaskTableHeaderClick",
//other handlers
}
Rufen Sie in dem Handler die Funktion onTaskTableHeaderClick
von js/runtime/util/history.js
auf.
onTaskTableHeaderClick: function (event) {
history.onTaskTableHeaderClick(event);
}
Legen Sie die Methode TaskTableHeaderClick
in js/runtime/util/history.js
offen.
Die Methode sucht das Aufgabenattribut aus dem click -Ereignis, sortiert die Aufgabenliste nach diesem Attribut und rendert die Aufgabentabelle mit der sortierten Aufgabenliste.
Die Sortierung erfolgt mithilfe der Backbone-Sortierfunktion in der tasklist-Sammlung, indem eine Vergleichfunktion bereitgestellt wird.
return {
//other methods
onTaskTableHeaderClick : onTaskTableHeaderClick,
//other methods
};
onTaskTableHeaderClick = function (event) {
var target = $(event.target),
comparator,
attribute;
if(target.hasClass('taskName')){
attribute = 'stepName';
} else if(target.hasClass('taskInstructions')){
attribute = 'instructions';
} else if(target.hasClass('taskRoute')){
attribute = 'selectedRoute';
} else if(target.hasClass('taskCreateTime')){
attribute = 'createTime';
} else if(target.hasClass('taskCompleteTime')){
attribute = 'completeTime';
}
taskList.comparator = function (task) {
return task.get(attribute);
};
taskList.sort();
render();
};