Hinzufügen benutzerdefinierter Spalten

Um Workflow-Daten im Posteingang anzuzeigen, müssen wir Variablen im Workflow definieren und ausfüllen. Der Wert der Variablen muss festgelegt werden, bevor eine Aufgabe einem Benutzer zugewiesen wird. Um Ihnen einen Vorsprung zu verschaffen, haben wir einen Beispiel-Workflow bereitgestellt, der für die Bereitstellung auf Ihrem AEM-Server bereit ist.

Für diesen Workflow sind zwei Variablen definiert (isVerheiratet und Einkommen). Die Werte werden mithilfe der Komponente set variable festgelegt. Diese Variablen werden als Spalten zur Verfügung gestellt, die AEM Posteingang hinzugefügt werden können

Dienst erstellen

Für jede Spalte, die wir in unserem Posteingang anzeigen müssen, müssten wir einen Dienst schreiben. Mit dem folgenden Dienst können wir eine Spalte hinzufügen, um den Wert der Variablen isMarry anzuzeigen

import com.adobe.cq.inbox.ui.column.Column;
import com.adobe.cq.inbox.ui.column.provider.ColumnProvider;

import com.adobe.cq.inbox.ui.InboxItem;
import org.osgi.service.component.annotations.Component;

import java.util.Map;

/**
 * This provider does not require any sightly template to be defined.
 * It is used to display the value of 'ismarried' workflow variable as a column in inbox
 */
@Component(service = ColumnProvider.class, immediate = true)
public class MaritalStatusProvider implements ColumnProvider {@Override
public Column getColumn() {
return new Column("married", "Married", Boolean.class.getName());
}

// Return True or False if 'ismarried' is set. Else returns null
private Boolean isMarried(InboxItem inboxItem) {
Boolean ismarried = null;

Map metaDataMap = inboxItem.getWorkflowMetadata();
if (metaDataMap != null) {
if (metaDataMap.containsKey("isMarried")) {
    ismarried = (Boolean) metaDataMap.get("isMarried");
}
}

return ismarried;
}

@Override
public Object getValue(InboxItem inboxItem) {
return isMarried(inboxItem);
}
}
HINWEIS

Sie müssen AEM 6.5.5 Uber.jar in Ihr Projekt einbeziehen, damit der obige Code funktioniert

uber-jar

Testen auf Ihrem Server

Durch das Senden des Formulars wird der Workflow Trigger und eine Aufgabe wird "admin"-Benutzern zugewiesen. In diesem Screenshot sollte unter der Spalte Verheiratet ein Wert angezeigt werden

verheiratete Spalte

Auf dieser Seite